공부하는 Nar
[디토랜드] 단순 색상 변경 :SetBackgroundColor() :SetTextColor()
LuaScript 2022. 1. 10. 12:35

--Workspace/Sample/ScreenUI/Frame 경로에 있는 오브젝트를 FrameUI 변수에 할당해요. local FrameUI = Workspace.Sample.ScreenUI.Frame --Workspace/Sample/ScreenUI/Text 경로에 있는 오브젝트를 TextUI 변수에 할당해요. local TextUI = FrameUI.Text --UI에 적용할 색상을 변수에 할당해요. local RedColor = Color.new(255, 0, 0, 255) local BlueColor = Color.new(0, 0, 255, 255) wait(2) --2초를 기다린 뒤, FrameUI:SetBackgroundColor(RedColor) --FrameUI의 색상을 변경해요. Text..

article thumbnail
[디토랜드] Phase
LuaScript 2021. 12. 23. 19:13

ServerScript --사용할 Phase를 등록해요. --Phase는 여러개도 등록할 수 있어요. local LobbyState = Game:AddPhase("Lobby") local PlayState = Game:AddPhase("Play") local ResultState = Game:AddPhase("Result") 더보기 함수 RModePhase AddPhase(string phasename) 게임에 단계를 추가할 수 있어요. (추가할 단계 이름) --서버와 클라이언트간 동기화되는 값을 등록하고 초기값을 설정한뒤, 값이 변경될때마다 호출되게 해요. Game:AddReplicateValue("GameState", "Lobby", Enum.ReplicateType.Changed, 0) 더보기 함수..

article thumbnail
[디토랜드] AddTimeEvent - DeleteTimeEvent (n초 후 함수 호출)
LuaScript 2021. 12. 23. 16:31

ServerScript --AddTimeEvent로 호출할 함수에요. local function PrintMessage() print("Call PrintMessage!") --메시지를 로그창에 출력해요. end --문자열("PrintMessage~")로 이벤트 이름과 PrintMessage 함수를 연결해서 호출해요. --이벤트 이름을 다르게하면 여러개도 호출할 수 있어요. Game:AddTimeEvent("PrintMessage1", 2, PrintMessage) Game:AddTimeEvent("PrintMessage2", 2, PrintMessage) 더보기 이벤트 AddTimeEvent(String EventName, float Time, LuaScriptFunction EventFuunction..

article thumbnail
[디토랜드] AddReplicateValue
LuaScript 2021. 12. 23. 14:46

ServerScript --서버와 클라이언트간 동기화되는 값을 등록하고 초기값을 설정한뒤, 값이 변경될때마다 호출되게 해요. --Game에 GameID라는 변수를 선언하고 초기값으로 1을 할당해요. Game:AddReplicateValue("GameID", 1, Enum.ReplicateType.Changed, 0) 더보기 함수 AddReplicateValue(string ValueName, float Data, ReplicateType Type, float Time, bool bSaveToStorage) 해당 객체에 서버, 클라이언트 간 동기화가 가능한 실수를 추가해요. (추가할 Value 이름, float 데이터, Enum.ReplicateType.타입, 동기화 시간, 스토리지 저장 여부) 샘플 --..

article thumbnail
[디토랜드] Create&Destroy
LuaScript 2021. 12. 23. 13:43

ServerScript - CreateSyncObject --Workspace/Sample/Cube 경로에 있는 오브젝트를 Cube 변수에 할당해요. local Cube = Workspace.Sample.Cube --오브젝트를 생성할 위치를 변수에 할당해요. local CreatePos = Vector.new(300, 0, 300) wait(2) --2초를 기다린 뒤, --오브젝트를 위치에 생성해요. --생성한 오브젝트를 바로 변수에 할당할 수 있어요. local NewObject1 = Game:CreateSyncObject(Cube, CreatePos) --서버에서만 CreateSyncObject 사용 print("Create Object Name : " .. NewObject1:GetName() ....

article thumbnail
[디토랜드] CheckType (Is)
LuaScript 2021. 12. 23. 11:52

ServerScript --Workspace/Sample/Cube 경로에 있는 오브젝트를 Cube 변수에 할당해요. local Cube = Workspace.Sample.Cube print("IsStaticMesh : ", Cube:IsStaticMesh()) --오브젝트가 스태틱메쉬면 true를 반환해요. print("IsCharacter: ", Cube:IsCharacter()) --오브젝트가 캐릭터면 true를 반환해요 print("IsFX : ", Cube:IsFX()) --오브젝트가 이펙트면 true를 반환해요 print("IsSound : ", Cube:IsSound()) --오브젝트가 사운드면 true를 반환해요 print("IsPointLight : ", Cube:IsPointLight()..

article thumbnail
[디토랜드] Damage&Heal
LuaScript 2021. 12. 23. 11:35

ServerScript wait(2) --2초를 기다린 뒤, local Player = Game:GetAllPlayer()[1] --게임의 첫번째 플레이어를 얻어서 Player 변수에 할당해요. 더보기 예제 --게임의 모든 플레이어를 Game:GetAllPlayer()로 얻은 다음, --AllPlayer 변수에 할당해요. local AllPlayer = Game:GetAllPlayer() --반복문을 이용해서 AllPlayer 변수에 할당된 플레이어들의 이름을 print로 출력해요. --첫번째(i = 1)부터 시작해서, --AllPlayer의 크기(#AllPlayer)만큼 반복하고 --n번째 자식 오브젝트(AllPlayer[i])의 이름을 로그창에 출력해요. for i = 1, #AllPlayer do ..

article thumbnail
[디토랜드] Enable
LuaScript 2021. 12. 23. 11:25

ServerScript --Workspace/Sample/Cube1 경로에 있는 오브젝트를 Cube 변수에 할당해요. local Cube = Workspace.Sample.Cube1 wait(2) --2초를 기다린뒤, Cube.Enable = false --오브젝트의 상태를 비활성화해요. print(Cube.Enable) --오브젝트의 상태를 로그창에 출력해요. wait(2) --2초를 기다린뒤, Cube.Enable = true --오브젝트의 상태를 활성화해요. print(Cube.Enable) --오브젝트의 상태를 로그창에 출력해요. -- Tip -- Enable을 하는 오브젝트에 자식 오브젝트가 있다면, 자식 오브젝트들의 상태도 같이 변경되요. Enable로 오브젝트를 비활성화하더라도 오브젝트의 충..