Postado Março 1, 2015 10 anos Bom Botei donate em meu otserv Mas queria Por Tipo 1 Npc Que Quando A pessoa fala-se Hi o Npc Diria Ola Senhor Gostaria de Comprar 1 item Donate? Diga Deposito Para Saber Os Dados Bancarios Para Deposito Ai quando a pessoa fala-se Deposito Iria apareçer o Banco Etc.. Do titular Alguem poderia Ajudar ? Darei 5 Rep + Pela Resposta Util
Postado Março 1, 2015 10 anos Solução Bom, achei aqui no TK um script, só fiz edita-lo para que ao falar "deposito", ele dirá a msg que está contida no script. No entanto, ele manda a mensagem em forma de Creaturesay, ou seja. É como se o npc estivesse falando, e em certo tempo a mensagem some, impossibilitando as vezes, de ser lida completamente. Caso queira o script, segue abaixo Crie um arquivo .xml na pasta data/npc e coloque: <?xml version="1.0" encoding="UTF-8"?> <npc name="Informador" script="information.lua" walkinterval="350000" floorchange="0" speed="0"> <health now="150" max="150"/> <look type="606" head="91" body="114" legs="86" feet="0"/> <parameters> <parameter key="message_greet" value="Ola. Gostaria de Comprar 1 item Donate? Diga 'deposito' Para Saber Os Dados Bancarios Para Deposito."/> <parameter key="message_farewell" value="Good bye!"/> <parameter key="message_idletimeout" value="Good bye!"/> <parameter key="message_walkaway" value="Good bye!"/> </parameters> </npc> Agora em data/npc/scripts crie um arquivo .lua e renomie para information.lua e dentro coloque: local text = { deposito = 'Digite aqui o dados que deseja', -- escreva o texto } local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) npcHandler.topic = {} 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 if msgcontains(msg:lower(), 'deposito') then npcHandler:say(text.deposito, cid) npcHandler.topic[cid] = 0 elseif msgcontains(msg:lower(), 'bye') or msgcontains(msg:lower(), 'ok') then npcHandler:say('Bye!', cid) npcHandler.topic[cid] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Agora, tenho um script que faz a mesma coisa, só que por talkaction(comando). Basicamente, ao digitar um comando(/deposito), abre uma janela com as informações que você desejar. Acho mais eficaz que o sistema por npc, pois como eu disse, depois de um certo tempo a mensagem some, impossibilitando as vezes de ser lida completamente. Caso queira o script, segue abaixo Crie um arquivo em data/talkaction/scripts com o nome infodeposito.lua e coloque dentro: function onSay(cid, words) local msg = [[ -----Dados para Deposito----- Digite os dados Dentro desse espaço entre o local msg e o colchete fechando \/ ]] doPlayerPopupFYI(cid, msg) return true end Agora, vá no arquivo talkactions.xml e adicione esta tag <talkaction words="/deposito" event="script" value="infodeposito.lua"/> Pronto, ai é só digitar o comando /deposito que abrirá uma janela com as informações que você colocar no script Créditos a fywell pelo script do npc Créditos a mim pelo script do talkaction Rep+ Editado Março 1, 2015 10 anos por FelipeWikky (veja o histórico de edições)
Postado Março 1, 2015 10 anos infodonates.lua local info = [[As informações de deposito : Banco do Brasil Nome : Flavio Agência : 6576-5 Conta : 9.751-9 ]] 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:lower(), "deposito") or msgcontains(msg:lower(), "deposit") then selfSay(cid, info) elseif msgcontains(msg:lower(), "bye") or msgcontains(msg:lower(), "tchau") then selfSay(cid, "Volte sempre!!") end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) npc.XML <?xml version="1.0" encoding="UTF-8"?> <npc name="QUALQUERNAME" script="data/npc/scripts/infodonates.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="152" head="95" body="95" legs="29" feet="56" addons="2" corpse="6080"/> <parameters> <parameter key="message_greet" value="Ola senhor gostaria de comprar items donate? diga {deposito} para saber os dados bancarios para o {deposito}." /> </parameters> </npc> Editado Março 1, 2015 10 anos por Summ (veja o histórico de edições)
Postado Março 1, 2015 10 anos Autor Nao tem npc.xml na minha pasta Bom, achei aqui no TK um script, só fiz edita-lo para que ao falar "deposito", ele dirá a msg que está contida no script. No entanto, ele manda a mensagem em forma de Creaturesay, ou seja. É como se o npc estivesse falando, e em certo tempo a mensagem some, impossibilitando as vezes, de ser lida completamente. Caso queira o script, segue abaixo Crie um arquivo .xml na pasta data/npc e coloque: <?xml version="1.0" encoding="UTF-8"?> <npc name="Informador" script="information.lua" walkinterval="350000" floorchange="0" speed="0"> <health now="150" max="150"/> <look type="606" head="91" body="114" legs="86" feet="0"/> <parameters> <parameter key="message_greet" value="Ola. Gostaria de Comprar 1 item Donate? Diga 'deposito' Para Saber Os Dados Bancarios Para Deposito."/> <parameter key="message_farewell" value="Good bye!"/> <parameter key="message_idletimeout" value="Good bye!"/> <parameter key="message_walkaway" value="Good bye!"/> </parameters> </npc> Agora em data/npc/scripts crie um arquivo .lua e renomie para information.lua e dentro coloque: local text = { deposito = 'Digite aqui o dados que deseja', -- escreva o texto } local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) npcHandler.topic = {} 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 if msgcontains(msg:lower(), 'deposito') then npcHandler:say(text.deposito, cid) npcHandler.topic[cid] = 0 elseif msgcontains(msg:lower(), 'bye') or msgcontains(msg:lower(), 'ok') then npcHandler:say('Bye!', cid) npcHandler.topic[cid] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Agora, tenho um script que faz a mesma coisa, só que por talkaction(comando). Basicamente, ao digitar um comando(/deposito), abre uma janela com as informações que você desejar. Acho mais eficaz que o sistema por npc, pois como eu disse, depois de um certo tempo a mensagem some, impossibilitando as vezes de ser lida completamente. Caso queira o script, segue abaixo Crie um arquivo em data/talkaction/scripts com o nome infodeposito.lua e coloque dentro: function onSay(cid, words) local msg = [[ -----Dados para Deposito----- Digite os dados Dentro desse espaço entre o local msg e o colchete fechando \/ ]] doPlayerPopupFYI(cid, msg) return true end Agora, vá no arquivo talkactions.xml e adicione esta tag <talkaction words="/deposito" event="script" value="infodeposito.lua"/> Pronto, ai é só digitar o comando /deposito que abrirá uma janela com as informações que você colocar no script Créditos a fywell pelo script do npc Créditos a mim pelo script do talkaction Rep+ Vou testar aki 1 minuto
Postado Março 1, 2015 10 anos Nao existe a npc.xml, você tem que criar um arquivo com a extensão .xml, e edite o nome do arquivo para Information.xml e continue seguindo o script que funcionará certinho
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.