• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Lua Spell help

MadMOOK

Hoo
Joined
Apr 20, 2011
Messages
802
Reaction score
43
Can someone make this exori spell, like the spell below it?

Code:
local SPELL_LVL_STORAGE = 18479

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, true)

local area = createCombatArea(AREA_SQUARE1X1)
setCombatArea(combat, area)

function onGetFormulaValues(cid, level, skill, attack, element, factor)
    local levelTotal, formula = level / 5, 0.0496
    local normal, elemental = -(skill * attack * formula + levelTotal), math.ceil((skill * element * formula + levelTotal))
    return normal/2, normal, -math.random(elemental/2, elemental)
end

setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
function onCastSpell(cid, var)
    return doCombat(cid, combat, var)
end

Example
Code:
local SPELL_LVL_STORAGE = 18477

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 combat_formulas = {       
[0] = {min = (maglevel*3) +level/5 +150, max = (maglevel*4) +level/5 +260},       
[1] = {min = (maglevel*3) +level/5 +300, max = (maglevel*4) +level/5 +390},       
[2] = {min = (maglevel*3) +level/5 +390, max = (maglevel*4) +level/5 +450},       
[3] = {min = (maglevel*3) +level/5 +550, max = (maglevel*4) +level/5 +650}   
}   

local lvl = getPlayerStorageValue(cid, SPELL_LVL_STORAGE)   

lvl = lvl == -1 and 0 or lvl  
x = combat_formulas[lvl]  
return -x.min, -x.max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)   
return doCombat(cid, combat, var)
end
 
Last edited:
Back
Top