Revive Monster

caotic
Por caotic
em Globalevents e Spells

caotic

Afinal de contas,sou um mordomo e tanto
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 04/03/11Posts: 1599Char no Tibia: No Have

Hoje venho trazer um script bem simples para vocês.

Eu fiz um script para um amigo e resolvi postar no xtibia para meus queridos xtibianos.

E bem simples o script quando a criatura morre ela transforma em outra com a vida full dando um efeito de área bem bonito.

 

E simplesinho mais e funcional e útil.

 

 

Vá em creaturescripts e crie um arquivo lua chamado monster.

 

 
function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local area = 18 ------- A area que o efeito vai alcançar----
local effect = 23 --- Id do efeito de área para deixar mais bonito escolha um vibrante e colorido--------
local creature = "Demon" -- Monstro que revive ---
function doSendDistanceEffectAround(cid, position, AreaNumber, type)  
local numberInArea = tonumber(AreaNumber)
local distance0 = {x=position.x, y=position.y-numberInArea, z=position.z}
local distance1 = {x=position.x+numberInArea, y=position.y, z=position.z}
local distance2 = {x=position.x, y=position.y+numberInArea, z=position.z}
local distance3 = {x=position.x-numberInArea, y=position.y, z=position.z}
return doSendDistanceShoot(position, distance0, type) and doSendDistanceShoot(position, distance1, type) and doSendDistanceShoot(position, distance2, type) and doSendDistanceShoot(position, distance3, type)
end

doSendDistanceEffectAround(cid, getCreaturePosition(cid), area, effect)
doCreateMonster(creature, getCreaturePosition(cid))
return doRemoveCreature(cid)
end

 

Coloque esta tag em creaturescripts.xml

 

<event type="preparedeath" name= "revive" event="script" value="monster.lua"/>

 

Registre no xml do monstro que vai se transformar colocando antes do <monster>.

 

 

<script>
<event name="revive"/>
</script>

1579091

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 06/11/11Posts: 1088Char no Tibia: Stroked

Tem como por tipo, com uma chanse de nascer? por exempplo 50 50..

caotic

Afinal de contas,sou um mordomo e tanto
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 04/03/11Posts: 1599Char no Tibia: No Have

Tem como por tipo, com uma chanse de nascer? por exempplo 50 50..

 

Assim?

function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local area = 18 ------- A area que o efeito vai alcançar----
local effect = 23 --- Id do efeito de área para deixar mais bonito escolha um vibrante e colorido--------
local creature = "Demon" -- Monstro que revive ---
local chance = 4 --- Chance de 1 uma ou seja se você por 10 existe 10% de sair o monstro-----
function doSendDistanceEffectAround(cid, position, AreaNumber, type)
local numberInArea = tonumber(AreaNumber)
local distance0 = {x=position.x, y=position.y-numberInArea, z=position.z}
local distance1 = {x=position.x+numberInArea, y=position.y, z=position.z}
local distance2 = {x=position.x, y=position.y+numberInArea, z=position.z}
local distance3 = {x=position.x-numberInArea, y=position.y, z=position.z}
return doSendDistanceShoot(position, distance0, type) and doSendDistanceShoot(position, distance1, type) and doSendDistanceShoot(position, distance2, type) and doSendDistanceShoot(position, distance3, type)
end
ran = math.random(1, chance)
if ran == 1 then
doSendDistanceEffectAround(cid, getCreaturePosition(cid), area, effect)
doCreateMonster(creature, getCreaturePosition(cid))
end
return doRemoveCreature(cid)
end

xundazinho

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 11/10/12Posts: 16Char no Tibia: Não Tenho Mais

Gostei, da para fazer umas coisas bem legais +REP!

Skymagnum

Hamburguer
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 02/08/12Posts: 1025Char no Tibia: Maurolkit

Script legal mais dava pra diminuir a função e também porquê usar cid?

 

function doSendDistanceEffectAround(CID, position,AreaNumber, type)

jeoz.png