public PlayerSpell(string name, int manaCost, int rank, SpellType spellType, int minLevel) { Name = name; ManaCost = manaCost; Rank = rank; SpellCategory = spellType; MinLevel = minLevel; switch (SpellCategory) { case SpellType.Fireball: DamageGroup = DamageType.Fire; Offensive = new Offensive( 25, 5, 1, 3, OffensiveType.Fire); break; case SpellType.Frostbolt: DamageGroup = DamageType.Frost; Offensive = new Offensive(15, 1, 2); break; case SpellType.Lightning: DamageGroup = DamageType.Arcane; Offensive = new Offensive(35); break; case SpellType.Heal: Healing = new Healing(50); break; case SpellType.Rejuvenate: Healing = new Healing(20, 10, 1, 3); break; case SpellType.Diamondskin: ChangeAmount = new ChangeAmount(25, 1, 3); break; case SpellType.TownPortal: Portal = new Portal(); break; case SpellType.Reflect: ChangeAmount = new ChangeAmount(25, 1, 3); break; case SpellType.ArcaneIntellect: ChangeAmount = new ChangeAmount(15, 1, 600); break; case SpellType.FrostNova: DamageGroup = DamageType.Frost; Offensive = new Offensive(15, 1, 2); break; default: throw new ArgumentOutOfRangeException(); } }
public PlayerAbility(string name, int rageCost, int rank, WarriorAbility warAbility, int minLevel) { Name = name; RageCost = rageCost; Rank = rank; WarAbilityCategory = warAbility; MinLevel = minLevel; switch (WarAbilityCategory) { case WarriorAbility.Slash: DamageGroup = DamageType.Physical; Offensive = new Offensive(50); break; case WarriorAbility.Rend: DamageGroup = DamageType.Physical; Offensive = new Offensive( 15, 5, 1, 3, OffensiveType.Bleed); break; case WarriorAbility.Charge: DamageGroup = DamageType.Physical; Stun = new Stun(15, 1, 2); break; case WarriorAbility.Block: Defensive = new Defensive(50); break; case WarriorAbility.Berserk: DamageGroup = DamageType.Physical; Offensive = new Offensive(20, 1, 4); ChangeAmount = new ChangeAmount(-15, 1, 4); break; case WarriorAbility.Disarm: DamageGroup = DamageType.Physical; Offensive = new Offensive(35); break; case WarriorAbility.Bandage: Healing = new Healing(25, 5, 1, 3); break; case WarriorAbility.PowerAura: ChangeAmount = new ChangeAmount(15, 1, 600); break; case WarriorAbility.WarCry: ChangeAmount = new ChangeAmount(-25, 1, 3); break; case WarriorAbility.Onslaught: DamageGroup = DamageType.Physical; Offensive = new Offensive(25); break; default: throw new ArgumentOutOfRangeException(); } }
public PlayerAbility(string name, int comboCost, int rank, ArcherAbility archerAbility, int minLevel) { Name = name; ComboCost = comboCost; Rank = rank; ArcAbilityCategory = archerAbility; MinLevel = minLevel; switch (ArcAbilityCategory) { case ArcherAbility.Distance: DamageGroup = DamageType.Physical; Offensive = new Offensive(25, 50); break; case ArcherAbility.Gut: DamageGroup = DamageType.Physical; Offensive = new Offensive( 15, 5, 1, 3, OffensiveType.Bleed); break; case ArcherAbility.Precise: DamageGroup = DamageType.Physical; Offensive = new Offensive(50); break; case ArcherAbility.Stun: DamageGroup = DamageType.Physical; Stun = new Stun(15, 1, 3); break; case ArcherAbility.Wound: DamageGroup = DamageType.Physical; Offensive = new Offensive( 5, 10, 1, 5, OffensiveType.Bleed); break; case ArcherAbility.Double: DamageGroup = DamageType.Physical; Offensive = new Offensive(25); break; case ArcherAbility.Bandage: Healing = new Healing(25, 5, 1, 3); break; case ArcherAbility.SwiftAura: ChangeAmount = new ChangeAmount(15, 1, 600); break; case ArcherAbility.ImmolatingArrow: DamageGroup = DamageType.Fire; Offensive = new Offensive( 25, 5, 1, 3, OffensiveType.Fire); break; case ArcherAbility.Ambush: DamageGroup = DamageType.Physical; Offensive = new Offensive(50); break; default: throw new ArgumentOutOfRangeException(); } }