Ir para conteúdo
  • 0

[Duvida] Como Se Teleportar Ao Clicar Em Um Item


Cadu77

Pergunta

Primeiramente, sou novato não entendo muito bem essas coisas de topico então sintam-se livres para falar que está em topico errado , que já possui um topico semelhante,mover, fecha-lo,etc .

 

Por Favor Ajudem

Estou em um projeto mais um amigo e ja estamos na parte da finalização do mapa, e desejamos criar uma area donate, eu estava começando a ter ideias quando lembrei de um OT que ja joguei a muito tempo.

 

Seguinte, lá pagavamos por pontos, compravamos um Item e quando ele chegava simplismente clicava-mos e eramos teleportados para um lugar distante onde estava um NPC Promote. Ao conversar com o NPC e se promover, iamos para a area donate do OT.

 

Gostaria de saber, como poderia faser essas coisas de clicar no item e ser teleportado e tambem como faser com que ao ser promovido ser teleportado .

 

Desde já Agradeço

Editado por Cadu77
Link para o comentário
Compartilhar em outros sites

13 respostass a esta questão

Posts Recomendados

  • 0

coloca o script do npc.

 

# precisa de lvl para usar o teleport?

# vai custar alguma coisa ?

 

dê mais informações.

Editado por MaatheeuusYuurii
Link para o comentário
Compartilhar em outros sites

  • 0

pronto aki esta

 

em data / action / scripts / renomeie algum arquivo para tele

 

e adicione isto la

 

function onUse(cid, item, frompos, item2, topos)
pos = {x=547, y=332, z=7} -- Pos para onde sera teleportado
doTeleportThing(cid,pos)
doPlayerSendTextMessage(cid, 22, "Fale com o npc para ser promovido")
return true
end

 

dps em actions.xml

 

<action itemid="ID DO ITEM QUE VAI DAR USE " script="tele.lua"/>

 

o do npc tentarei criar

 

se puder rep +

Link para o comentário
Compartilhar em outros sites

  • 0

vai em data/npc crie 1 arquivo promotion.xml e cole isso.


<?xml version="1.0" encoding="UTF-8"?>
<npc name="Johnny" script="data/npc/scripts/promotion.lua" walkinterval="2000" floorchange="0">
<mana now="800" max="800"/>
<health now="200" max="200"/>
<look type="133" head="114" body="119" legs="132" feet="114"/>
</npc>

 

agora em data/npc/script crie 1 arquivo com nome promotion.lua e cole isso.


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

local node1 = keywordHandler:addKeyword({'promot'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can promote you for 20000 gold coins. Do you want me to promote you?'})
node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 20, promotion = 1, text = 'Congratulations! You are now promoted.'})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

npcHandler:addModule(FocusModule:new())

 

NPC QUE TELEPORTA POR ITENS

 

 

Va em npc/scripts e crie um arquivo itemtravel.lua e bote isto dentro:

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}

local pos = {x=152,y=58,z=7} -------------- Pos para onde o player sera levado
local itemid = 2468 ----------------- Id do item que vai ser removido do player

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, "offer") or msgcontains(msg, "help") then
       selfSay("Eu posso te levar a TAL lugar por um "..getItemNameById(itemid).." item, fale {travel} se quizer viajar.", cid)
       talkState[cid] = 0
   elseif msgcontains(msg, 'travel') then
      if doPlayerRemoveItem(cid, itemid, 1) then
       selfSay("Boa viagem.", cid)
    doTeleportThing(cid, pos)
    else
    selfSay("Voce nao tem o item nescessario.", cid)
    end
    end
    return TRUE   
    end


npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

epois crie um arquivo NOMEDONPC.lua e bote isto dentro:

<npc name="NOMEDONPC" script="data/npc/scripts/itemtravel.lua" walkinterval="2000" floorchange="0">
   <health now="100" max="100"/>
   <look type="134" head="78" body="88" legs="0" feet="88" addons="3"/>
       <parameters>
               <parameter key="message_greet" value="Ola. Para mais informacoes de meus servicos diga {offer}." />
               <parameter key="message_farewell" value="Tchau." />
               <parameter key="message_walkaway" value="Tchau." />
       </parameters>
</npc>

Link para o comentário
Compartilhar em outros sites

  • 0

@Tchubaka

 

Valew cara, mas seguinte gostaria de saber uma coisa, quando eu usar o item ele ira sumir ? Se não sumir tem como me diser como faço pra ele sumir ?

 

Desde já agradeço .

 

+Rep

Editado por Cadu77
Link para o comentário
Compartilhar em outros sites

  • 0

function onUse(cid, item, frompos, item2, topos)
pos = {x=547, y=332, z=7} -- Pos para onde sera teleportado
doTeleportThing(cid,pos)
doRemoveItem(item.uid,1)
doPlayerSendTextMessage(cid, 22, "Fale com o npc para ser promovido")
return true
end

 

pronto agora esta removendo

cadu

Editado por SkyLigh
Link para o comentário
Compartilhar em outros sites

  • 0

@Tchubaka

 

Valew cara, mas seguinte gostaria de saber uma coisa, quando eu usar o item ele ira sumir ? Se não sumir tem como me diser como faço pra ele sumir ?

 

Desde já agradeço .

como eu disse que ja removeria. axei que estaria sanada a duvida ;x desculpe.

Editado por Tchubaka
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...