반응형
루아 Lua 메이플스토리 월드 NPC 아이템 획득 기능 구현하기
-- 아이템 획득 스크립트
-- 아이템 데이터 설정
local item = {
name = "HP 물약",
description = "사용 시 체력을 50 회복합니다.",
amount = 1 -- 아이템 수량
}
-- 플레이어 인벤토리 (가상의 테이블)
local playerInventory = {}
-- 아이템 획득 함수
function giveItemToPlayer(player, item)
print("플레이어가 아이템을 획득했습니다: " .. item.name)
-- 인벤토리에 아이템 추가
if playerInventory[item.name] then
playerInventory[item.name] = playerInventory[item.name] + item.amount
else
playerInventory[item.name] = item.amount
end
print(item.name .. " x" .. playerInventory[item.name] .. " (현재 수량)")
end
-- 플레이어가 특정 영역에 들어왔을 때 호출
function onPlayerEnterArea(player, area)
if area.name == "아이템 상자" and not area.isClaimed then
print("아이템 상자 근처에 도달했습니다.")
giveItemToPlayer(player, item)
area.isClaimed = true -- 아이템이 이미 획득되었음을 표시
else
print("이미 아이템이 획득된 상자입니다.")
end
end
-- 테스트 영역 데이터
local testArea = {
name = "아이템 상자",
isClaimed = false
}
-- 테스트 실행
local player = {} -- 가상의 플레이어 객체
print("플레이어가 아이템 영역에 들어갑니다.")
onPlayerEnterArea(player, testArea)
-- 다시 들어가면 아이템을 받을 수 없음을 확인
print("플레이어가 다시 아이템 영역에 들어갑니다.")
onPlayerEnterArea(player, testArea)
반응형