local combat = Combat() combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_HITBYFIRE) combat:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) local spell = Spell(SPELL_INSTANT) function spell.onCastSpell(creature, variant) local min = (creature:getLevel() / 80) + (creature:getMagicLevel() * 0.3) + 2 local max = (creature:getLevel() / 80) + (creature:getMagicLevel() * 0.6) + 4 local rounds = math.random(math.floor(min), math.floor(max)) for _, target in ipairs(combat:getTargets(creature, variant)) do creature:addDamageCondition(target, CONDITION_FIRE, DAMAGELIST_VARYING_PERIOD, target:isPlayer() and 5 or 10, {8, 10}, rounds) end return true end spell:group("attack") spell:id(138) spell:name("Ignite") spell:words("utori flam") spell:level(26) 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()