루아 Lua 메이플스토리 월드 NPC 아이템 획득 기능 구현하기

반응형

루아 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)
반응형