Item

아이템 오브젝트를 다루기 위한 객체에요.

이벤트

UseEvent

아이템 사용 시 호출되는 이벤트에요. 연결함수 형식은 function(usePlayer), usePlayer 는 Player 객체 입니다.

-- 샘플 --

local Item = Script.Parent

local function UseItem(player) --UseEvent에 연결된 함수는 Player 인자가 고정적으로 들어가요.
    print("Use Item")
end
Item.UseEvent:Connect(UseItem)  --아이템 사용시 호출할 함수를 연결해요.

EquipEvent

아이템 장착 시 호출되는 이벤트에요. 연결함수 형식은 function(equipPlayer), equipPlayer 는 Player 객체 입니다.

-- 샘플 --

local Item = Script.Parent

local function EquipItem(player) --EquipEvent에 연결된 함수는 player 인자가 고정적으로 들어가요.

end
Item.EquipEvent:Connect(EquipItem) --아이템에 장착시 호출할 함수를 연결해요.

UnEquipEvent

아이템 탈착 시 호출되는 이벤트에요. 연결함수 형식은 function(unequipPlayer), unequipPlayer 는 Player 객체 입니다.

-- 샘플 --

local item = Script.Parent

local function UnEquipItem(Player) --UnEquipEvent에 연결된 함수는 Player 인자가 고정적으로 들어가요.

end
item.UnEquipEvent:Connect(UnEquipItem) --아이템에 장착 해제시 호출할 함수를 연결해요.

함수

number GetItemCount()

아이템의 개수를 얻을 수 있어요.

-- 샘플 --

print(Item:GetItemCount())

bool IsEquiped()

현재 아이템 장착상태인지를 확인 할 수 있어요.

-- 샘플 --

print(Item:IsEquiped())

number GetActionCoolTime(string ActionName)

아이템에 설정한 해당 액션의 쿨타임을 얻을 수 있어요. (설정할 액션 이름)

-- 샘플 --

print(Item:GetActionCoolTime("Fire")) -- AddAction이나 AddToggleAction 함수로 먼저 액션을 추가해준 후에 사용해요.

void SetActionCoolTime(string ActionName, number Time)

아이템에 설정한 해당 액션의 쿨타임을 설정할 수 있어요. (설정할 액션 이름, 설정하고 싶은 시간)

-- 샘플 --

Item:SetActionCoolTime("Fire", 3) -- AddAction이나 AddToggleAction 함수로 먼저 액션을 추가해준 후에 사용해요.

string GetEquipSlot()

해당 아이템의 장착 슬롯을 가져올 수 있어요.

-- 샘플 --

print(Item:GetEquipSlot()) -- Item 객체의 'EquipSlot' 프로퍼티를 가져와요.

number GetIconImg()

-- 샘플 --

print(Item:GetIconImg()) -- Item 객체의 'IconTextureID' 프로퍼티를 가져와요.

void AddAction(string ActionName, number ActionCoolTime, function TargetFunction)

아이템 착용 후 액션을 추가해요. (액션 이름, 해당 액션의 쿨타임, 연결 함수)

-- 샘플 --

--클라 스크립트에서-------------
Item = Script.Parent

local function StartClick(player, curCameraPos , curCameraForward) --AddAction에 연결된 함수는 player, curCameraPos, curCameraForward 인자가 고정적으로 들어가요.
    print("액션 시작 : 클라")
end
Item:AddAction("Fire", 0.5, false, StartClick, Enum.Key.LeftMouseButton) -- * false : 키 입력 유지 시 액션 지속 사용 여부


--서버 스크립트에서-------------
Item = Script.Parent

local function StartClick(player, curCameraPos , curCameraForward) --AddAction에 연결된 함수는 player, curCameraPos, curCameraForward 인자가 고정적으로 들어가요.
    print("액션 시작 : 서버")
end
Item:AddAction("Fire", 0.5, StartClick) -- 클라 스크립트에서 등록한 키가 입력되면 연결된 함수를 호출해요.

void AddToggleAction(string ActionName, number ActionCoolTime, function StartFunction, function EndFunction)

아이템 착용 후 토글 액션을 추가해요. (액션 이름, 액션 쿨타임, 액션 시작 시 연결 함수, 액션 종료 시 연결 함수)

-- 샘플 --

--클라 스크립트에서-------------
Item = Script.Parent

local function StartClick(player, curCameraPos , curCameraForward) --AddToggleAction에 연결된 함수는 player, curCameraPos, curCameraForward 인자가 고정적으로 들어가요.
    print("액션 시작 : 클라")
end

local function EndClick(player, curCameraPos , curCameraForward) --AddToggleAction에 연결된 함수는 player, curCameraPos, curCameraForward 인자가 고정적으로 들어가요.
    print("액션 종료 : 클라")
end

Item:AddToggleAction("Fire", 0.5, StartClick, EndClick, Enum.Key.LeftMouseButton)


--서버 스크립트에서-------------
Item = Script.Parent

local function StartClick(player, curCameraPos , curCameraForward) --AddToggleAction에 연결된 함수는 player, curCameraPos, curCameraForward 인자가 고정적으로 들어가요.
    print("액션 시작 : 서버")
end

local function EndClick(player, curCameraPos , curCameraForward) --AddToggleAction에 연결된 함수는 player, curCameraPos, curCameraForward 인자가 고정적으로 들어가요.
    print("액션 종료 : 서버")
end

Item:AddToggleAction("Fire", 0.5, StartClick, EndClick) -- 클라 스크립트에서 등록한 키가 입력되면 연결된 함수를 호출해요.

Last updated

Was this helpful?