Ir para conteúdo
  • 0

Script básico passar por cima de objeto e ser teleportado


Pergunta

Sei que não tem haver com a área mas não achei outro modo de postar.
Preciso de um action que quando passa por cima de um portalzonho de choque que existe com ID 11759, ele te teleporta pra algum lugar. Esse lugar eu posso determinar. Coloquei action ID 5885 nele.

É simples e básico, alguém poderia me ajudar?

Link para o comentário
https://xtibia.com/forum/topic/236556-script-b%C3%A1sico-passar-por-cima-de-objeto-e-ser-teleportado/
Compartilhar em outros sites

15 respostass a esta questão

Posts Recomendados

  • 0
function onStepIn(cid, item, position, lastPosition, fromPosition)

local pos = {x=129, y=54, z=6}  -- pos


if doTeleportThing(cid, pos) then
doPlayerSendTextMessage(cid, 22, "Você foi teleportado!")
end
return true
end

moveevents.xml

        <movevent type="StepIn" uniqueid="1234" event="script" value="ARQUIVO.lua"/>

utilize uniqueid

  • 0

Crie um arquivo chamado itemtp.lua

local pos = {x=33077, y=31219, z=8} -- Posição para onde sera teleportado

function onStepIn(cid, item, pos)
    doTeleportThing(cid, pos)
    doPlayerSendTextMessage(cid, 27, "Você foi teleportado!")
  return true
end

e também

<movevent type="StepIn" actionid="5885" event="script" value="itemtp.lua"/>
  • 0

Comecei a mexer com script agora, e é fácil entender tudo. Meu pensamento foi praticamente igualzinho o seu.
Mas não funcionou, ele chega a mandar a mensagem mas não teleporta.

  • 0
function onStepIn(cid, item, position, lastPosition, fromPosition)

local pos = {x=129, y=54, z=6}  -- pos


if doTeleportThing(cid, pos) then
doPlayerSendTextMessage(cid, 22, "Você foi teleportado!")
end
return true
end

moveevents.xml

        <movevent type="StepIn" uniqueid="1234" event="script" value="ARQUIVO.lua"/>

utilize uniqueid

 

 

Obrigado por lembrar do uniqueid kkkkkk <3

  • 0

Movido para resolvidos


Tópico Movido
Este tópico foi movido de "OTServSuporteSuporte Scripting"
para "OTServSuporteSuporte ScriptingPedidos e dúvidas resolvidos - Scripting".

 

 

  • 0

Creio eu que não seja necessária a checagem com o "if" simplificando bem pouco do script, mas simplificando

 

 

function onStepIn(cid, item, position, lastPosition, fromPosition)

local pos = {x=129, y=54, z=6} -- pos


doTeleportThing(cid, pos)
doPlayerSendTextMessage(cid, 22, "Você foi teleportado!")
end
return true
end

 

 

Mas ja ta ótimo ne xD

  • 0

Creio eu que não seja necessária a checagem com o "if" simplificando bem pouco do script, mas simplificando

function onStepIn(cid, item, position, lastPosition, fromPosition)

local pos = {x=129, y=54, z=6} -- pos


doTeleportThing(cid, pos)
doPlayerSendTextMessage(cid, 22, "Você foi teleportado!")
end
return true
end

Mas ja ta ótimo ne xD

 

é somente um Script básico de teleport field.. rsrsr

  • 0

 

é somente um Script básico de teleport field.. rsrsr

 

 

uahsuas, tipo, to iniciando agora em LUA, tipo, AGORA MESMO.

 

 

funcionaria ne?

  • 0

 

 

uahsuas, tipo, to iniciando agora em LUA, tipo, AGORA MESMO.

 

 

funcionaria ne?

 

Não porque voce colocou um end sem iniciar um IF rsrsr

  • 0

 

Não porque voce colocou um end sem iniciar um IF rsrsr

 

 

 

Poha.. vdd uashausas, esqueci do end.... vlw, então iria funcionar sem esse end ne?

  • 0

Creio eu que não seja necessária a checagem com o "if" simplificando bem pouco do script, mas simplificando

function onStepIn(cid, item, position, lastPosition, fromPosition)

local pos = {x=129, y=54, z=6} -- pos


doTeleportThing(cid, pos)
doPlayerSendTextMessage(cid, 22, "Você foi teleportado!")
end
return true
end

Mas ja ta ótimo ne xD

Neste caso é sim... porque pode ocorrer algum erro de não teleportar ele e ficar mandando a msg no tempo sem ter teleportado.

  • 0

Eh bem raro dar esse tipo de erro ne?

Pode ser que você configure uma pos inexistente... ai manda a msg pro player sem teleportar ele... por isso tem que passar na checagem do if...

if doTeleportThing(cid, pos) then
doPlayerSendTextMessage(cid, "teleportou".)
end

se Teleportar o jogador para a posição então
envie a mensagem "teleportou"
fim
×
×
  • Criar Novo...