Ir para conteúdo
  • 0

Ajuda Script Spell Que Puxa o Target


Tiagone

Pergunta

Posts Recomendados

  • 0

function onCastSpell(cid, var)

 

local target = getCreatureTarget(cid)

 

if(target > 0 then)

doTeleportThing(target, getThingPos(cid))

end

 

return true

end

 

Teria como fazer uma que o player troca-se de lugar com o target?

Link para o comentário
Compartilhar em outros sites

  • 0

function onCastSpell(cid, var)

 

local target = getCreatureTarget(cid)

local tPos = {x = getThingPos(target).x, y = getThingPos(target).y, z = getThingPos(target).z}

 

if(target > 0) then

doTeleportThing(target, getThingPos(cid))

doTeleportThing(cid, tPos)

end

 

return true

end

Editado por Skymagnum
Link para o comentário
Compartilhar em outros sites

  • 0

cara aki deu erro :C tem como ajuda?

function onCastSpell(cid, var)

 

local target = getCreatureTarget(cid)

 

if(target > 0 then)

doTeleportThing(target, getThingPos(cid))

end

 

return true

end

Editado por Tiagone
Link para o comentário
Compartilhar em outros sites

  • 0

Funfou Certinho Podem Fecha o Topico e Rep+ pra tu Sky tem como ajuda em otra magia que , Atinge Direto No Mana?

Editado por Tiagone
Link para o comentário
Compartilhar em outros sites

  • 0

function onCastSpell(cid, var)

 

local target = getCreatureTarget(cid)

local tPos = {x = getThingPos(target).x, y = getThingPos(target).y, z = getThingPos(target).z}

 

if(target > 0) then

doTeleportThing(target, getThingPos(cid))

doTeleportThing(cid, tPos)

end

 

return true

end

 

MAN merece 3 reps :D

Mas tem como qnd trocar o player ficar com 10% de life e 10% de mana? Pq se n fica mt roubado só gastar mana pra trocar de lugar da pra trapar os outros fazer varias coisas :S (add aqui nos favoritos amanha te do teus reps)

 

EDIT:

Usei varias vezes e crashou o servidor =(

apareceu esses erros

 

 

[Error - Spell Interface]

data/spells/scripts/changeposition.lua:onCastSpell

Description:

<luaGetThingPosition> Thing not found

 

[Error - Spell Interface]

data/spells/scripts/changeposition.lua:onCastSpell

data/spells/scripts/changeposition.lua:4: attempt to index a boolean value

stack traceback

data/spells/scripts/changeposition.lua:4: in function <data/spells/scripts/changeposition.lua:1>

 

 

Editado por znotewebsite
Link para o comentário
Compartilhar em outros sites

  • 0

Nem manjo das matematica mas acho q da certo.

function onCastSpell(cid, var)

local target = getCreatureTarget(cid)
if not target then
return not doPlayerSendCancel(cid, "You need a target.")
end
local tPos = {x = getThingPos(target).x, y = getThingPos(target).y, z = getThingPos(target).z}
local hp = getCreatureHealth(cid) * 10 / 100 
local mana = getCreatureMana(cid) * 10 / 100 

doTeleportThing(target, getThingPos(cid))
doTeleportThing(cid, tPos)
doCreatureAddHealth(cid, - getCreatureHealth(cid) - hp)
doCreatureAddMana(cid, - getCreatureMana(cid) - mana)

return true
end

Link para o comentário
Compartilhar em outros sites

  • 0

Nem manjo das matematica mas acho q da certo.

function onCastSpell(cid, var)

local target = getCreatureTarget(cid)
if not target then
return not doPlayerSendCancel(cid, "You need a target.")
end
local tPos = {x = getThingPos(target).x, y = getThingPos(target).y, z = getThingPos(target).z}
local hp = getCreatureHealth(cid) * 10 / 100
local mana = getCreatureMana(cid) * 10 / 100

doTeleportThing(target, getThingPos(cid))
doTeleportThing(cid, tPos)
doCreatureAddHealth(cid, - getCreatureHealth(cid) - hp)
doCreatureAddMana(cid, - getCreatureMana(cid) - mana)

return true
end

 

Se eu usar a magia sem ter nenhum target da o mesmo erro antigo!

 

E quando eu uso até funciona, só que quando eu troco de posição eu morro por Mana Drain :S

Link para o comentário
Compartilhar em outros sites

  • 0
function onCastSpell(cid, var)
  local target = getCreatureTarget(cid)

  if not isCreature(target) then
  doPlayerSendCancel(cid, "You need a target.")
  return true
  end
  local tPos = {x = getThingPos(target).x, y = getThingPos(target).y, z = getThingPos(target).z}
  local hp = getCreatureMaxHealth(cid) / 100 * 10
  local mana = getCreatureMaxMana(cid) / 100 * 10

  doTeleportThing(target, getThingPos(cid))
  doTeleportThing(cid, tPos)
  doCreatureAddHealth(cid, - hp)
  doCreatureAddMana(cid, - mana)
return true
end

Editado por Slicer
Link para o comentário
Compartilhar em outros sites

  • 0

eita, ta feia a coisa erhaushaue

multiplicar por 10 e dividir por 100 é a mesma coisa que dividir por 10

o script do sky mata o player que usar a skill também

achei que lua admitisse 0 como false e faltou o not no script do slicer, usa esse aqui:

 

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)
if target == 0 then
return not doPlayerSendCancel(cid, "You need a target.")
end
if getCreatureHealth(cid) <= getCreatureMaxHealth(cid) * .1 then
return not doPlayerSendCancel(cid, "You don't have enough life.")
end
if getCreatureMana(cid) <= getCreatureMaxMana(cid) * .1 then
return not doPlayerSendCancel(cid, "You don't have enough mana.")
end
local tPos = getThingPos(target)
doTeleportThing(target, getThingPos(cid))
doTeleportThing(cid, tPos)
doCreatureAddHealth(cid, -getCreatureMaxHealth(cid) * .1)
doCreatureAddMana(cid, -getCreatureMaxMana(cid) * .1)
return true
end

 

o player não consegue usar a spell se não tiver mana ou hp pra pagar

Editado por brun123
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...