local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
function onGetFormulaValues(cid, level, maglevel)
local min = level / 5 + maglevel * 4.3 + 32
local max = level / 5 + maglevel * 7.4 + 48
return -min, -max
end
local exhaust = createConditionObject(CONDITION_EXHAUST)
setConditionParam(exhaust, CONDITION_PARAM_TICKS, 1900) -- time in seconds x1000
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
function onCastSpell(cid, var)
if isInRange(getPlayerPosition(cid), {x = 0, y = 0, z = 0}, {x = 1000, y = 1000, z = 15}) then
doCombat(cid, combat, var)
doAddCondition(cid, exhaust)
return false
else
return doCombat(cid, combat, var)
end
end