forgottenserver/data/scripts/spells/attack/electrify.lua
Ranieri Althoff 25df9cfd38
Move spells to scripts folder (#4755)
* Move runes to dedicated folder
* Redirect old XML and lib folder to new location
* Drop unused custom spells
2024-09-20 00:13:59 +02:00

30 lines
1 KiB
Lua

local combat = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA)
combat:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
local spell = Spell(SPELL_INSTANT)
function spell.onCastSpell(creature, variant)
local min = (creature:getLevel() / 80) + (creature:getMagicLevel() * 0.15) + 1
local max = (creature:getLevel() / 80) + (creature:getMagicLevel() * 0.25) + 1
local rounds = math.random(math.floor(min), math.floor(max))
for _, target in ipairs(combat:getTargets(creature, variant)) do
creature:addDamageCondition(target, CONDITION_ENERGY, DAMAGELIST_VARYING_PERIOD, target:isPlayer() and 13 or 25, {10, 12}, rounds)
end
return true
end
spell:group("attack")
spell:id(140)
spell:name("Electrify")
spell:words("utori vis")
spell:level(34)
spell:mana(30)
spell:range(3)
spell:needCasterTargetOrDirection(true)
spell:blockWalls(true)
spell:cooldown(30000)
spell:groupCooldown(2000)
spell:vocation("sorcerer;true", "master sorcerer;true")
spell:register()