yagoshira004 1 Postado Abril 19, 2014 Share Postado Abril 19, 2014 Eai galera estou usando um Script de NPC que ele vende vocação Está tudo em conformes porem quando eu deslogo o player perde a vocação: Script 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) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'mestre kame') or msgcontains(msg, 'kame')) then selfSay('Voce realmente deseja se tornar um {Mestre Kame}.', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if(getPlayerItemCount(cid, 9971) >= 30) then doPlayerRemoveItem(cid, 9971, 30) doPlayerSetVocation(cid,350) selfSay('Voce se tornou um Mestre Kame.', cid) else selfSay('Você não tem {vip coins} suficientes.', cid) end talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Lá no Vocations.XML <vocation id="350" name="Kame" description="" needpremium="1" gaincap="70" gainhp="160" gainmana="150" gainhpticks="3.5" gainhpamount="300" gainmanaticks="3" gainmanaamount="400" manamultiplier="1.1" attackspeed="1800" soulmax="100" gainsoulticks="120"> fromvoc="nil"> <formula meleeDamage="8.0" distDamage="8.0" wandDamage="3.0" magDamage="3.5" magHealingDamage="7.0" defense="1.1" magdefense="1.3" armor="1.0"/> <skill fist="1.1" club="1.1" sword="1.0" axe="1.2" distance="1.1" shielding="1.1" fishing="1.1" experience="1.0"/> </vocation> Imagens: Apos comprar a vocação com o npc Apos deslogar ALGUEM SABE O QUE PODE SER ESSE ERRO? POR FAVOR ME AJUDEM ! REP+ Link para o comentário https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/ Compartilhar em outros sites More sharing options...
0 Demonbholder 420 Postado Abril 21, 2014 Share Postado Abril 21, 2014 Substitui o código do npc por este: 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 storage = 2014042021 local vocation = 350 if(msgcontains(msg, 'mestre kame') or msgcontains(msg, 'kame')) then selfSay('Voce realmente deseja se tornar um {Mestre Kame}.', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if(getPlayerItemCount(cid, 9971) >= 30) then doPlayerRemoveItem(cid, 9971, 30) doPlayerSetVocation(cid, vocation) setPlayerStorageValue(cid, storage, vocation) selfSay('Voce se tornou um Mestre Kame.', cid) else selfSay('Você não tem {vip coins} suficientes.', cid) end talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Cria um arquivo .lua em data/creaturescripts/scripts e coloca isso: function onLogin(cid) local storage = getPlayerStorageValue(cid, 2014042021) if storage ~= -1 then doPlayerSetVocation(cid, storage) end return true end Depois é só colocar a tag no creaturescripts.xml (me avisa se vc n souber fazer) Link para o comentário https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/#findComment-1639540 Compartilhar em outros sites More sharing options...
0 Demonbholder 420 Postado Abril 20, 2014 Share Postado Abril 20, 2014 Seta um storage e depois faz um onLogin pra colocar a vocação de novo. Link para o comentário https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/#findComment-1639345 Compartilhar em outros sites More sharing options...
0 yagoshira004 1 Postado Abril 20, 2014 Autor Share Postado Abril 20, 2014 Demonbholder Como eu faço isso? Não entendo muito de scripts Link para o comentário https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/#findComment-1639531 Compartilhar em outros sites More sharing options...
0 yagoshira004 1 Postado Abril 21, 2014 Autor Share Postado Abril 21, 2014 Deu certo, muito obrigado cara você me ajudou em 2 tópicos , meu limite de REP acabou amanha te dou mais um Obrigado mesmo! Link para o comentário https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/#findComment-1639544 Compartilhar em outros sites More sharing options...
0 Demonbholder 420 Postado Abril 21, 2014 Share Postado Abril 21, 2014 Relaxa, não precisa se preocupar com isso Vou reportar pra moverem o tópico. Link para o comentário https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/#findComment-1639545 Compartilhar em outros sites More sharing options...
0 Killua 389 Postado Abril 21, 2014 Share Postado Abril 21, 2014 Tópico movido para a seção de dúvidas e pedidos resolvidos. Link para o comentário https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/#findComment-1639656 Compartilhar em outros sites More sharing options...
Pergunta
yagoshira004 1
Eai galera estou usando um Script de NPC que ele vende vocação
Está tudo em conformes porem quando eu deslogo o player perde a vocação:
Script NPC:
local keywordHandler = KeywordHandler:new()
Link para o comentário
https://xtibia.com/forum/topic/232060-erro-em-npc-que-vende-voca%C3%A7%C3%A3o/Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados