Hello, I created a spell which is made out of (UE, and 4 exoris(mort,vis,frigo,terra))
I wonder how can I change the execution section so it delays after each cast for example 200ms.
It works fine with executing all of them at once but you can only see dmg for the last 2 casted and it's kind of misleading and annoying and I want to change it.
I wonder how can I change the execution section so it delays after each cast for example 200ms.
It works fine with executing all of them at once but you can only see dmg for the last 2 casted and it's kind of misleading and annoying and I want to change it.
Code:
--Mort strike
local combat1 = Combat()
combat1:setParameter(COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
combat1:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
combat1:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_DEATH)
function onGetFormulaValues(player, level, maglevel)
min = -((level / 5) + (maglevel * 1.4) + 8)
max = -((level / 5) + (maglevel * 2.2) + 14)
return min, max
end
combat1:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
--Energy strike
local combat2 = Combat()
combat2:setParameter(COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
combat2:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA)
combat2:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
function onGetFormulaValues(player, level, maglevel)
min = -((level / 5) + (maglevel * 1.4) + 8)
max = -((level / 5) + (maglevel * 2.2) + 14)
return min, max
end
combat2:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
--ICE strike
local combat3 = Combat()
combat3:setParameter(COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
combat3:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK)
combat3:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLICE)
function onGetFormulaValues(player, level, maglevel)
min = -((level / 5) + (maglevel * 1.4) + 8)
max = -((level / 5) + (maglevel * 2.2) + 14)
return min, max
end
combat3:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
--Terra strike
local combat4 = Combat()
combat4:setParameter(COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
combat4:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_CARNIPHILA)
combat4:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLEARTH)
function onGetFormulaValues(player, level, maglevel)
min = -((level / 5) + (maglevel * 1.4) + 8)
max = -((level / 5) + (maglevel * 2.2) + 14)
return min, max
end
combat4:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
--Rage of the skies
local combat5 = Combat()
combat5:setParameter(COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
combat5:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_BIGCLOUDS)
local area = createCombatArea(AREA_CROSS6X6)
combat5:setArea(area)
function onGetFormulaValues(player, level, maglevel)
min = -((level / 5) + (maglevel * 4) + 75)
max = -((level / 5) + (maglevel * 10) + 150)
return min, max
end
combat5:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
function onCastSpell(creature, var)
combat5:execute(creature, var)
combat1:execute(creature, var)
combat2:execute(creature, var)
combat3:execute(creature, var)
combat4:execute(creature, var)
return true
end
Code:
<instant group="attack" spellid="1000" name="Exori Element" words="exori element" lvl="200" mana="1500" prem="1" range="5" casterTargetOrDirection="1" blockwalls="1" exhaustion="20000" groupcooldown="2000" needlearn="0" script="exori_element.lua">
<vocation name="Sorcerer"/>
<vocation name="Master Sorcerer"/>
<vocation name="Elder Druid"/>
<vocation name="Druid"/>
</instant>