--1.위치
P = function (A,B,C)
return {x=A, y=B, z=C}
end
--2.장치블록 가져오기
function GEC (A,B,C)
local position = {x=A, y=B, z=C}
return Game.EntityBlock.Create(position)
end
--3.장치블록 리셋
function Game.EntityBlock:Reset()
self:Event({action = "reset"})
end
--4.장치블록 사용
function Game.EntityBlock:Use ( num )
if num == nil then error("Invalid param") end
if type(num) ~= "number" then error("None-number type param") end
self:Event({action = "use"}, num)
end
--5.장치블록 터치
function Game.EntityBlock:Touch ( num )
if num == nil then error("Invalid param") end
if type(num) ~= "number" then error("None-number type param") end
self:Event({action = "touch"}, num)
end
--6.장치블록 신호On
function Game.EntityBlock:On ()
self:Event({action = "signal", value = true})
end
--7.장치블록 신호Off
function Game.EntityBlock:Off ()
self:Event({action = "signal", value = false})
end
사용 예시)
Button = GEC(5,5,0)
Block:Use(1)
Block:Touch(1)
Block:Reset()
Block:On()
Block:Off()
function Block:OnUse(player) player.position = P(10,10,10) end
스튜디오 글이 뜸해서 간략하게 씀다
장치블록은 사용,터치 둘다 되거나 둘중 하나만 되거나 오류가 날 수 있슴다.
Use는 주로 플레이어가 사용 가능한 장치블록에 사용될 수 있고
Touch는 주로 플레이어가 위치할 수 있는 영역 블록에 사용될 수 있슴다.
반복적인 테스트를 통해 오류를 제거하고 사용합시다