LE

[Pedido] Action Que Teleporta Monstro

Por Leoxtibia, 12 de fev. de 2012 em Archived

script
6
696
LeoxtibiaL
12 de fevereiro de 2012 às 22:16

Aí, alguém poderia por favor, me mandar um script no qual assim que um certo monstro passasse por cima do item ele fosse teleportado para um certo mas o item nao desaparecesse? Eu quero usar o item "trap" ai quando um certo monstro pisar, ele seja teleportado para o local que veio. Se tiver como agradeço e REP +

 

Informação: Ot 8.60

VodkartV
12 de fevereiro de 2012 às 23:27

pisar não é action... pisar é movements com auxilio da função onStepIn(cid, item, position, fromPosition)

 

vou pedir para minha amiga fazer.

AnneMottaA
12 de fevereiro de 2012 às 23:32

Em, data/movements/scripts crie 1 arquivo telemonster.lua e adicione isso dentro:

 

function onStepIn(cid, item, position, fromPosition)
local pos = { x = 247, y = 74, z = 7 } -- coordenada para aonde o monstro volta
if not isPlayer(cid) then
return doTeleportThing(cid, pos, true)
end
return TRUE
end

 

em data/movements/movements.xml adicione esta linha:

 

<movevent type="StepIn" actionid="78221" event="script" value="telemonster.lua

 

ai você pega e adiciona a actionID 78221 no tile da trap.

LeoxtibiaL
13 de fevereiro de 2012 às 07:45

Vlw pelo script, mas quando eu falei trap eu quis me referir ao item de id 2579 (open trap), assim que o bixo passasse por ele ou poderia ser tambem... assim que o player usasse a trap no monstro, ele fosse teleportado para certo local. mesmo assim vlw =P Rep +

Editado Fevereiro 13 por Leoxtibia

VodkartV
13 de fevereiro de 2012 às 10:17

ah ta entendi...

 

vai em movements/script/trap.lua e substitua por esse:

 

function onStepIn(cid, item, pos)
if(item.itemid == 2579) then
if(not isPlayer(cid)) then
doTargetCombatHealth(0, cid, COMBAT_PHYSICALDAMAGE, -15, -30, CONST_ME_NONE)
doTransformItem(item.uid, item.itemid - 1)
doTeleportThing(cid, { x = 247, y = 74, z = 7 }, true) -- mude e pos
end
else
if(isPlayer(cid)) then
doTargetCombatHealth(0, cid, COMBAT_PHYSICALDAMAGE, -50, -100, CONST_ME_NONE)
doTransformItem(item.uid, item.itemid + 1)
end
end
return true
end

function onStepOut(cid, item, pos)
doTransformItem(item.uid, item.itemid - 1)
return true
end

function onRemoveItem(item, tile, pos)
local thingPos = getThingPos(item.uid)
if(getDistanceBetween(thingPos, pos) > 0) then
doTransformItem(item.uid, item.itemid - 1)
doSendMagicEffect(thingPos, CONST_ME_POFF)
end
return true
end

 

não esquece de mudar a pos...

Editado Fevereiro 13 por Vodkart

LeoxtibiaL
19 de fevereiro de 2012 às 19:04

Cara, so to respondendo agora pq o xtibia tava off.. Vlw mesmo vei c é fera =P Rep + já pelo script.. vou testar jaja