게임만들기 썸네일형 리스트형 Lua#3 : 연산자 (Operation) 변수들을 조작하거나 비교하려면 연산자가 필요합니다. 네 +, - 같은 기호들입니다. 한번 쭉 보시면 됩니다. 참고로 ++ 같이 증가나 이런건 없어요. 아래 나와있는게 전부입니다. 1. 수식 연산자 + : 더하기 - : 빼기 * : 곱하기 / : 나누기 --> 결과가 소수점까지 나와요 % : 나머지 ^ : 몇 승 2. 관계 연산자 : 결과가 boolean == : 같다 ~= : 다르다 > = 더보기 Lua#2 : 변수 - 유형 (Type) 변수에는 유형(Type)이 존재합니다. 언어에 따라서 유형의 제약이 심한 경우도 있어요. 예를들어 숫자만 저장되는 변수에 문자를 넣으면 에러가 발생하기도 하지만, Lua는 변수의 형에 대해 매우 자유로와요. 숫자를 넣었다가 문자를 넣었다가 해도 전혀 문제되지 않아요. 그래도 형 자체는 존재합니다. nil 빈 값입니다. 아무것도 아닌게 아니라, 값이 없다는 뜻입니다. 그러니 type도 nil 입니다. boolean true 또는 false 가진 값의 type입니다 number 모든 숫자입니다. 정수, 소수점있는 숫자 모두 포함입니다. string 문자를 갖고 있으면 문자형이 됩니다 function 로직을 포함한 함수를 나타내는 변수는 유형도 function 입니다 table 여러 변수들의 그룹을 나타내는 .. 더보기 LUA#1 : 변수 - 범위(Scope) 간단하게 아주 기본적인 Lua Script를 알아 봅니다. 변수 대부분 프로그래밍 언어에는 변수(Variable) 이라는 것이 있는데, 프로그램을 만들다 보면 어디에 값을 담아두거나, 그 값에 다른 값을 더하거나 빼거나 하는, 그 모든 용도를 변수라고 합니다. Lua 에서는 변수를 쉽게 정의해서 사용할 수 있어요. 전체 사용할 변수라면 그냥 a = 3 이라고 바로 사용하기 시작해도 되고 해당 범위에서만 사용하려면 local a a = 3 이렇게 해도 되고, 그냥 한줄로 local a = 3 사용하셔도 됩니다. 이제 a를 출력하거나 다른 값을 넣거나 할 수 있는 것이지요. 여기서 local을 사용했을 때랑 안했을 때랑 뭐가 다르냐구요? 바로 유효한 범위(Scope)이 다릅니다. 범위 - 이 변수가 어디까지.. 더보기 #14 : 닿으면 체력이 떨어지는 블록 블록에 닿을 때 체력이 줄어듭니다. 아주 간단하지만, 사실 모든 것의 기본입니다 local box = script.Parent local function onTouched(hit) print ("Touched") local humanoid = hit.Parent:FindFirstChild('Humanoid') if humanoid then print(humanoid.health) humanoid:TakeDamage(10) end end box.Touched:Connect(onTouched) 더보기 #13 : 따라오는 NPC - npc following 심플한 NPC를 만들고, MoveTo를 이용해 가장 가까운 플레이어를 찾아서 따라다니는 Script 입니다. local npcHumanoid = script.Parent.Humanoid local npcHRP = script.Parent.HumanoidRootPart local function GetNearestPlayer(minimumDistance) local closestMagnitude = minimumDistance or math.huge local closestPlayer for i,v in next, game.Players:GetPlayers() do local Character = v.Character if (Character) then local humanoid = Character.Hu.. 더보기 #12 : 총만들기 (인증 Weapons Kit 사용하기) 처음부터 총만들기를 하려다가, 너무 어려워서, 기존에 잘 만들어진 총을 가져다 사용하기로 했습니다. Roblox 공식 인증 Weapon 입니다. 권총 : https://www.roblox.com/library/393299... 샷건 : https://www.roblox.com/library/393319... 라이플 : https://www.roblox.com/library/393280... 머신건 : https://www.roblox.com/library/393318... 스나이퍼 : https://www.roblox.com/library/393320... 석궁 : https://www.roblox.com/library/393294... 유탄발사기 : https://www.roblox.com/librar.. 더보기 #11 : 그룹에 따라 팀 나누기 (Team by Group) 속한 그룹에 따라 팀을 나누고, 스폰포인트를 나누는 예제입니다. local function playerJoin(player) if player:IsInGroup(42) then print "Player is in the Roblox Building Group" print ("Then,"..player.name.." is Theif Team") player.Team = game.Teams.Theif else print "I'm Not Building Group" player.Team = game.Teams.Police end end game.Players.PlayerAdded:Connect(playerJoin) 더보기 #10 : 플레이어 머리에 이름 표시 - Player Title (Team / Role) BillboardGui BillboardGui를 이용하여 Player에 역할이나 팀을 표시하는 script 입니다. script 아래 BillboardGui를 추가하고 아래 TaxtLabel를 추가한뒤 1. 팀이름과 Font 색을 정해주는 script를 짜고 2. BillboardGui 높이를 설정하고 3. TaxtLabel을 꾸며줍니다 ====== local billboard = script.BillboardGui local textPolice = "Police" local blueColor = Color3.fromRGB(0,0,255) local textTheif = "Theif" local redColor = Color3.fromRGB(255,0,0) game.Players.PlayerAdded:Connect(functi.. 더보기 이전 1 2 3 4 다음