#region Arthea License /*********************************************************************** * Arthea MUD by R. Jennings (2007) http://arthea.googlecode.com/ * * By using this code you comply with the Artistic and GPLv2 Licenses. * ***********************************************************************/ #endregion using Arthea.Abilities.Spells.Enums; using Arthea.Collections; using Arthea.Continents.Areas.Characters; using Arthea.Continents.Areas.Characters.Enums; using Arthea.Environment; namespace Arthea.Abilities.Spells { /// <summary> /// Implementation of a magic missile spell. /// </summary> public class MagicMissileSpell : Spell { #region [rgn] Constructors (1) /// <summary> /// Initializes a new instance of the <see cref="MagicMissileSpell"/> class. /// </summary> public MagicMissileSpell() : base("magic missile", CreateLevels("Magician", 1), Position.Standing, 3, 3, "magic missile", null, SpellTarget.Offensive, 4) { } #endregion [rgn] #region [rgn] Methods (1) // [rgn] Public Methods (1) /// <summary> /// Processes this ability for a character. /// </summary> /// <param name="ch">The character.</param> /// <param name="argument">The argument.</param> public override void Process(Character ch, object argument) { Character victim = argument as Character; int num = Randomizer.Next(1, 3); while (num-- >= 0) { int dam = Util.Dice(2, 6); Combat.Damage(this, ch, victim, dam); } } #endregion [rgn] } }