NB
pedido

meu npc não esta funcionando

Por nbb147, 12 de dez. de 2012 em Scripts

npc
storage
item
script
8
902
nbb147N
12 de dezembro de 2012 às 20:02

galera eu esta tentando fazer um npc que verifica a storage 11124 e se o player tiver e recebe 20 potions e seria teleportado, mais ele não esta funcionando, ele não da nenhum item e nem teleporta, por favor mim ajudem, script abaixo:

 

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

local pos = {x=2935,y=3053,z=6}

local storage = 11124 -- storage que vai receber

local itemid = 2151

local count = 20

 

if msgcontains(msg, 'exam chunnin') and getPlayerStorageValue(cid, storage) > 1 then

selfSay('Boa sorte no exame.', cid)

doPlayerAddItem(cid, itemid, count)

doTeleportThing(cid, pos)

else

selfSay('...', cid)

end

 

return true

end

 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

e por favor se alguem mim ajudar explique o que ocorreu no script.

SlicerS
12 de dezembro de 2012 às 20:26

o.O o script parece esta 100%...

percebeu q tem q fla isso e tem q ter a storage acima de 1.. e n igual ou menor q 1? ;x

if msgcontains(msg, 'exam chunnin') and getPlayerStorageValue(cid, storage) > 1 then

talvez seja o > 1.. q devia tar >= 1?

nbb147N
12 de dezembro de 2012 às 20:39

kkkkkkkkkkkk, passei o dia endoidando com esse script sendo q era so uma besteira para ajeitar ele, coloquei na getPlayerStorageValue 0, agora ta funcionando perfeitamente.. mais diz ai, como seria para eu fazer esse npc dar esses items so uma vez?

Editado Dezembro 12 por nbb147

SlicerS
12 de dezembro de 2012 às 20:47

ta fizese a storage ser 0 neh? entao tenta setar ela pra 1 depois q o player receber os itens... tpw..

if msgcontains(msg, 'exam chunnin') and getPlayerStorageValue(cid, storage) <= 0 then
selfSay('Boa sorte no exame.', cid)
doPlayerAddItem(cid, itemid, count)
doTeleportThing(cid, pos)
setPlayerStorageValue(cid, storage, 1)
else
selfSay('...', cid)
end

nbb147N
12 de dezembro de 2012 às 20:57

msm assim ainda recebe os itens.

SlicerS
12 de dezembro de 2012 às 21:35

hã.. impossivel.. a n ser q tu esteja setando a storage pra -1 ou 0 denovo em algum lugar... ;/

nbb147N
12 de dezembro de 2012 às 21:43

a cara pode deixar ja resolveu o problema maior brigadao ai por tirar a duvida rep+

reportado para moverem

Yan OliveiraY
12 de dezembro de 2012 às 21:45

Dúvida Resolvida!

 

Tópico Movido.