local damage = { min = 1.25, max = 1.7, mul = getConfigInfo('criticalHitMultiplier') }
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, - damage.min, -30, - damage.max, 0)
local criticalCombat = createCombatObject()
setCombatParam(criticalCombat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(criticalCombat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
setCombatParam(criticalCombat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(criticalCombat, COMBAT_FORMULA_LEVELMAGIC, - damage.min * damage.mul, -30, - damage.max * damage.mul, 0)
function onCastSpell(cid, var)
if isCriticalHit() == TRUE then
if getConfigInfo('displayCriticalHitNotify') == "yes" then
doSendAnimatedText(getPlayerPosition(cid), "CRITICAL!", TEXTCOLOR_SPELL_OFFENSIVE_CRITICAL)
end
return doCombat(cid, criticalCombat, var)
else
return doCombat(cid, combat, var)
end
end