Witam może mi ktoś powiedzieć dlaczego npc wgl nie reaguje na ''hi''? to kod lua
a tu daje kod xml
Python:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local SKULL_ITEM_ID = 7499
local PLATINUM_COIN_ID = 2152
local GHOSTLY_EYE_ITEM_ID = 7956
local PLATINUM_COIN_REWARD = 5
local npcMissions = {
[1] = {
description = "Przynieś pięć czaszek.",
requiredItem = SKULL_ITEM_ID,
requiredItemCount = 5,
rewardItem = PLATINUM_COIN_ID,
rewardCount = 1,
completed = false
},
[2] = {
description = "Przynieś dziesięć oczu zjawy.",
requiredItem = GHOSTLY_EYE_ITEM_ID,
requiredItemCount = 10,
rewardItem = PLATINUM_COIN_ID,
rewardCount = PLATINUM_COIN_REWARD,
completed = false
}
}
local function checkPlayerMissionProgress(cid)
local playerMissions = getPlayerStorageValue(cid, 1000)
if playerMissions == -1 then
playerMissions = {}
end
return playerMissions
end
local function checkMissionCompletion(cid, mission)
local playerMissions = checkPlayerMissionProgress(cid)
if not playerMissions[mission] then
return false
end
if playerMissions[mission] == 1 then
return true
else
return false
end
end
local function setMissionComplete(cid, mission)
local playerMissions = checkPlayerMissionProgress(cid)
playerMissions[mission] = 1
setPlayerStorageValue(cid, 1000, playerMissions)
end
function onCreatureAppear(cid) end
function onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) end
function onThink() end
function creatureSayCallback(cid, type, msg)
if not npcHandler:isFocused(cid) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if msg == "hi" then
local playerLevel = getPlayerLevel(cid)
if playerLevel >= 15 then
if not checkMissionCompletion(cid, 2) then
selfSay("Cześć! Widzę, że osiągnąłeś wystarczający poziom, aby podjąć kolejne wyzwanie. Czy jesteś gotowy na kolejną misję?", cid)
talkState[talkUser] = 1
else
selfSay("Witaj ponownie! Czy potrzebujesz czegoś jeszcze?", cid)
end
else
selfSay("Witaj! Czy potrzebujesz pomocy?", cid)
end
elseif msg == "misja" then
local playerMissions = checkPlayerMissionProgress(cid)
if not playerMissions[1] then
selfSay(npcMissions[1].description, cid)
talkState[talkUser] = 2
else
selfSay("Już masz aktywną misję. Wróć, gdy ją ukończysz.", cid)
end
elseif msg == "tak" and talkState[talkUser] == 1 then
if getPlayerItemCount(cid, 10022) >= 1 then
if doPlayerRemoveMoney(cid, 15000) then
doPlayerRemoveItem(cid, 10022, 1)
doPlayerAddItem(cid, 9933)
selfSay("Proszę bardzo.", cid)
setMissionComplete(cid, 2)
else
selfSay("Przepraszam, nie masz wystarczająco złota.", cid)
end
else
selfSay("Przepraszam, nie masz przedmiotu.", cid)
end
talkState[talkUser] = 0
elseif msg == "nie" and talkState[talkUser] == 1 then
selfSay("Dobrze, jak chcesz.", cid)
talkState[talkUser] = 0
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
a tu daje kod xml
XML:
<npc name="Kolekcjoner" script="data/npc/scripts/Kolekcjoner.lua" access="5" lookdir="1">
<health now="1000" max="1000"/>
<look type="14" head="90" body="12" legs="3" feet="8" addons="1"/>
<parameters>
<parameter key="message_greet" value="Witaj |PLAYERNAME|. Jestem Kolekcjonerem. Mam dla ciebie zadania do wykonania!" />
</parameters>
</npc>
Last edited by a moderator: