DE
moveevent

[Moveevent] Tile Para Templo

Por Demonbholder, 11 de fev. de 2011 em Actions e Talkactions

otserv
tibia
script
15
4.3k
11 de fevereiro de 2011 às 00:41

Olá galera do XTibia, tava sem nada para fazer, então resolvi criar um movement bobo. É o seguinte, você fica em cima do tile, e enquanto você tiver em cima dele, sua vida irá ser curada em 10, a cada segundo que passar (configurável).

 

Pronto! Editado, e funcionando perfeitamente em um script só, segue o script:

 

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

 

setPlayerStorageValue(cid, 90111, 1)

doHealPlayer(cid)

end

 

function doHealPlayer(cid)

local delay = 1 -- de quanto em quanto tempo irá adicionar (no caso, 1 segundo)

 

if getPlayerStorageValue(cid, 90111) == 1 then

doCreatureAddHealth(cid, 10)

addEvent(doHealPlayer, delay*1000, cid)

end

return TRUE

end

 

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

 

setPlayerStorageValue(cid, 90111, -1)

end

 

Se quiserem que o jogador só possa usar 1 vez ao dia, use este:

 

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

local tempo = 3600*24 -- no caso, um dia

 

if getPlayerStorageValue(cid, 90112) - os.time() < 1 then

setPlayerStorageValue(cid, 90111, 1)

doHealPlayer(cid)

setPlayerStorageValue(cid, 90112, (tempo + os.time()))

end

end

 

function doHealPlayer(cid)

local delay = 1 -- de quanto em quanto tempo irá adicionar (no caso, 1 segundo)

 

if getPlayerStorageValue(cid, 90111) == 1 then

doCreatureAddHealth(cid, 10)

addEvent(doHealPlayer, delay*1000, cid)

end

return TRUE

end

 

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

 

setPlayerStorageValue(cid, 90111, -1)

end

 

Em movements.xml, as tags ficam assim:

 

<movevent type="StepIn" uniqueid="UNIQUEID" event="script" value="NOMEdoARQUIVO.lua"/>

<movevent type="StepOut" uniqueid="UNIQUEID" event="script" value="NOMEdoARQUIVO.lua"/>

 

Explicação Final (bônus):

Se desejar configurar a vida (em qualquer um dos dois scripts) a ser adicionada para que adicione uma porcentagem da vida máxima do jogador, faça o seguinte:

No lugar de:

doCreatureAddHealth(cid, 10) -- vida a ser adicionada

Use:

doCreatureAddHealth(cid, getCreatureMaxHealth(cid) * 1/10) -- vida a ser adicionada

 

Nesse caso, "1/10" é editavel, para edita-lo siga isso:

 

1/10 = 10%
2/10 = 20%
3/10 = 30%
4/10 = 40%
5/10 = 50%
6/10 = 60%
7/10 = 70%
8/10 = 80%
9/10 = 90%
1 = 100%

 

Acho que é isso, espero que gostem. Até.

Editado Fevereiro 13 por Demonbholder

TonynhT
11 de fevereiro de 2011 às 01:06

Bacana! =p

Acabei de ter uma idéia de mapping que poderia ser perfeito com esse script ^^

REP+

11 de fevereiro de 2011 às 11:57

Valeu cara, espero que mais pessoas usem e gostem. Script editado, pois eu estava testando e tava dando erro, mas agora já ta funcionando perfeitamente. Claro, depois de editar 30 vezes o tópico tinha que ta funcionando perfeitamente mesmo.

Editado Fevereiro 11 por Demonbholder

SubwatS
11 de fevereiro de 2011 às 14:05

legal,vou usar :)

11 de fevereiro de 2011 às 16:34

Valeu velho, tive um certo trabalho pra consertar o script, mas ta valendo a pena.

1 mês depois...
claudiomirC
03 de março de 2011 às 01:21

SHOWWW CARA MAS DEIXA EU VER SE EU ENTENDI DIREITO.

enquanto estiver em cima deste xao sua vida vai subir de 10 a cada segundos?

03 de março de 2011 às 12:53

Isso ae parceiro, e você ainda pode escolher se o jogador usa uma vez ao dia, ou pode usar quantas vezes quiser.

2 semanas depois...
refiR
15 de março de 2011 às 15:54

Legal :wink_smile:

Usado e Aprovado :positive:

stalker95S
18 de março de 2011 às 16:08

é

1 mês depois...
priextix666P
08 de abril de 2011 às 09:50

testarei... :D máas pareçe muito bom, eu sempre quis um action assim pra por no meu ot, tenho umas idéias massa pra utilizar este script valeuzãao brother ;D!!

1 ano depois...
DangeerD
12 de setembro de 2012 às 10:52

Muito bom cara,meu rep +

 

porco.gif

NewtonnotwenN
12 de setembro de 2012 às 11:10

Reportado por flood (esse tópico tem mais de 30 dias) e avatar ilegal.

Rafael098R
15 de setembro de 2012 às 16:11

Vlw pelo Script Coloquei no meu server funciono tudo certinho...rules.gif

10 meses depois...
nazesariaN
18 de julho de 2013 às 14:26

Olá eu vi que parese que você ainda está ativo no xtibia e gostaria de pergunta como Fasso para colocar mana também para heal?

xaverlockX
24 de julho de 2013 às 00:07

onde eu coloco o x ,y,z do lugar que quero que recupere a vida?