Ir para conteúdo

Featured Replies

Postado

 Preciso de um NPC que leve o player para a ilha que escolher ex :

-Hi

-Olá |NAME| , Posso te levar para a "ilha 1" ou "ilha 2". Qual deseja ir?

-ilha 1

 

Dai a pessoa é teleportada até essa ilha... Help me.


UP


UP

Editado por ArthurRibeiro (veja o histórico de edições)

nq3fr5.png                            30ldox4.jpg

                                                                                                                                                                                          - Projetando sua diversão !

 

 

                                                                             

                                                                                                

 

                                                                                   Steam_Button.png

                                                                                             - Minha Steam, adiciona lá :D

               

Resolvido por nookia

Ir para solução
Postado
  • Solução

Crie um arquivo .xml e só edite o nome do npc que deseja por.

<?xml version="1.0"?>
<npc name="NOME NPC" script="data/npc/scripts/ilha.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="264" head="20" body="39" legs="45" feet="7" addons="0"/>
	<parameters>
                    <parameter key="message_greet" value="Ola |PLAYERNAME| Posso te levar para a {ilha 1} e {ilha 2}, para qual deseja ir?" />
	</parameters>
</npc>

Agora crie um arquivo ilha.lua em npcs/scripts e cole dentro e modifique apenas as coordenadas das ilhas.

local ILHA = {x = XXX, y = XXX, z = X} -- POSIÇÃO DE ILHA
local ILHA2 = {x = XXX, y = XXX, z = X} -- POSIÇÃO DA ILHA2
 
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:lower())   end
function onThink()                  npcHandler:onThink()                  end
local talkState = {}
 
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, "ilha 1") then
         selfSay("How rude!", cid)
         doSendMagicEffect(getThingPos(cid), 10)
         npcHandler:releaseFocus(cid)
         doTeleportThing(cid, ilha)
         doSendMagicEffect(ilha, 10)
      talkState[talkUser] = 0
   end

   if msgcontains(msg, "ilha 2") then
         selfSay("How rude!", cid)
         doSendMagicEffect(getThingPos(cid), 10)
         npcHandler:releaseFocus(cid)
         doTeleportThing(cid, ilha2)
         doSendMagicEffect(ilha2, 10)
      talkState[talkUser] = 0
   end

   return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Agora crie um arquivo.xml e cole dentro e mude o nome do npc:

<?xml version="1.0"?>
<npc name="NOME NPC" script="data/npc/scripts/origem.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="264" head="20" body="39" legs="45" feet="7" addons="0"/>
	<parameters>
                    <parameter key="message_greet" value="Ola |PLAYERNAME| deseja voltar para a cidade origem?" />
	</parameters>
</npc>

Agora crie um arquivo chamado origem.lua na pasta scripts e cole dentro:

local DESTINO = {x = XXX, y = XXX, z = X} -- POSIÇÃO DE DESTINO
 
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:lower())   end
function onThink()                  npcHandler:onThink()                  end
local talkState = {}
 
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, "yes") then
         selfSay("How rude!", cid)
         doSendMagicEffect(getThingPos(cid), 10)
         npcHandler:releaseFocus(cid)
         doTeleportThing(cid, DESTINO)
         doSendMagicEffect(DESTINO, 10)
      talkState[talkUser] = 0
   end

   return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Editado por nookia (veja o histórico de edições)

The medieval RpG Server

espada-barbara.jpg

[RpG] OLDWORLD OPEN TIBIA

Postado
  • Autor

 

Crie um arquivo .xml e só edite o nome do npc que deseja por.

<?xml version="1.0"?>
<npc name="NOME NPC" script="data/npc/scripts/ilha.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="264" head="20" body="39" legs="45" feet="7" addons="0"/>
	<parameters>
                    <parameter key="message_greet" value="Ola |PLAYERNAME| Posso te levar para a {ilha 1} e {ilha 2}, para qual deseja ir?" />
	</parameters>
</npc>

Agora crie um arquivo ilha.lua em npcs/scripts e cole dentro e modifique apenas as coordenadas das ilhas.

local ILHA = {x = XXX, y = XXX, z = X} -- POSIÇÃO DE ILHA
local ILHA2 = {x = XXX, y = XXX, z = X} -- POSIÇÃO DA ILHA2
 
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:lower())   end
function onThink()                  npcHandler:onThink()                  end
local talkState = {}
 
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, "ilha 1") then
         selfSay("How rude!", cid)
         doSendMagicEffect(getThingPos(cid), 10)
         npcHandler:releaseFocus(cid)
         doTeleportThing(cid, ilha)
         doSendMagicEffect(ilha, 10)
      talkState[talkUser] = 0
   end

   if msgcontains(msg, "ilha 2") then
         selfSay("How rude!", cid)
         doSendMagicEffect(getThingPos(cid), 10)
         npcHandler:releaseFocus(cid)
         doTeleportThing(cid, ilha2)
         doSendMagicEffect(ilha2, 10)
      talkState[talkUser] = 0
   end

   return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 Obrigado pela resposta amigo :) Quando estiver no pc vou testar e te dar o seu +REP.

 

Como faz para o player após ir para a ilha voltar para a sua cidade de origem? Obrigado.

Editado por ArthurRibeiro (veja o histórico de edições)

nq3fr5.png                            30ldox4.jpg

                                                                                                                                                                                          - Projetando sua diversão !

 

 

                                                                             

                                                                                                

 

                                                                                   Steam_Button.png

                                                                                             - Minha Steam, adiciona lá :D

               
Postado
  • Autor

Modifique o post lá encima com outro npc para voltar a cidade de origem.

Thanks +REP

nq3fr5.png                            30ldox4.jpg

                                                                                                                                                                                          - Projetando sua diversão !

 

 

                                                                             

                                                                                                

 

                                                                                   Steam_Button.png

                                                                                             - Minha Steam, adiciona lá :D

               

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo