-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
- 0 respostas
- 609 visualizações
-
- 0 respostas
- 516 visualizações
-
- 0 respostas
- 1633 visualizações
-
- 0 respostas
- 1255 visualizações
-
- 1 resposta
- 2329 visualizações
-

Pergunta
juliok80 17
E ae galera, blz!?
Estou tendo problemas com o NPC abaixo, esses dias ele travou de vez e deixou o OT todo lagado... gostaria de saber se alguém sabe o que tem de errado nele, a função que tinha dado pau foi a onThink, não consegui tirar o print, pq o pc travou e tive que reiniciar... o NPC ainda exibe alguns erros no console, mas não consigo identificar onde está o erro.
<?xml version="1.0" encoding="UTF-8"?> <npc name="Morte" script="data/npc/scripts/npchunt.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="300"/> <parameters> <parameter key="message_greet" value="Ola. Para entrar na arena voce deve pagar uma taxa de 500k. Diga {arena} para entrar na quest." /> <parameter key="message_farewell" value="Ate mais." /> <parameter key="message_walkaway" value="Ate mais." /> </parameters> </npc>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) local pos = {x=86, y=945, z=15} -- Local da hunt local posreturn = {x=160, y=54, z=7} -- Posiçao onde o player sera teleportado quando acabar o tempo local money = 250000 --- Quanto de dinheiro sera removido config = { time = 15 ---Tempo que ele vai ficar na hunt sabendo que cada numeral equivale a um minuto----- } function doReturnPos() doTeleportThing(cid, posreturn) setGlobalStorageValue(24688, 0) setGlobalStorageValue(24686, none) setPlayerStorageValue(cid, 28680, 0) end if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'arena') then if getGlobalStorageValue(24688) == 1 then doPlayerSendTextMessage(cid,22,"O player "..getGlobalStorageValue(24686).." esta na arena") return true end if not doPlayerRemoveMoney(cid, money) then doPlayerSendTextMessage(cid,22,""..getPlayerName(cid).." precisa de 500k para entrar na arena") return true end doPlayerRemoveMoney(cid, money) doPlayerSendTextMessage(cid,22,""..getPlayerName(cid).." voce tem 15 minutos para fazer a quest se passar o tempo, voce sera teleportado para o templo.") doTeleportThing(cid, pos) setGlobalStorageValue(24688, 1) setGlobalStorageValue(24686, getPlayerName(cid)) setPlayerStorageValue(cid, 28680, 1) addEvent(doReturnPos, config.time*60*1000) else selfSay('Diga arena', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())Erros que aparecem no console:
Estou usando ele para liberar a entrada para a quest arena, a função dele é teleportar o player para dentro da arena e deixar o player nesta área por 15 minutos, após este tempo o player é teleportado para o templo e se outro player tentar entrar na arena, o NPC informa que já existe um player dentro da arena.
Só estou postando o código do NPC aqui, pois o código completo possui também funções para verificar se o player deslogou ou morreu.
Segue o link do NPC completo: http://www.xtibia.co...87179-npc-hunt/
Ah... e outra coisa que reparei é que o NPC cobra o dobro do preço que é colocado na variável money, por este motivo tive que colocar 250k na variável e 500k na mensagem.
Muitíssimo obrigado!
Editado por juliok80Link para o comentário
https://xtibia.com/forum/topic/204479-erro-no-npc/Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados