MR

Teleport Com Destino Randomico

Por mrsliim, 28 de jul. de 2008 em Actions e Talkactions

otserv
tibia
script
6
2.1k
mrsliimM
28 de julho de 2008 às 15:50

Olá XTibianos!

Vim aqui para apresentar minha ultima Criaçao: O Teleport Com Destino Randomico.

O Que é um Teleport Com destino Randomico??

Seria assim:

Um teleport com 2 ou mais destinos Pré-definidos, onde atravez de um "sorteio" na hora que o Player vai "pisar" no teleport, ele pode ir para qualquer destino escolhido por vc.

 

Vamos Começar.

Abra a pasta Data/Movements/movements.xml e adicione essa linha:

 

<!-- Random TP -->

<movevent event="StepIn" actionid="5869" script="randomtp.lua" />

 

agora em Data/Movements/Scripts Copie um arquivo qualquer (extençao .lua) com o nome de randomtp.lua e apague tudo o que tem dentro, trocando por isso:

 

function onStepIn(cid, item, pos)

 

teleport1 = {x=399, y=458, z=7}

teleport2 = {x=401, y=458, z=7}

teleport3 = {x=403, y=458, z=7}

 

if isPlayer(cid) then

 

if item.actionid == 5869 then

 

dano = math.random(1,12)

 

if dano == 1 then

doTeleportThing(cid,teleport1)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 2 then

doTeleportThing(cid,teleport2)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 3 then

doTeleportThing(cid,teleport3)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 4 then

doTeleportThing(cid,teleport3)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 5 then

doTeleportThing(cid,teleport2)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 6 then

doTeleportThing(cid,teleport1)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 7 then

doTeleportThing(cid,teleport1)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 8 then

doTeleportThing(cid,teleport2)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 9 then

doTeleportThing(cid,teleport3)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 10 then

doTeleportThing(cid,teleport3)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 11 then

doTeleportThing(cid,teleport2)

doSendMagicEffect(getPlayerPosition(cid), 10)

elseif dano == 12 then

doTeleportThing(cid,teleport1)

doSendMagicEffect(getPlayerPosition(cid), 10)

end

end

return 0

end

return 1

end

Somente Troque As Coordenadas de Teleport1, Teleport2 e Teleport3 para o destino desejado.

 

Agora em seu Map Editor, adicione na area desejada um teleport, e no Tile abaixo dele Coloque o ID 5869. salve e reinicie seu servidor.

 

CREDITOS: 100% SLIIM -- NAO SEJA SANGUE-SUGA, SE FOR USAR COMENTE!

 

Screen Shots:

randomtptr5.png

 

randomtp2tm1.png

 

randomtp3ae2.png

satranlolS
28 de julho de 2008 às 16:19

Bem elaborado, gostei!

ryandometalR
28 de julho de 2008 às 23:05

Cara, que ótima idéia.. o.O

Nunca tinha pensado nisso, vou usar no meu server :D

Parabéns pelo tópico :)

 

Abraços,

Ryan.

29 de julho de 2008 às 01:35

mi passa seo msn ai ce for possivel presizo de um ajudinha sua nu meo serv

furiavrF
29 de julho de 2008 às 12:22

Nossa muito bom, nunca vi nenhum ot com isso, vou colokar no meu, vlww ae!

2 meses depois...
lucasjockeyL
01 de setembro de 2008 às 13:46

if... if... if... if... if... if... if...!

1000 ifs... que tal juntar isso:

 

Operator precedence in Lua follows the table below, from lower to higher priority:

 

or

and

< > <= >= ~= ==

..

+ -

* / %

not # - (unary)

^

 

or = ou

 

if dano == 1 or dano == 6 or dano == 7 or dano == 12 then
doTeleportThing(cid,teleport1)
doSendMagicEffect(getPlayerPosition(cid), 10)