Tópico em Área Incorreta.
Tópico Movido
Por Djonga, 26 de jan. de 2013 em Tópicos Sem Resposta
info
Grupo: Infante
Registrado: 04/03/11
Posts: 1.6k
Reputação: +393
Char no Tibia: No Have

Tópico em Área Incorreta.
Tópico Movido
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

tu fez o script? ta brincando comigo neh? kkk
anyway, tenta usar assim...
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function doBuyPokemonWithCasinoCoins(cid, poke) npcHandler:onSellpokemon(cid) end
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
local stoQuest = 9873242
local stoOut = 181644
if msgcontains(msg, 'mission') and (not talkState[talkUser] or talkState[talkUser] == 0) then
if getPlayerStorageValue(cid, stoQuest) >= 1 then
selfSay("You already did this quest!", cid)
talkState[talkUser] = 0
return true
end
selfSay("You need catch atleast 1 pokemons, and I bring to you the Shiny Box, u can do it?", cid)
talkState[talkUser] = 1
elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'sim')) and talkState[talkUser] == 1 then
if getPlayerStorageValue(cid, stoQuest) >= 1 then
selfSay("You already did this quest!", cid)
talkState[talkUser] = 0
return true
end
local list = getCatchList(cid)
if #list >= 1 then
selfSay("Thank you very much, take you reward...", cid)
setPlayerStorageValue(cid, stoOut, 1)
setPlayerStorageValue(cid, stoQuest, 1)
doPlayerAddExperience(cid,40000000)
doPlayerAddItem(cid, 11638, 1) --box 4
doPlayerAddMoney(cid, 100000000) --400k
talkState[talkUser] = 0
return true
else
selfSay("You haven't caught 1 pokemons yet, come back when you do that...", cid)
talkState[cid] = 0
return true
end
elseif (msgcontains(msg, 'no') or msgcontains(msg, 'nao')) then
selfSay("So good bye...", cid)
talkState[cid] = 0
return true
end
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Editado Janeiro 26 por Slicer
EHASIUE, desculpa mano.
ja consegui resolver, duvida sanada ![]()
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

sanado, movido
info
Grupo: Herói
Registrado: 28/11/10
Posts: 3.4k
Reputação: +585
Gênero: Masculino

info
Grupo: Artesão
Registrado: 14/06/11
Posts: 112
Reputação: +11
Gênero: Masculino
Galera, preciso da ajuda de vocês.
Fiz um NPC de catcher, que com uma certa quantidade de catch, ele te dá um outfit e dinheiro.
O player pega, mais , ele não para de dar a recompensa, fica dando varias e varias vezes.
Script:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function doBuyPokemonWithCasinoCoins(cid, poke) npcHandler:onSellpokemon(cid) end
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
local stoQuest = 9873242
local stoOut = 181644
if msgcontains(msg, 'mission') and (not talkState[talkUser] or talkState[talkUser] == 0) then
if getPlayerStorageValue(cid, stoQuest) >= 1 then
selfSay("You already did this quest!", cid)
talkState[talkUser] = 0
return true
end
selfSay("You need catch atleast 1 pokemons, and I bring to you the Shiny Box, u can do it?", cid)
talkState[talkUser] = 1
elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'sim')) and talkState[talkUser] == 1 then
local list = getCatchList(cid)
if #list >= 1 then
selfSay("Thank you very much, take you reward...", cid)
setPlayerStorageValue(cid, stoOut, 1)
setPlayerStorageValue(cid, stoQuest, 1)
doPlayerAddExperience(cid,40000000)
doPlayerAddItem(cid, 11638, 1) --box 4
doPlayerAddMoney(cid, 100000000) --400k
else
selfSay("You haven't caught 1 pokemons yet, come back when you do that...", cid)
talkState[cid] = 0
return true
end
elseif (msgcontains(msg, 'no') or msgcontains(msg, 'nao')) then
selfSay("So good bye...", cid)
talkState[cid] = 0
return true
end
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
alguem me ajuda ? REP+ pra quem ajudar