luciano0223 2 Postado Abril 9, 2016 Share Postado Abril 9, 2016 Como o nome já diz, eu queria um npc q vendesse magias por level, por exemplo eu tô lvl 80 posso comprar exori gran. Link para o comentário Compartilhar em outros sites More sharing options...
0 luciano0223 2 Postado Abril 9, 2016 Autor Share Postado Abril 9, 2016 up Link para o comentário Compartilhar em outros sites More sharing options...
0 miguel223 98 Postado Abril 12, 2016 Share Postado Abril 12, 2016 (editado) Em spells/spells.xml, adicione na linha da spell: storage="10293" Em npcs/scripts/, crie um arquivo chamado speller.lua e adicione: 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, 'exori gran')) then if(getPlayerStorageValue(cid, 10293) <= 0) then if(getPlayerLevel(cid) >= 80) then if(doPlayerRemoveMoney(cid, 20000) == TRUE) then setPlayerStorageValue(cid, 10293, 1) selfSay('Voce acabou de aprender como usar o exori gran, jogador.', cid) else selfSay('Voce precisa de 20000 golds para comprar esta magia jogador.', cid) end else selfSay('Voce ainda nao e level 80, para comprar esta magia.', cid) end else selfSay('Voce ja aprendeu esta magia, jogador.', cid) end end talkState[talkUser] = 0 return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Editado Abril 12, 2016 por miguel223 Link para o comentário Compartilhar em outros sites More sharing options...
0 miguel223 98 Postado Abril 12, 2016 Share Postado Abril 12, 2016 De novo o code cortou meu post... Enfim, crie um arquivo chamado Speller.xml em npcs/ e adicione: <?xml version="1.0" encoding="UTF-8"?> <npc name="Speller" script="data/npc/scripts/speller.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="142" head="57" body="59" legs="40" feet="76" addons="0"/> <parameters> <parameter key="message_greet" value="Ola, |PLAYERNAME|. Posso te vender as magias: {exori gran}."/> </parameters> </npc> Link para o comentário Compartilhar em outros sites More sharing options...
0 miguel223 98 Postado Abril 13, 2016 Share Postado Abril 13, 2016 Por fim, falando com o rapaz, o storage="" não funfa. Fiz direto pelo script.lua da spell, ficando assim no final: function onCastSpell(cid, var) if getPlayerStorageValue(cid, 10293) >= 1 then return doCombat(cid, combat, var) else doPlayerSendCancel(cid, "Voce nao aprendeu esta magia ainda, jogador.") doSendMagicEffect(getPlayerPosition(cid), 2) end end Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
luciano0223 2
Como o nome já diz, eu queria um npc q vendesse magias por level, por exemplo eu tô lvl 80 posso comprar exori gran.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados