Postado Janeiro 12, 2015 10 anos Autor <npc name="Mary" script="data/npc/scripts/refinamento.lua" walkinterval="25" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="147" head="0" body="114" legs="91" feet="85" addons="3" corpse="2212"/> <parameters> <parameter key="module_shop" value="1" /> <parameter key="message_greet" value="Ola |PLAYERNAME|. Diga {negociar} para vender pedras de refinamento." /> <parameter key="shop_sellable" value="pedra refinadora nivel 1,8298,1000;pedra refinadora nivel 2,8299,2000;pedra refinadora nivel 3,8301,5000; pedra refinadora nivel 4,8302,20000; pedra refinadora niveis 5,8303,50000"/> </parameters> </npc> local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 thinkCallback(cid) local rand = math.random(1,100) if rand == 2 then selfSay('Olá! Venda suas pedras aqui!') -- msg que vai sair do npc end if rand == 1 then selfSay ('Só entendo português, diga oi.') end if rand == 3 then selfSay ('Posso te ajudar?') end return true end function greetCallback(cid) return true end local shopModule = ShopModule:new() npcHandler:addModule(shopModule) shopModule:addBuyableItem({'Holy Pet'}, 8298, 0, 'pedra refinadora nivel 1') shopModule:addBuyableItem({'Fire Pet'}, 8299, 0, 'pedra refinadora nivel 2') shopModule:addBuyableItem({'Ice Pet'}, 8301, 0, 'pedra refinadora nivel 3') shopModule:addBuyableItem({'Terra Pet'}, 8302, 0, 'pedra refinadora nivel 4') shopModule:addBuyableItem({'Energy Pet'}, 8303, 0, 'pedra refinadora nivel 5') npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:setCallback(CALLBACK_ONTHINK, thinkCallback) npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:addModule(FocusModule:new()) não sei que tem de errado! E voltando no primeiro problema. Para finalizar tem como ajeitar isso: selfSay("Você tem certeza que quer receber "..trophy[msg:lower()][1].." gemas aleatória por um troféu de "..msg:lower().."?", cid) Se eu trocar um troféu de bronze na gema no caso receberia só "1 gema" e a mensagem diz "gemas aleatória" Obs: ou seja não faria sentido 1 está no plural entende? Só quero que quando fale bronze a mensagem apareça assim: Você tem certeza que quer receber 1 gema aleatória por um troféu de bronze.
Postado Janeiro 12, 2015 10 anos Mudei essa parte da mensagem. Sobre o segundo problema: o NPC que compra troféus continua dizendo mensagens de outros NPCs? Se sim, no momento não consigo pensar no que pode ser, exatamente. Mas é algum problema do seu servidor, não do NPC. :x não respondo pms solicitando suporte em programação/scripting
Postado Janeiro 13, 2015 10 anos Autor obrigado primeiro problema resolvido! já o segundo cara ele ta repetindo as frases desse npc aqui : <npc name="Donna" script="data/npc/scripts/info.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="136" head="132" body="79" legs="97" feet="132" addons="3"/> <parameters> <parameter key="message_greet" value="Ola |PLAYERNAME|. Para comprar a promotion diga {!promotion}. Para ver as magias novas diga {!spells}. Para checar o ranking diga {!rank}. Para mudar de sexo diga {!sex}. Para sair dos trainers diga {!sair}. Para ver os status do seu personagem diga {!charinfo}."/> </parameters> </npc> local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 thinkCallback(cid) local rand = math.random(1,100) if rand == 1 then selfSay('Olá Bem-Vindo ao One Finity Server.') -- msg que vai sair do npc end if rand == 2 then selfSay ('Só entendo português, diga oi.') end if rand == 3 then selfSay ('Para saber novos comandos, fale comigo!') end return true end function greetCallback(cid) return true end npcHandler:setCallback(CALLBACK_ONTHINK, thinkCallback) npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:addModule(FocusModule:new())
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.