Example #1
0
        private List <WeoponItem> GetWeoponItems()
        {
            // TODO load from file in the future!
            var catagories = new ItemCatagory[] { ItemCatagory.Staff, ItemCatagory.Magic };

            Ability[] a;

            a = new Ability[] { new Ability(2, AbilityType.Pierce, 1) };
            WeoponItem whip = new WeoponItem(
                "9 Tailed Whip", new AttackDice("blue", "power"),
                HandCatagory.MeleeWeopon, a, new ItemCatagory[] { ItemCatagory.Exotic }, 1);

            a = new Ability[] { new Ability(2, AbilityType.Pierce, 1),
                                new Ability(2, AbilityType.Range, 1) };
            WeoponItem weakStaff = new WeoponItem(
                "Weak Staff", new AttackDice("blue", "yellow"),
                HandCatagory.RangeWeopon, a, catagories, 2);

            a = new Ability[] { new Ability(3, AbilityType.Damage, 2),
                                new Ability(1, AbilityType.Damage, 1) };
            WeoponItem fancyStaff = new WeoponItem(
                "Fancy Staff", new AttackDice("blue", "power", "yellow"),
                HandCatagory.RangeWeopon, a, catagories, 2);

            return(new List <WeoponItem> {
                whip, fancyStaff, weakStaff
            });
        }
Example #2
0
        public void TestGearFactory()
        {
            Ability[] a;
            var       gfLocal  = new GearFactory("ActI", true);
            var       gfRemote = new GearFactory("ActI", false);

            a = new Ability[] {
                new Ability(1, AbilityType.Range, 0, 0),
                new Ability(1, AbilityType.Damage, 1, 0),
                new Ability(1, AbilityType.Pierce, 1, 0),
            };
            var mainHand = new WeoponItem(
                "Iron Spear", new AttackDice("blue", "yellow"),
                HandCatagory.MeleeWeopon, a,
                new ItemCatagory[] { ItemCatagory.Exotic }, 1);

            Assert.Equal(mainHand, gfLocal.MainHand[0]);
            Assert.Equal(mainHand, gfRemote.MainHand[0]);

            var offHand = new ShieldItem("Iron Shield", new Ability[0]);

            Assert.Equal(offHand, gfLocal.OffHand[0]);
            Assert.Equal(offHand, gfRemote.OffHand[0]);

            var armor = new ArmorItem("Chainmail", new DefenceDice("grey"),
                                      ItemCatagory.HeavyArmor, new Ability[0]);

            a = new Ability[] { new Ability(1, AbilityType.Range, 0, 0) };
            var helmet  = new ItemCatagory[] { ItemCatagory.Helmet };
            var trinket = new TrinketItem("Scorpion Helmet", helmet, a);

            Assert.Equal(trinket, gfLocal.Trinket[0]);
            Assert.Equal(trinket, gfRemote.Trinket[0]);
        }
Example #3
0
        public void TestWeopon()
        {
            Ability[] a = new Ability[] {
                new Ability(1, AbilityType.Range, 0, 0),
                new Ability(1, AbilityType.Damage, 1, 0),
                new Ability(1, AbilityType.Pierce, 1, 0),
            };
            var mainHand1 = new WeoponItem(
                "Iron Spear", new AttackDice("blue", "yellow"),
                HandCatagory.MeleeWeopon, a,
                new ItemCatagory[] { ItemCatagory.Exotic }, 1);
            var mainHand2 = new WeoponItem(
                "Iron Spear", new AttackDice("blue", "yellow"),
                HandCatagory.MeleeWeopon, a,
                new ItemCatagory[] { ItemCatagory.Exotic }, 1);

            Assert.Equal(mainHand1, mainHand2);
        }
Example #4
0
        public static Hero GetLeoric()
        {
            var defence = new DefenceDice(new GreyDie());
            var leoric  = new Hero("Leoric", 4, 8, 5, defence, 1, 5, 3, 2, 0);

            var attack    = new AttackDice("blue", "power", "yellow");
            var abilities = new Ability[] {
                new Ability(3, AbilityType.Damage, 2),
                new Ability(1, AbilityType.Damage, 1),
                new Ability(2, AbilityType.Pierce, 1),
                new Ability(2, AbilityType.Range, 1)
            };
            var catagories = new ItemCatagory[] { ItemCatagory.Staff,
                                                  ItemCatagory.Magic };

            WeoponItem fancyStaff = new WeoponItem("Fancy Staff", attack,
                                                   HandCatagory.RangeWeopon, abilities, catagories, 2);

            leoric.Equip(fancyStaff);

            return(leoric);
        }