Jump to content
  • 0
Vorkhon

[Resolvido] Spell que Imobilzia

Question

Versão do Servidor: TFS - 1.0
Tipo de Script: spell
Código:
 
local combat, area = createCombatObject(), createCombatArea(AREA_BEAM6,AREADIAGONAL_BEAM6)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
setCombatArea(combat, area)
local condition = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition, CONDITION_PARAM_TICKS, 20000)
for i = 5474, 5474 do
addOutfitCondition(condition, {lookTypeEx = i})
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 20000)
setConditionParam(condition, CONDITION_PARAM_SPEED, -400)
setCombatCondition(combat, condition)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -60, -1, -60, 5, 5, 4, 7)
end
setCombatCondition(combat, condition)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end

Fala pessoal! Eu to querendo uma spell que de dano em area, transforma em objeto e deixa imobilizado. Não quero usar o paralyze pq é muito ruim, quero 100% imovel por 5 segundos. Segue meu script que ta ruim em anexo:

 

 

Link to post
Share on other sites

8 answers to this question

Recommended Posts

  • 1
Spoiler
local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
local condition = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition, CONDITION_PARAM_TICKS, 6000)
for i = 5474, 5474 do
addOutfitCondition(condition, {lookTypeEx = i})
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -60, -1, -60, 5, 5, 4, 7)
end
setCombatCondition(combat, condition)


function VorkhonParar(cid)
if isCreature(cid) == false then
return false
end
doCreatureSetNoMove(cid, true)
end

function VorkhonMover(cid)
if isCreature(cid) == false then
return false
end
doCreatureSetNoMove(cid, false)
end





function onCastSpell(cid, var)
local target = getCreatureTarget(cid)
VorkhonParar(target)
addEvent(VorkhonMover, 6 * 1000, target)
return doCombat(cid, combat, var)
end

 

 

 

Testa dessa forma.

Edited by koete
Link to post
Share on other sites
  • 0

para paralizar você pode usar a função.

doCreatureSetNoMove(cid, true)

True paraliza, false desparaliza.

você varia entre os alvos no Cid, cid vai apralizar vc usa um target como getCreatureTarget(cid) que ira paralizar seu target. 

No final faça um retorno pra poder desparalizar seu personagem depois de um tempo. 

Link to post
Share on other sites
  • 0
8 horas atrás, koete disse:

para paralizar você pode usar a função.

doCreatureSetNoMove(cid, true)

True paraliza, false desparaliza.

você varia entre os alvos no Cid, cid vai apralizar vc usa um target como getCreatureTarget(cid) que ira paralizar seu target. 

No final faça um retorno pra poder desparalizar seu personagem depois de um tempo. 

Funcionou amigo! Mas só uma coisa. Se o alvo morre, ele tenta "desparalizar" e acaba desparalizando o nada e da um errinho na distro, tem como fazer isso não acontecer?

Link to post
Share on other sites
  • 0

Usa isso em seu script, pra na hora que ele for retornar ele vai checar antes se ainda há a criatura se não houver então ele vai retornar false e não vai dar o erro.

if isCreature(cid) == false then
return false
end

 

Link to post
Share on other sites
  • 0
5 horas atrás, koete disse:

Usa isso em seu script, pra na hora que ele for retornar ele vai checar antes se ainda há a criatura se não houver então ele vai retornar false e não vai dar o erro.

if isCreature(cid) == false then
return false
end

 

Cara eu não manjo muito onde colocar direitinho. Mas botei em varios lugares e não ta dando certo. Eu entendi a logica do código, mas não ta dando. No creature cid não tem que especifica nada? Minha spell eu fiz de target ao inves de wave, nao sei se muda algo. Segue como eu fiz:
 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
local condition = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition, CONDITION_PARAM_TICKS, 6000)
for i = 5474, 5474 do
addOutfitCondition(condition, {lookTypeEx = i})
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -60, -1, -60, 5, 5, 4, 7)
end
setCombatCondition(combat, condition)

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)
if isCreature(cid) == false then
return false
end
doCreatureSetNoMove(target, true)
addEvent(doCreatureSetNoMove, 6 * 1000, target, false)
return doCombat(cid, combat, var)
end

 

Link to post
Share on other sites
  • 0
8 horas atrás, koete disse:
  Ocultar conteúdo

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
local condition = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition, CONDITION_PARAM_TICKS, 6000)
for i = 5474, 5474 do
addOutfitCondition(condition, {lookTypeEx = i})
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -60, -1, -60, 5, 5, 4, 7)
end
setCombatCondition(combat, condition)


function VorkhonParar(cid)
if isCreature(cid) == false then
return false
end
doCreatureSetNoMove(cid, true)
end

function VorkhonMover(cid)
if isCreature(cid) == false then
return false
end
doCreatureSetNoMove(cid, false)
end





function onCastSpell(cid, var)
local target = getCreatureTarget(cid)
VorkhonParar(target)
addEvent(VorkhonMover, 6 * 1000, target)
return doCombat(cid, combat, var)
end

 

 

 

Testa dessa forma.

Maravilha! Funcionou amigo!

Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...