Ir para conteúdo
  • 0

Piso que Teleporta 1 paso a frente


koete

Pergunta

Pow eu tava tentando fazer com que um piso sempre teleporta o player 1 paso a frente

não importa onde ele esteja se ele passar por cima do item ele vai teleportar sempre 1 a frente.

 

Ex: vamo supor que tem uma sword na minha frente se eu passar por cima dela vou teleportar um paso a frente contando sempre pra onde eu to virado

se eu passar em cima do item virado pra cima ele me teleporta 1 paso ao norte

se passar por ele indo sentido sul teleporta 1 paso ao sul...

 

é possível isso?

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Vá em data/movements/scripts, crie um arquivo chamado tileup.lua e adicione isso dentro:

 

 

function onStepIn(cid, item, pos)

local pid = cid

local n = tonumber(t[1])

if(not n) then

n = 1

end

 

local pos = getClosestFreeTile(pid, getPosByDir(getCreaturePosition(pid), getCreatureLookDirection(pid), n), false, false)

if(not pos or isInArray({pos.x, pos.y}, 0)) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Destination not reachable.")

return true

end

 

local tmp = getCreaturePosition(pid)

if(doTeleportThing(pid, pos, true) and not isPlayerGhost(pid)) then

doSendMagicEffect(tmp, CONST_ME_POFF)

doSendMagicEffect(pos, CONST_ME_TELEPORT)

end

 

return true

end

 

 

 

Agora vá em data/movements, abra o arquivo movements.xml com o bloco de notas e adicione essa tag em qualquer lugar:

OBS: (SE EXISTIR APENAS UM UNICO PISO NO MAPA, QUE TELEPORTE 1 PASSO A FRENTE USE ESSE:

 

<movevent type="StepIn" uniqueid="9979" event="script" value="tileup.lua"/>

 

AGORA, EXEMPLO, SE TODOS PISOS COM ID 108, FIZESSE O TELEPORT 1 PASSO A FRENTE, USASSE ESSE

 

<movevent type="StepIn" itemid="108" event="script" value="trap.lua"/>

 

Aonde está 108 coloque o ID do Piso :)) boa sorte

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...