/// <summary> /// Decrease or increase atribute for specified time then return it to original value for target. /// </summary> /// <param name="atribute">Target atribute</param> /// <param name="count">How much to change atribute</param> /// <param name="time">How long the change is active</param> public void AddSpellEffectTarget(BonusAtribute.Atributes atribute, int count, int time, int modificatorNumber, SpellEffect.Modificator modificatorType) { SpellEffectsForTarget.Add(new SpellEffect(time, new BonusAtribute(atribute, count, this), modificatorNumber, modificatorType)); }
/// <summary> /// Decrease or increase actual hp or energy pernamently for specified time for target. /// </summary> /// <param name="hpOrMana">Target atribute</param> /// <param name="count">How much to change atribute</param> /// <param name="time">How many rounds the effect repeat. 0 for instant effect</param> /// <param name="modificatorNumber">Multiplier between basic number and atribute</param> /// <param name="modifcatorType">Atribute which modifies value</param> public void AddSpellEffectTarget(SpellEffect.FlatAtribute hpOrMana, int count, int time, float modificatorNumber, SpellEffect.Modificator modifcatorType) { SpellEffectsForTarget.Add(new SpellEffect(time, hpOrMana, count, modificatorNumber, modifcatorType)); }
/// <summary> /// Decrease or increase atribute for specified time then return it to original value for caster. /// </summary> /// <param name="atribute">Target atribute</param> /// <param name="count">How much to change atribute</param> /// <param name="time">How long the change is active</param> public void AddSpellEffectCaster(BonusAtribute.Atributes atribute, int count, int time, float modificatorNumber, SpellEffect.Modificator modifcatorType) { SpellEffectsForCaster.Add(new SpellEffect(time, new BonusAtribute(atribute, count, this), modificatorNumber, modifcatorType)); }