if not getPlayerStorageValue(cid,70003) >= 1 then
wtf? pq tu boto o not ali? u,U
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

if not getPlayerStorageValue(cid,70003) >= 1 then
wtf? pq tu boto o not ali? u,U
é pq se o cara não tiver essa storage ele não responde
eu coloquei ele ganhar a storage ao usar um item
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

tenta assim entao...
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
local need = {{2233,5}, {2234,5}, {2235,5}, {2236,5}, {2237,5}}
local function haveAllItens(cid)
local flag = true
for _, t in ipairs(need) do
if getPlayerItemCount(cid, t[1]) < t[2] then
flag = false
break
end
end
return flag
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, 'missao') or msgcontains(msg, 'quest')) and getPlayerStorageValue(cid,70003) == 1 then
selfSay('Iruka me disse que estava vindo, temos que te preparar para o futuro ninja pois nunca saberemos o que há de vir. Bom tenho um trabalho para'..
' voce, poderia me ajudar a coletar algumas plantas medicinais?', cid)
setPlayerStorageValue(cid,70003,2)
talkState[talkUser] = 1
elseif (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) and talkState[talkUser] == 1 and getPlayerStorageValue(cid,70003) == 2 then
if getPlayerVocation(cid) >= 1 and getPlayerVocation(cid) <= 9 then
selfSay('Okay, primeiramente pegue esta Knife e vá coletar para mim 5 Yellow rose, 5 blue rose, 5 white rose, 5 purple rose e 5 red rose.'..
' Quando terminar volte até a mim', cid)
setPlayerStorageValue(cid,70003,3)
doPlayerAddItem(cid, 2566, 1)
talkState[talkUser] = 0
else
selfSay('Desculpe, mas você não pode aprender Jutsus!', cid)
talkState[talkUser] = 0
end
elseif (msgcontains(msg, 'missao') or msgcontains(msg, 'quest')) and getPlayerStorageValue(cid,70003) == 3 then
if haveAllItens(cid) then
for _, t in ipairs(need) do
doPlayerRemoveItem(cid, t[1], t[2])
end
doPlayerLearnInstantSpell(cid, 'seikatsunojutsu')
doSendMagicEffect(getThingPos(cid), 27)
selfSay('Parabéns! Você completou minha quest e em troca lhe ensinei um Jutsu de recuperar seu HP. Cheque seus Stats para Ver o Jutsu.', cid)
talkState[talkUser] = 0
else
selfSay('Desculpe, mas você não tem o que eu lhe pedi, volte quando tiver!', cid)
talkState[talkUser] = 0
end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
ps: nao adianta nd fazer soh 'if talkState[talkUser] == x then'...
Editado Julho 31 por Slicer
Pqp Da raiva desses caras foda =)
Obrigado pela atenção amigo!
+Rep. Dúvida Sanada. Reportado para moverem.
info
Grupo: Herói
Registrado: 12/03/11
Posts: 1.9k
Reputação: +284
Gênero: Masculino
Char no Tibia: Nokte

Tópico movido para a seção de dúvidas e pedidos resolvidos.
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

tente estudar oq eu fiz.. deve lhe ajudar na criaçao de outros scripts ^^
o uso de aritmética e tabelas ajuda muito a diminuir o script e deixa-lo mais legível...
e fazer uma identaçao correta tb ajuda muito na leitura do script...
info
Grupo: Artesão
Registrado: 06/02/13
Posts: 132
Reputação: +8
Char no Tibia: Koete
Fis um Npc de quest mas ele não esta funcionando mas também não mostra mensagem de erro alguém pode me ajudar?
local keywordHandler = KeywordHandler:new()