루아 Lua 메이플스토리 월드 NPC 상호작용 기능 구현하기

반응형

루아 Lua 메이플스토리 월드 NPC 상호작용 기능 구현하기

-- NPC Interaction Script

-- NPC 기본 설정
local npc = {
    name = "상점 주인",
    dialogue = {
        "안녕하세요! 무엇을 도와드릴까요?",
        "오늘은 새로운 아이템이 들어왔어요. 한번 둘러보세요!",
        "좋은 하루 되세요!"
    }
}

-- 플레이어가 NPC와 상호작용했을 때 실행되는 함수
function interactWithNPC(player)
    print(npc.name .. "과(와) 상호작용 중...")
    
    -- 랜덤 대화 출력
    local randomIndex = math.random(1, #npc.dialogue)
    local message = npc.dialogue[randomIndex]
    print(npc.name .. ": " .. message)

    -- 추가로 상점 메뉴 열기나 퀘스트 제공 등의 기능 추가 가능
    -- 예: openShop(player)
    -- 예: offerQuest(player, "퀘스트 이름")
end

-- 플레이어가 근처에서 상호작용 키를 누를 때 호출
function onPlayerInteract(player)
    if isPlayerNearby(player, npc) then
        interactWithNPC(player)
    else
        print("NPC 근처에 있어야 상호작용할 수 있습니다.")
    end
end

-- NPC와 플레이어의 거리 계산 (가상 함수)
function isPlayerNearby(player, npc)
    -- 여기서는 단순히 true를 반환
    -- 실제로는 거리 계산을 추가해야 함
    return true
end
반응형