SK
pedido

Spell teleporter

Por SkyDarkyes, 25 de ago. de 2013 em Scripts

resolvido
6
967
25 de agosto de 2013 às 16:47

Tenho essa magia:ela funciona assim,o player usa a magia e aparece um tp debaixo dele,quem entrar no tp,vai para uma sala,ele fica la por 10segs,ai dps dos la 10segs,é liberado um tp para sair.

Gostaria que funcionasse em target,eu uso a magia no target e manda o target para la,

local teleportar_para = {x = 1244, y = 731, z = 6}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 10)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
function removeTeleport(pos)
tp = getTileItemById(pos, 1387).uid
doRemoveItem(tp, 1)
doSendMagicEffect(pos, 2)
end
function x(p, d)
local t = {{x=p.x,y=p.y-1,z=p.z},{x=p.x+1,y=p.y,z=p.z},{x=p.x,y=p.y+1,z=p.z},{x=p.x-1,y=p.y,z=p.z}}
return t[d+1]
end
function onCastSpell(cid, var)
if getPlayerStorageValue(cid, 5677) == 1 then
doPlayerSendCancel(cid, "Você não pode usar tal magia aqui")
return false
end
local pos = getCreaturePosition(cid)
local criar_tp = pos
doCreateTeleport(1387, teleportar_para, criar_tp)
local tp = getTileItemById(criar_tp, 1387).uid
doItemSetAttribute(tp, "aid", 5678)
--doTeleportThing(cid, teleportar_para, true) --Tira essa linha se nao for teleportar o player q usou a magia automaticamente.
for i = 1, 5 do
addEvent(doSendMagicEffect, i*1000, criar_tp, 3)
end
addEvent(removeTeleport, 5000, criar_tp)
return doCombat(cid, combat, var)
end

Editado Agosto 25 por SkyDarkyes

Session StartS
25 de agosto de 2013 às 20:17

 

local teleportar_nulo = {x = 0, y = 0, z = 0}
local teleportar_para = {x = 1244, y = 731, z = 6}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 10)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
 
local function teleport(cid, pid, pos, pos2)
if isPlayer(cid) then
doTeleportThing(cid, getClosestFreeTile(cid, pos))
doSendMagicEffect(getPlayerPosition(cid), 30)
end
if isPlayer(pid) then
doTeleportThing(pid, getClosestFreeTile(pid, pos2 or pos))
doSendMagicEffect(getPlayerPosition(pid), 75)
end
end
 
function onCastSpell(cid, var)
if getPlayerStorageValue(cid, 5677) == 1 then
doPlayerSendCancel(cid, "Você não pode usar tal magia aqui")
return false
end
local target = getCreatureTarget(cid)
teleport(cid, target, teleportar_nulo, teleportar_para)
return doCombat(cid, combat, var)
end
25 de agosto de 2013 às 20:25

Num da erro nada apenas nao funfa

Session StartS
25 de agosto de 2013 às 20:37

Você está atacando player? se tentar usar com o god nao vai pegar...

 

 

e outra

 

local teleportar_nulo = {x = 0, y = 0, z = 0} NAO MECHE AQUI
local teleportar_para = {x = 1244, y = 731, z = 6} --- precisa conter uma pos VALIDA
Aqui pego ;x

Editado Agosto 25 por Cleberadm

25 de agosto de 2013 às 20:41

Cleber vlw fiz errado um bagui aki

RoksasR
25 de agosto de 2013 às 21:22

Tópico movido para a seção de dúvidas e pedidos resolvidos.