tenta esse:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler: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(msgcontains(msg, 'job')) then
selfSay('For repair you ring say {ring} or {experience}.', cid)
end
---------------------------------------------------------
if(msgcontains(msg, 'ring') or msgcontains(msg, 'experience')) then
selfSay('Do you want to repair your experience ring for 50000 gold coins?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
if(getPlayerItemCount(cid, 2122) <= 0) then
selfSay('You dont have any ring.', cid)
else
if(doPlayerRemoveMoney(cid, 50000) == TRUE) then
doPlayerRemoveItem(cid, 2122, 1)
doPlayerAddItem(cid, 7697, 1)
selfSay('Here you are.)', cid)
else
selfSay('Sorry, you dont have gold.', cid)
end
end
return true
end
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())






info
Grupo: Campones
Registrado: 12/08/12
Posts: 10
Reputação: 0
Estou usando um anel que dá xp extra aos players.. criei um npc que repara o anel quando acaba o tempo de exp, só que esse npc ta dando erro na hora de carregar.
Alguém da uma ajuda?
olha o erro:
[Error - LuaInterface::loadFile] data/npc/scripts/Sell/ring_repair.lua:42: 'end' expected (to close 'function' at line 11) near '<eof>'
[Warning - NpcEvents::NpcEvents] Cannot load script: data/npc/scripts/Sell/ring_repair.lua
data/npc/scripts/Sell/ring_repair.lua:42: 'end' expected (to close 'function' at line 11) near '<eof>'
esse é o script do npc que repara (ring_repair.lua):
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler: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(msgcontains(msg, 'ring') or msgcontains(msg, 'experience')) then
selfSay('Do you want to repair your experience ring for 50000 gold coins?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
if(getPlayerItemCount(cid, 2122) >= 1) then
if(doPlayerRemoveMoney(cid, 50000) == TRUE) then
doPlayerRemoveItem(cid, 2122, 1)
doPlayerAddItem(cid, 7697)
selfSay('Here you are.', cid)
else
selfSay('Sorry, you don\'t have enough gold.', cid)
end
else
selfSay('Sorry, you don\'t have the item.', cid)
end
talkState[talkUser] = 0
elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then
talkState[talkUser] = 0
selfSay('Ok then.', cid)
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Aguardo algum help
rep+ pra quem ajudar a solucionar isso!