Não testei
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN)
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 494) -- adiciona o efeito 494
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -250.0, 0, -275.0, 0)
local function onCastSpell1(parameters)
local targetPos = getCreaturePosition(parameters.target)
if targetPos then
doSendMagicEffect(targetPos, 494) -- exibe o efeito 494 na posição do alvo
doCombat(parameters.cid, parameters.combat1, positionToVariant(targetPos))
end
end
function onCastSpell(cid, var)
local parameters = { cid = cid, var = var, combat1 = combat1, target = getCreatureTarget(cid) }
addEvent(onCastSpell1, 0, parameters)
return true
end
Versão otimizada:
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN)
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 494)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -250, 0, -275, 0)
function onCastSpell(cid, var)
local target = getCreatureTarget(cid)
if not target then
return false
end
local targetPos = getCreaturePosition(target)
if not targetPos then
return false
end
doSendMagicEffect(targetPos, 494)
doCombat(cid, combat1, positionToVariant(targetPos))
return true
end