예제 #1
0
        public Malinko()
        {
            Name         = "Malinko";
            Title        = ", the Wounded Explorer ";
            Body         = 401;
            Hue          = 33770;
            VirtualArmor = 50;
            CantWalk     = true;

            Item hair = new Item(Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A));

            hair.Hue     = Utility.RandomHairHue();
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            AddItem(new Server.Items.Skirt(Utility.RandomNeutralHue()));
            AddItem(new Server.Items.Doublet(Utility.RandomNeutralHue()));
            AddItem(new Server.Items.Sandals(0));

            GoldNecklace goldnecklace = new GoldNecklace();

            goldnecklace.Hue     = 0;
            goldnecklace.Movable = false;
            AddItem(goldnecklace);

            GoldRing goldring = new GoldRing();

            goldring.Hue     = 0;
            goldring.Movable = false;
            AddItem(goldring);

            Blessed = true;
        }
예제 #2
0
        public override void InitOutfit()
        {
            WipeLayers();

            Scimitar sword = new Scimitar();

            sword.Quality = WeaponQuality.Exceptional;
            sword.Movable = false;
            AddItem(sword);

            Item hair = new KrisnaHair();

            hair.Hue     = 1263;
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            BoneArms arms = new BoneArms();

            arms.Name     = "magical bindings";
            arms.Hue      = 1706;
            arms.LootType = LootType.Newbied;
            AddItem(arms);

            GoldNecklace necklace = new GoldNecklace();

            necklace.Name     = "magical collar";
            necklace.Hue      = 1706;
            necklace.LootType = LootType.Newbied;
            AddItem(necklace);
        }
예제 #3
0
        public override void GenerateLoot()
        {
            AddLoot(LootPack.Average);

            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield = new MetalKiteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 25, 30);
                }

                PackItem(shield);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 15, 20);

                PackItem(clothing);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel1 = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel1, 3, 15, 20);
                }

                PackItem(jewel1);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel2 = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel2, 3, 15, 20);
                }

                PackItem(jewel2);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel3 = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel3, 3, 15, 20);
                }

                PackItem(jewel3);
            }
        }
        public override void GenerateLoot()
        {
            AddLoot(LootPack.Gems, 6);

            if (Utility.RandomDouble() < 0.05)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 25, 30);

                PackItem(clothing);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 25, 30);
                }

                PackItem(bracelet);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 25, 30);
                }

                PackItem(earrings);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 25, 30);
                }

                PackItem(necklace);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel ring = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 25, 30);
                }

                PackItem(ring);
            }
        }
예제 #5
0
        public Peraniese()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name     = "Peraniese";
            Title    = "a Scholar extrodinair";
            Body     = 400;
            CantWalk = true;
            Hue      = 33770;
            CantWalk = true;

            int hairHue = 0;

            Blessed = true;

            switch (Utility.Random(1))
            {
            case 0: AddItem(new LongHair(hairHue)); break;
            }
            switch (Utility.Random(1))
            {
            case 0: AddItem(new Vandyke(hairHue)); break;
            }

            AddItem(new Server.Items.FurCape(1150));
            AddItem(new Server.Items.Sandals(1530));
            AddItem(new Server.Items.FurSarong(1530));

            Doublet doublet = new Doublet();

            doublet.Hue     = 1530;
            doublet.Movable = false;
            AddItem(doublet);

            GoldNecklace goldnecklace = new GoldNecklace();

            goldnecklace.Hue     = 0;
            goldnecklace.Movable = false;
            AddItem(goldnecklace);

            GoldRing goldring = new GoldRing();

            goldring.Hue     = 0;
            goldring.Movable = false;
            AddItem(goldring);

            Backpack backpack = new Backpack();

            backpack.Hue     = 1530;
            backpack.Movable = false;
            AddItem(backpack);
        }
        public override void GenerateLoot()
        {
            AddLoot(LootPack.Rich, 2);
            AddLoot(LootPack.Gems);

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel1 = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel1, 3, 15, 20);
                }

                jewel1.Hue = 1152;
                jewel1.Attributes.WeaponDamage = 6;
                jewel1.Resistances.Cold        = 9;

                PackItem(jewel1);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel2 = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel2, 3, 15, 20);
                }

                jewel2.Hue = 1152;
                jewel2.Attributes.WeaponDamage = 9;
                jewel2.Resistances.Cold        = 8;

                PackItem(jewel2);
            }

            if (Utility.RandomDouble() < 0.04)               //4% chance to drop.
            {
                BaseWeapon weapon = new Lance();

                weapon.Hue = 1152;

                weapon.Attributes.WeaponDamage         = 15;
                weapon.WeaponAttributes.HitHarm        = 5;
                weapon.WeaponAttributes.HitLowerDefend = 10;

                PackItem(weapon);
            }
        }
예제 #7
0
        public override void InitOutfit()
        {
            WipeLayers();

            // add a "wooden stake" to our loot
            Shaft WoodenStake = new Shaft();

            WoodenStake.Hue  = 51;
            WoodenStake.Name = "wooden stake";
            PackItem(WoodenStake);

            // black backpack. we need a backpack so our walking-dead can be disarmed, and black is cool
            Backpack.Hue = 0x01;

            // add Scepter
            Scepter weapon = new Scepter();                     // can disarm, but can't steal

            weapon.LootType = LootType.Newbied;                 // can't steal
            weapon.Movable  = false;                            // can't disarm
            weapon.Name     = "an impaler";                     // give it a name
            AddItem(weapon);

            Item hair  = new LongHair(1);
            Item pants = new LongPants(0x1);
            Item shirt = new FancyShirt();

            hair.Layer = Layer.Hair;
            AddItem(hair);
            AddItem(pants);
            AddItem(shirt);

            Item necklace = new GoldNecklace();

            AddItem(necklace);
            Item ring = new GoldRing();

            AddItem(ring);
            Item bracelet = new GoldBracelet();

            AddItem(bracelet);

            Item boots = new Sandals(0x1);

            AddItem(boots);
        }
예제 #8
0
        public Oracle()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name     = "Oracle";
            Title    = "I was, I'm, I'll be";
            Body     = 400;
            CantWalk = true;
            Hue      = 33770;
            CantWalk = true;

            int hairHue = 0;

            Blessed = true;

            switch (Utility.Random(1))
            {
            case 0: AddItem(new LongHair(hairHue)); break;
            }


            AddItem(new Server.Items.Cloak(1153));
            AddItem(new Server.Items.Sandals(1153));
            AddItem(new Server.Items.Robe(1153));
            AddItem(new Server.Items.Bandana(1153));

            GoldNecklace goldnecklace = new GoldNecklace();

            goldnecklace.Hue     = 0;
            goldnecklace.Movable = false;
            AddItem(goldnecklace);

            GoldRing goldring = new GoldRing();

            goldring.Hue     = 0;
            goldring.Movable = false;
            AddItem(goldring);

            Backpack backpack = new Backpack();

            backpack.Hue     = 1530;
            backpack.Movable = false;
            AddItem(backpack);
        }
        public override void InitOutfit()
        {
            WipeLayers();
            Item hair = new LongHair();

            hair.Hue     = 0x47E;
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            Item Necklace = new GoldNecklace();

            Necklace.LootType = LootType.Newbied;
            Necklace.Hue      = 2006;        // basilisk hue
            AddItem(Necklace);

            // NEVER drop one of these! - (never runs out of poison)
            BasilisksFang fang = new BasilisksFang();

            fang.Quality  = WeaponQuality.Exceptional;
            fang.LootType = LootType.Newbied;
            if (Utility.RandomBool())
            {
                fang.Poison = Poison.Regular;
            }
            else
            {
                fang.Poison = Poison.Lesser;
            }
            fang.PoisonCharges = 30;
            fang.Movable       = false;
            AddItem(fang);

            AddItem(new BoneArms());
            AddItem(new BoneLegs());

            // all savages wear a mask, but won't drop this one
            //	see OnBeforeDeath for the mask they do drop
            SavageMask mask = new SavageMask();

            mask.LootType = LootType.Newbied;
            AddItem(mask);
        }
예제 #10
0
        public Merlin()
        {
            Name     = "Merlin";
            Title    = "Master Magician and Philosopher";
            Body     = 400;
            CantWalk = false;
            Hue      = 33770;

            int hairHue = 0;

            Blessed = true;

            switch (Utility.Random(1))
            {
            case 0: AddItem(new LongHair(hairHue)); break;
            }
            switch (Utility.Random(1))
            {
            case 0: AddItem(new MediumLongBeard(hairHue)); break;
            }

            AddItem(new Server.Items.HoodedShroudOfShadows(1150));
            AddItem(new Server.Items.Sandals(0));
            AddItem(new Server.Items.FurCape(0));

            GoldNecklace goldnecklace = new GoldNecklace();

            goldnecklace.Hue     = 1154;
            goldnecklace.Movable = false;
            AddItem(goldnecklace);

            GoldRing goldring = new GoldRing();

            goldring.Hue     = 1154;
            goldring.Movable = false;
            AddItem(goldring);

            Backpack backpack = new Backpack();

            backpack.Hue     = 1154;
            backpack.Movable = false;
            AddItem(backpack);
        }
예제 #11
0
        public override void InitOutfit()
        {
            AddItem(new LongPants(GetRandomHue()));
            AddItem(new Boots(GetRandomHue()));
            AddItem(new FeatheredHat(GetRandomHue()));

            if (Female)
            {
                AddItem(new Kilt(GetRandomHue()));
                AddItem(new Shirt(GetRandomHue()));

                switch (Utility.Random(3))
                {
                case 0: AddItem(new LongHair(GetHairHue())); break;

                case 1: AddItem(new PonyTail(GetHairHue())); break;

                case 2: AddItem(new BunsHair(GetHairHue())); break;
                }

                GoldBracelet bracelet = new GoldBracelet();
                bracelet.Hue = GetRandomHue();
                AddItem(bracelet);

                GoldNecklace neck = new GoldNecklace();
                neck.Hue = GetRandomHue();
                AddItem(neck);
            }
            else
            {
                AddItem(new FancyShirt(GetRandomHue()));
                AddItem(new Doublet(GetRandomHue()));

                switch (Utility.Random(2))
                {
                case 0: AddItem(new PonyTail(GetHairHue())); break;

                case 1: AddItem(new ShortHair(GetHairHue())); break;
                }
            }
        }
예제 #12
0
        public override void GenerateLoot()
        {
            AddLoot(LootPack.Gems);

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel1 = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel1, 3, 15, 20);
                }

                jewel1.Resistances.Energy = 8;

                PackItem(jewel1);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel2 = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel2, 3, 15, 20);
                }

                jewel2.Resistances.Energy = 12;

                PackItem(jewel2);
            }
            if (Utility.RandomDouble() < 0.04)               //4% chance to drop.
            {
                BaseWeapon weapon = new QuarterStaff();

                weapon.Hue = 2106;

                weapon.Attributes.SpellDamage        = 15;
                weapon.WeaponAttributes.HitLightning = 5;

                PackItem(weapon);
            }
        }
        public override void GenerateLoot()
        {
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel1 = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel1, 3, 15, 20);
                }

                jewel1.Resistances.Fire = 8;

                PackItem(jewel1);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel2 = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel2, 3, 15, 20);
                }

                jewel2.Resistances.Fire = 12;

                PackItem(jewel2);
            }
            if (Utility.RandomDouble() < 0.05)               //5% chance to drop.
            {
                BaseWeapon weapon = new BlackStaff();

                weapon.Hue = 1908;

                weapon.Attributes.SpellDamage       = 15;
                weapon.WeaponAttributes.HitFireball = 5;

                PackItem(weapon);
            }
        }
        public override void GenerateLoot()
        {
            AddLoot(LootPack.FilthyRich, 2);
            AddLoot(LootPack.Average, 3);

            if (Utility.RandomDouble() < 0.10)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 3, 25, 30);

                PackItem(weapon);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 25, 30);

                PackItem(clothing);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield = new ScarabShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 25, 30);
                }

                PackItem(shield);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 25, 30);
                }

                PackItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 25, 30);
                }

                PackItem(earrings);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 25, 30);
                }

                PackItem(necklace);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel ring = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 25, 30);
                }

                PackItem(ring);
            }

            if (0.08 > Utility.RandomDouble())
            {
                switch (Utility.Random(4))
                {
                case 0: PackItem(new FrostAbyssalRingmailGloves()); break;

                case 1: PackItem(new FrostAbyssalRingmailLeggings()); break;

                case 2: PackItem(new FrostAbyssalRingmailSleeves()); break;

                case 3: PackItem(new FrostAbyssalRingmailTunic()); break;
                }
            }
        }
예제 #15
0
        public override void InitOutfit()
        {
            WipeLayers();

            if (this.Female)
            {
                Item hair  = new Item(0x203C);
                Item dress = new PlainDress(0x1);
                //5% chance to drop black dress
                if (Utility.RandomDouble() < 0.95)
                {
                    dress.LootType = LootType.Newbied;
                }

                if (Utility.RandomMinMax(0, 100) <= 20)                //20% chance to have black hair
                {
                    hair.Hue = 0x1;
                }
                else
                {
                    hair.Hue = Utility.RandomHairHue();
                }

                hair.Layer = Layer.Hair;
                AddItem(hair);
                AddItem(dress);
            }
            else
            {
                Item hair2 = new Item(Utility.RandomList(0x203C, 0x203B));
                Item pants = new LongPants(0x1);
                Item shirt = new FancyShirt();
                hair2.Hue   = Utility.RandomHairHue();
                hair2.Layer = Layer.Hair;
                AddItem(hair2);
                //5% chance for black clothes
                if (Utility.RandomDouble() < 0.95)
                {
                    shirt.LootType = LootType.Newbied;
                }
                if (Utility.RandomDouble() < 0.95)
                {
                    pants.LootType = LootType.Newbied;
                }
                AddItem(pants);
                AddItem(shirt);
            }

            Item necklace = new GoldNecklace();

            AddItem(necklace);
            Item ring = new GoldRing();

            AddItem(ring);
            Item bracelet = new GoldBracelet();

            AddItem(bracelet);

            Item boots = new Sandals(0x1);

            boots.LootType = LootType.Newbied;             //no dropping the black sandals.
            AddItem(boots);
        }
예제 #16
0
        public Aughisky() : base(AIType.AI_Melee, FightMode.Closest, 6, 1, 0.175, 0.350)
        {
            Name        = "an aughisky";
            Body        = 178;
            Hue         = 1908;
            BaseSoundID = 0xA8;

            SetStr(187, 245);
            SetDex(196, 234);
            SetInt(156, 173);

            SetHits(285, 350);

            SetDamage(7, 14);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 35);
            SetResistance(ResistanceType.Fire, 25);
            SetResistance(ResistanceType.Cold, 30);
            SetResistance(ResistanceType.Poison, 30);
            SetResistance(ResistanceType.Energy, 25);

            SetSkill(SkillName.MagicResist, 48.9, 69.7);
            SetSkill(SkillName.Tactics, 77.9, 88.8);
            SetSkill(SkillName.Wrestling, 48.6, 60.4);

            Fame  = 11600;
            Karma = -11600;

            Container pack = new Backpack();

            pack.DropItem(new Pitcher(BeverageType.Water));
            pack.DropItem(new Gold(Utility.RandomMinMax(23, 37)));

            if (0.03 > Utility.RandomDouble())
            {
                pack.DropItem(new Citrine());
            }

            if (0.10 > Utility.RandomDouble())
            {
                pack.DropItem(new NightSightScroll());
            }

            if (0.04 > Utility.RandomDouble())
            {
                pack.DropItem(new Pearl());
            }

            if (0.03 > Utility.RandomDouble())
            {
                pack.DropItem(Loot.RandomGem());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing1 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing1, 3, 10, 25);

                pack.DropItem(clothing1);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing2 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing2, 3, 10, 25);

                pack.DropItem(clothing2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 3, 10, 25);

                pack.DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 2, 10, 15);
                }

                pack.DropItem(necklace);
            }
            PackItem(pack);

            switch (Utility.Random(3))
            {
            case 0: AddItem(Loot.RandomArmor()); break;

            case 1: AddItem(Loot.RandomClothing()); break;

            case 2: AddItem(Loot.RandomWeapon()); break;
            }
        }
예제 #17
0
        public Squidlarkin() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = "a squidlarkin";
            Body        = 364;
            BaseSoundID = 0x451;

            SetStr(223, 268);
            SetDex(196, 212);
            SetInt(124, 147);

            SetHits(289, 385);

            SetDamage(8, 15);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 35);
            SetResistance(ResistanceType.Fire, 10);
            SetResistance(ResistanceType.Cold, 25);
            SetResistance(ResistanceType.Poison, 45);
            SetResistance(ResistanceType.Energy, 0);

            SetSkill(SkillName.MagicResist, 37.5, 42.9);
            SetSkill(SkillName.Tactics, 70.1, 80.0);
            SetSkill(SkillName.Wrestling, 95.1, 100.0);

            Fame  = 14000;
            Karma = -14000;

            PackReg(1, 5);

            Container pack = new Backpack();

            pack.DropItem(new Pitcher(BeverageType.Water));
            pack.DropItem(new Gold(Utility.RandomMinMax(16, 32)));
            pack.DropItem(Loot.RandomStatue());
            pack.DropItem(new Pearl());

            if (0.04 > Utility.RandomDouble())
            {
                pack.DropItem(new Pearl());
            }

            if (0.03 > Utility.RandomDouble())
            {
                pack.DropItem(Loot.RandomGem());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing1 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing1, 3, 10, 25);

                pack.DropItem(clothing1);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing2 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing2, 3, 10, 25);

                pack.DropItem(clothing2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 3, 10, 25);

                pack.DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 2, 10, 15);
                }

                pack.DropItem(necklace);
            }

            PackItem(pack);

            switch (Utility.Random(3))
            {
            case 0: AddItem(Loot.RandomArmor()); break;

            case 1: AddItem(Loot.RandomClothing()); break;

            case 2: AddItem(Loot.RandomWeapon()); break;
            }
        }
예제 #18
0
        public override void GenerateLoot()
        {
            AddLoot(LootPack.FilthyRich, 5);
            AddLoot(LootPack.HighScrolls, 3);
            AddLoot(LootPack.MedScrolls, 4);
            AddLoot(LootPack.LowScrolls, 6);
            AddLoot(LootPack.Gems, 5);

            if (Utility.RandomDouble() < 0.20)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                switch (Utility.Random(33))
                {
                case 0: weapon = new BattleAxe(); break;

                case 1: weapon = new ExecutionersAxe(); break;

                case 2: weapon = new LargeBattleAxe(); break;

                case 3: weapon = new WarAxe(); break;

                case 4: weapon = new Bow(); break;

                case 5: weapon = new Crossbow(); break;

                case 6: weapon = new HeavyCrossbow(); break;

                case 7: weapon = new WarHammer(); break;

                case 8: weapon = new WarMace(); break;

                case 9: weapon = new Bardiche(); break;

                case 10: weapon = new Halberd(); break;

                case 11: weapon = new Spear(); break;

                case 12: weapon = new QuarterStaff(); break;

                case 13: weapon = new Katana(); break;

                case 14: weapon = new Longsword(); break;

                case 15: weapon = new VikingSword(); break;

                case 16: weapon = new CompositeBow(); break;

                case 17: weapon = new CrescentBlade(); break;

                case 18: weapon = new DoubleBladedStaff(); break;

                case 19: weapon = new Lance(); break;

                case 20: weapon = new PaladinSword(); break;

                case 21: weapon = new Scythe(); break;

                case 22: weapon = new Daisho(); break;

                case 23: weapon = new Lajatang(); break;

                case 24: weapon = new NoDachi(); break;

                case 25: weapon = new Tetsubo(); break;

                case 26: weapon = new Yumi(); break;

                case 27: weapon = new ElvenCompositeLongbow(); break;

                case 28: weapon = new OrnateAxe(); break;

                case 29: weapon = new RadiantScimitar(); break;

                case 30: weapon = new WarCleaver(); break;

                case 31: weapon = new WildStaff(); break;

                default: weapon = new DiamondMace(); break;
                }

                BaseRunicTool.ApplyAttributesTo(weapon, 5, 35, 50);
                weapon.Hue = 1461;

                PackItem(weapon);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(5))
                {
                case 0: armor = new CrusaderGauntlets(); break;

                case 1: armor = new CrusaderGorget(); break;

                case 2: armor = new CrusaderLeggings(); break;

                case 3: armor = new CrusaderSleeves(); break;

                default: armor = new CrusaderBreastplate(); break;
                }

                BaseRunicTool.ApplyAttributesTo(armor, 5, 35, 50);
                armor.Hue = 1461;

                PackItem(armor);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 5, 35, 50);
                clothing.Hue = 1461;

                PackItem(clothing);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseShield shield = new MetalKiteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 35, 50);
                }
                shield.Hue = 1461;

                PackItem(shield);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 35, 50);
                }
                bracelet.Hue = 1461;

                PackItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 35, 50);
                }
                earrings.Hue = 1461;

                PackItem(earrings);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 35, 50);
                }
                necklace.Hue = 1461;

                PackItem(necklace);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel ring = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 35, 50);
                }
                ring.Hue = 1461;

                PackItem(ring);
            }
        }
예제 #19
0
        public MadSorceress() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.2)
        {
            Hue  = 33770;
            Body = 401;

            SetStr(175, 275);
            SetDex(80, 95);
            SetInt(250, 300);

            SetHits(250, 325);
            SetMana(350, 450);

            SetDamage(7, 12);

            SetSkill(SkillName.Tactics, 95.7, 98.4);
            SetSkill(SkillName.MagicResist, 77.4, 87.7);
            SetSkill(SkillName.Magery, 98.4, 99.7);
            SetSkill(SkillName.Parry, 97.4, 98.7);
            SetSkill(SkillName.Wrestling, 89.4, 95.7);
            SetSkill(SkillName.EvalInt, 75.4, 80.7);

            Fame  = 8000;
            Karma = -8000;

            VirtualArmor = 10;
            Female       = true;

            Item BronzeShield = new BronzeShield();

            BronzeShield.Movable = false;
            BronzeShield.Hue     = 1156;
            EquipItem(BronzeShield);

            Item WizardsHat = new WizardsHat();

            WizardsHat.Movable = false;
            WizardsHat.Hue     = 1153;
            EquipItem(WizardsHat);

            Item LeatherGloves = new LeatherGloves();

            LeatherGloves.Movable = false;
            LeatherGloves.Hue     = 1153;
            EquipItem(LeatherGloves);

            Item Robe = new Robe();

            Robe.Movable = false;
            Robe.Hue     = 1156;
            EquipItem(Robe);

            Item Sandals = new Sandals();

            Sandals.Movable = false;
            Sandals.Hue     = 1153;
            EquipItem(Sandals);

            Item GoldEarrings = new GoldEarrings();

            GoldEarrings.Movable = false;
            GoldEarrings.Hue     = 1153;
            EquipItem(GoldEarrings);

            Item GoldNecklace = new GoldNecklace();

            GoldNecklace.Movable = false;
            GoldNecklace.Hue     = 1153;
            EquipItem(GoldNecklace);

            HairItemID = 0x203C;
            HairHue    = 1156;

            int gems = Utility.RandomMinMax(1, 5);

            for (int i = 0; i < gems; ++i)
            {
                PackGem();
            }

            switch (Utility.Random(6))
            {
            case 0: PackItem(new BlackPearl(Utility.RandomMinMax(10, 15))); break;

            case 1: PackItem(new MandrakeRoot(Utility.RandomMinMax(10, 15))); break;

            case 2: PackItem(new SulfurousAsh(Utility.RandomMinMax(10, 15))); break;
            }

            PackGold(200, 250);
            PackScroll(1, 8);
            PackSlayer();

            switch (Utility.Random(10))
            {
            case 0: PackItem(new MortarPestle()); break;

            case 1: PackItem(new GreaterExplosionPotion()); break;
            }

            switch (Utility.Random(2))
            {
            case 0: PackWeapon(0, 5); break;

            case 1: PackArmor(0, 5); break;
            }

            switch (Utility.Random(3))
            {
            case 0: PackWeapon(0, 5); break;

            case 1: PackArmor(0, 5); break;
            }

            switch (Utility.Random(4))
            {
            case 0: PackWeapon(1, 5); break;

            case 1: PackArmor(1, 5); break;
            }
        }
예제 #20
0
        public Mesmenir() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = "a mesmenir";
            Body        = 0x7A;
            Hue         = 2583;
            BaseSoundID = 0xA8;

            SetStr(226, 252);
            SetDex(266, 285);
            SetInt(102, 121);

            SetHits(335, 398);

            SetDamage(12, 15);

            SetDamageType(ResistanceType.Physical, 60);
            SetDamageType(ResistanceType.Energy, 40);

            SetResistance(ResistanceType.Physical, 35);
            SetResistance(ResistanceType.Fire, 15);
            SetResistance(ResistanceType.Cold, 30);
            SetResistance(ResistanceType.Poison, 30);
            SetResistance(ResistanceType.Energy, 45);

            SetSkill(SkillName.MagicResist, 48.9, 69.7);
            SetSkill(SkillName.Tactics, 77.9, 88.8);
            SetSkill(SkillName.Wrestling, 48.6, 60.4);

            Fame  = 14500;
            Karma = -14500;

            Container pack = new Backpack();

            pack.DropItem(new Pitcher(BeverageType.Water));
            pack.DropItem(new Gold(Utility.RandomMinMax(21, 27)));

            if (0.03 > Utility.RandomDouble())
            {
                pack.DropItem(new Beryl());
            }

            if (0.10 > Utility.RandomDouble())
            {
                pack.DropItem(new NightSightScroll());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseArmor armor1 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor1, 3, 10, 25);

                pack.DropItem(armor1);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseArmor armor2 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor2, 3, 10, 25);

                pack.DropItem(armor2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 3, 10, 25);

                pack.DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 2, 10, 15);
                }

                pack.DropItem(necklace);
            }

            PackItem(pack);
        }
예제 #21
0
        public override void GenerateLoot()
        {
            AddLoot(LootPack.FilthyRich, 3);
            AddLoot(LootPack.MedScrolls, 5);
            AddLoot(LootPack.Gems, 3);

            if (Utility.RandomDouble() < 0.10)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 5, 15, 35);
                PackItem(weapon);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(5))
                {
                case 0: armor = new EbonsilkGloves(); break;

                case 1: armor = new EbonsilkGorget(); break;

                case 2: armor = new EbonsilkLegs(); break;

                case 3: armor = new EbonsilkArms(); break;

                default: armor = new EbonsilkChest(); break;
                }

                BaseRunicTool.ApplyAttributesTo(armor, 5, 15, 35);
                PackItem(armor);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 5, 15, 35);
                PackItem(clothing);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseShield shield = new BlackHeaterShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 15, 35);
                }
                PackItem(shield);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 15, 35);
                }
                PackItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 15, 35);
                }
                PackItem(earrings);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 15, 35);
                }
                PackItem(necklace);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel ring = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 15, 35);
                }
                PackItem(ring);
            }
        }
예제 #22
0
        public Mordrid()
            : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name = ("Mordrid");
            Body = 184;
            Hue  = 0;

            SetStr(800, 950);
            SetDex(91, 115);
            SetInt(300, 320);

            SetHits(2820, 3225);

            SetDamage(20, 22);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 0, 1);
            SetResistance(ResistanceType.Fire, 0, 1);
            SetResistance(ResistanceType.Poison, 0, 1);
            SetResistance(ResistanceType.Energy, 0, 1);
            SetResistance(ResistanceType.Cold, 0, 1);

            SetSkill(SkillName.EvalInt, 135.0, 100.0);
            SetSkill(SkillName.Tactics, 125.0, 130.0);
            SetSkill(SkillName.MagicResist, 75.0, 97.5);
            SetSkill(SkillName.Wrestling, 120.0, 135.0);
            SetSkill(SkillName.Meditation, 120.0);
            SetSkill(SkillName.Focus, 120.0);
            SetSkill(SkillName.Magery, 160.0, 180);

            Fame  = 2500;
            Karma = -2500;

            VirtualArmor = 70;

            int hairHue = 0;

            switch (Utility.Random(1))
            {
            case 0: AddItem(new LongHair(hairHue)); break;
            }

            AddItem(new Server.Items.HoodedShroudOfShadows(1109));
            AddItem(new Server.Items.Sandals(1157));
            AddItem(new Server.Items.FurCape(1109));

            GoldNecklace goldnecklace = new GoldNecklace();

            goldnecklace.Hue     = 1157;
            goldnecklace.Movable = false;
            AddItem(goldnecklace);

            GoldRing goldring = new GoldRing();

            goldring.Hue     = 1157;
            goldring.Movable = false;
            AddItem(goldring);

            Backpack backpack = new Backpack();

            backpack.Hue     = 1109;
            backpack.Movable = false;
            AddItem(backpack);

            ME me = new ME();

            me.Hue     = 1154;
            me.Movable = false;
            AddItem(me);
        }
예제 #23
0
        public override void GenerateLoot()
        {
            AddLoot(LootPack.FilthyRich, 2);
            AddLoot(LootPack.MedScrolls, 1);

            if (Utility.RandomDouble() < 0.10)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 3, 25, 30);

                PackItem(weapon);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 25, 30);

                PackItem(clothing);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield = new ScarabShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 25, 30);
                }

                PackItem(shield);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 25, 30);
                }

                PackItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 25, 30);
                }

                PackItem(earrings);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 25, 30);
                }

                PackItem(necklace);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel ring = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 25, 30);
                }

                PackItem(ring);
            }
        }
        public DragonianZealot() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = NameList.RandomName("dragon");
            Title       = "the dragonian zealot";
            Body        = 454;
            BaseSoundID = 362;

            SetStr(792, 825);
            SetDex(88, 110);
            SetInt(437, 475);

            SetHits(956, 990);
            SetMana(2185, 2375);

            SetDamage(16, 22);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 60);
            SetResistance(ResistanceType.Fire, 60);
            SetResistance(ResistanceType.Cold, 30);
            SetResistance(ResistanceType.Poison, 25);
            SetResistance(ResistanceType.Energy, 35);

            SetSkill(SkillName.EvalInt, 58.0, 80.4);
            SetSkill(SkillName.Magery, 87.5, 99.4);
            SetSkill(SkillName.MagicResist, 99.2, 100.0);
            SetSkill(SkillName.Tactics, 97.6, 100.0);
            SetSkill(SkillName.Wrestling, 91.0, 93.2);

            Fame  = 88000;
            Karma = -88000;

////////////////////////////////Main Pack////////////////////////////////

            PackGold(75, 92);
            PackReg(25, 35);

////////////////////////////////1st Backpack////////////////////////////////

            Container pack1 = new Backpack();

            pack1.DropItem(new Cloak(532));
            pack1.DropItem(new Circlet());

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor1 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor1, 5, 15, 30);

                pack1.DropItem(armor1);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor2 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor2, 5, 15, 30);

                pack1.DropItem(armor2);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor3 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor3, 5, 15, 30);

                pack1.DropItem(armor3);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor4 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor4, 5, 15, 30);

                pack1.DropItem(armor4);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseArmor armor5 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor5, 5, 15, 30);

                pack1.DropItem(armor5);
            }

            if (Utility.RandomDouble() < 0.50)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 5, 25, 30);

                pack1.DropItem(weapon);
            }

            Container bag1 = new Bag();

            bag1.DropItem(new Gold(Utility.RandomMinMax(50, 100)));
            bag1.DropItem(new Bandage(Utility.RandomMinMax(9, 18)));
            bag1.DropItem(Loot.RandomGem());
            bag1.DropItem(Loot.RandomGem());
            pack1.DropItem(bag1);

            PackItem(pack1);

////////////////////////////////2nd Backpack////////////////////////////////

            Container pack2 = new Backpack();

            if (Utility.RandomDouble() < 0.10)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 5, 15, 30);

                pack2.DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseArmor armor1 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor1, 5, 15, 30);

                pack2.DropItem(armor1);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseArmor armor2 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor2, 5, 15, 30);

                pack2.DropItem(armor2);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 15, 30);
                }

                pack2.DropItem(earrings);
            }

            Container bag2 = new Bag();

            bag2.DropItem(new Gold(Utility.RandomMinMax(100, 250)));
            bag2.DropItem(new DragonScale(Utility.RandomMinMax(15, 25)));
            bag2.DropItem(Loot.RandomPotion());
            bag2.DropItem(new GreaterCurePotion());
            bag2.DropItem(new GreaterStrengthPotion());
            bag2.DropItem(new HealPotion());
            bag2.DropItem(Loot.RandomGem());
            bag2.DropItem(Loot.RandomGem());
            pack2.DropItem(bag2);

            PackItem(pack2);

////////////////////////////////3rd Backpack////////////////////////////////

            Container pack3 = new Backpack();

            pack3.DropItem(new Spellbook());
            pack3.DropItem(Loot.RandomWand());
            pack3.DropItem(Loot.RandomClothing());
            pack3.DropItem(Loot.RandomClothing());

            if (Utility.RandomDouble() < 0.10)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 15, 30);

                pack3.DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 3, 15, 30);
                }

                pack3.DropItem(necklace);
            }

            Container bag3 = new Bag();

            bag3.DropItem(new Gold(Utility.RandomMinMax(25, 50)));
            bag3.DropItem(new Bandage(Utility.RandomMinMax(5, 15)));
            bag3.DropItem(Loot.RandomGem());

            Item ScrollLoot1 = Loot.RandomScroll(0, 50, SpellbookType.Regular);

            ScrollLoot1.Amount = Utility.Random(2, 5);
            bag3.DropItem(ScrollLoot1);

            Item ScrollLoot2 = Loot.RandomScroll(0, 50, SpellbookType.Regular);

            ScrollLoot2.Amount = Utility.Random(2, 5);
            bag3.DropItem(ScrollLoot2);

            Item ScrollLoot3 = Loot.RandomScroll(0, 50, SpellbookType.Regular);

            ScrollLoot3.Amount = Utility.Random(2, 5);
            bag3.DropItem(ScrollLoot3);

            pack3.DropItem(bag3);

            PackItem(pack3);
        }
예제 #25
0
        public override void OnDoubleClick(Mobile m)
        {
            Item RewardItem = null;

            if (IsChildOf(m.Backpack))
            {
                switch (Utility.Random(11))
                {
                case 0:
                {
                    RewardItem     = new GoldNecklace();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 1:
                {
                    RewardItem     = new GoldBeadNecklace();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 2:
                {
                    RewardItem     = new SilverNecklace();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 3:
                {
                    RewardItem     = new SilverBeadNecklace();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 4:
                {
                    RewardItem     = new GoldBracelet();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 5:
                {
                    RewardItem     = new SilverBracelet();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 6:
                {
                    RewardItem     = new GoldRing();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 7:
                {
                    RewardItem     = new SilverRing();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 8:
                {
                    RewardItem     = new SilverEarrings();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 9:
                {
                    RewardItem     = new GoldEarrings();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }

                case 10:
                {
                    RewardItem     = new Necklace();
                    RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                    break;
                }
                }

                m.AddToBackpack(RewardItem);
                Delete();
            }
            else
            {
                m.SendAsciiMessage("That must be in your pack for you to use it.");
            }
        }
예제 #26
0
		public override void OnDoubleClick( Mobile m )
		{
            Item RewardItem = null;

			if( IsChildOf( m.Backpack ) )
            {
                switch (Utility.Random(11))
                {
                    case 0:
                        {
                            RewardItem = new GoldNecklace();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 1:
                        {
                            RewardItem = new GoldBeadNecklace();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 2:
                        {
                            RewardItem = new SilverNecklace();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 3:
                        {
                            RewardItem = new SilverBeadNecklace();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 4:
                        {
                            RewardItem = new GoldBracelet();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 5:
                        {
                            RewardItem = new SilverBracelet();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 6:
                        {
                            RewardItem = new GoldRing();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 7:
                        {
                            RewardItem = new SilverRing();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 8:
                        {
                            RewardItem = new SilverEarrings();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 9:
                        {
                            RewardItem = new GoldEarrings();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }
                    case 10:
                        {
                            RewardItem = new Necklace();
                            RewardItem.Hue = Utility.RandomList(Sphere.RareHues);
                            break;
                        }   
                }

                m.AddToBackpack(RewardItem);
                Delete();
            }
			else
				m.SendAsciiMessage( "That must be in your pack for you to use it." );
		}
예제 #27
0
        public override void GenerateLoot()
        {
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield = new MetalKiteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 25, 30);
                }

                shield.Attributes.BonusStam = 8;

                PackItem(shield);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 15, 20);

                clothing.Attributes.BonusHits = 7;

                PackItem(clothing);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel1 = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel1, 3, 15, 20);
                }

                jewel1.Resistances.Fire = 5;

                PackItem(jewel1);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel2 = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel2, 3, 15, 20);
                }

                jewel2.Resistances.Fire = 7;

                PackItem(jewel2);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel jewel3 = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(jewel3, 3, 15, 20);
                }

                jewel3.Resistances.Fire = 6;

                PackItem(jewel3);
            }
        }
예제 #28
0
        public DragonianOverlord() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = NameList.RandomName("dragon");
            Title       = "the dragonian overlord";
            Body        = 399;
            BaseSoundID = 362;

            SetStr(1103, 1131);
            SetDex(99, 120);
            SetInt(734, 752);

            SetHits(956, 990);
            SetMana(3670, 3760);

            SetDamage(15, 25);

            SetDamageType(ResistanceType.Physical, 75);
            SetDamageType(ResistanceType.Fire, 25);

            SetResistance(ResistanceType.Physical, 70);
            SetResistance(ResistanceType.Fire, 80);
            SetResistance(ResistanceType.Cold, 10);
            SetResistance(ResistanceType.Poison, 60);
            SetResistance(ResistanceType.Energy, 60);

            SetSkill(SkillName.EvalInt, 72.8, 78.2);
            SetSkill(SkillName.Magery, 85.8, 99.3);
            SetSkill(SkillName.Meditation, 61.7, 64.4);
            SetSkill(SkillName.MagicResist, 120.1, 133.0);
            SetSkill(SkillName.Tactics, 99.6, 100.0);
            SetSkill(SkillName.Wrestling, 98.6, 99.0);

            Fame  = 222500;
            Karma = -222500;

////////////////////////////////Main Pack////////////////////////////////

            PackGold(350, 500);
            PackReg(45, 55);
            PackItem(new MeteorSwarmScroll());

////////////////////////////////1st Backpack////////////////////////////////

            Container pack1 = new Backpack();

            pack1.DropItem(new Cloak(762));
            pack1.DropItem(new RoyalCirclet());

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor1 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor1, 5, 15, 30);

                pack1.DropItem(armor1);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor2 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor2, 5, 15, 30);

                pack1.DropItem(armor2);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor3 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor3, 5, 15, 30);

                pack1.DropItem(armor3);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor4 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor4, 5, 15, 30);

                pack1.DropItem(armor4);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseArmor armor5 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor5, 5, 15, 30);

                pack1.DropItem(armor5);
            }

            if (Utility.RandomDouble() < 0.50)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 5, 25, 30);

                pack1.DropItem(weapon);
            }

            Container bag1 = new Bag();

            bag1.DropItem(new Gold(Utility.RandomMinMax(50, 100)));
            bag1.DropItem(new Bandage(Utility.RandomMinMax(9, 18)));
            bag1.DropItem(Loot.RandomGem());
            bag1.DropItem(Loot.RandomGem());
            pack1.DropItem(bag1);

            PackItem(pack1);

////////////////////////////////2nd Backpack////////////////////////////////

            Container pack2 = new Backpack();

            if (Utility.RandomDouble() < 0.25)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 5, 15, 30);

                pack2.DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor1 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor1, 5, 15, 30);

                pack2.DropItem(armor1);
            }

            if (Utility.RandomDouble() < 0.25)
            {
                BaseArmor armor2 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor2, 5, 15, 30);

                pack2.DropItem(armor2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 15, 30);
                }

                pack2.DropItem(earrings);
            }

            Container bag2 = new Bag();

            bag2.DropItem(new Gold(Utility.RandomMinMax(250, 300)));
            bag2.DropItem(new DragonScale(Utility.RandomMinMax(25, 35)));
            bag2.DropItem(Loot.RandomPotion());
            bag2.DropItem(new GreaterCurePotion());
            bag2.DropItem(new GreaterStrengthPotion());
            bag2.DropItem(new GreaterHealPotion());
            bag2.DropItem(Loot.RandomGem());
            bag2.DropItem(Loot.RandomGem());
            bag2.DropItem(Loot.RandomGem());
            pack2.DropItem(bag2);

            PackItem(pack2);

////////////////////////////////3rd Backpack////////////////////////////////

            Container pack3 = new Backpack();

            pack3.DropItem(new Spellbook());
            pack3.DropItem(Loot.RandomWand());
            pack3.DropItem(Loot.RandomWand());
            pack3.DropItem(Loot.RandomClothing());
            pack3.DropItem(Loot.RandomClothing());

            if (Utility.RandomDouble() < 0.25)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 15, 30);

                pack3.DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 3, 15, 30);
                }

                pack3.DropItem(necklace);
            }

            Container bag3 = new Bag();

            bag3.DropItem(new Gold(Utility.RandomMinMax(25, 50)));
            bag3.DropItem(new Bandage(Utility.RandomMinMax(9, 18)));
            bag3.DropItem(Loot.RandomGem());
            bag3.DropItem(Loot.RandomGem());

            Item ScrollLoot1 = Loot.RandomScroll(0, 50, SpellbookType.Regular);

            ScrollLoot1.Amount = Utility.Random(5, 10);
            bag3.DropItem(ScrollLoot1);

            Item ScrollLoot2 = Loot.RandomScroll(0, 50, SpellbookType.Regular);

            ScrollLoot2.Amount = Utility.Random(5, 10);
            bag3.DropItem(ScrollLoot2);

            Item ScrollLoot3 = Loot.RandomScroll(0, 50, SpellbookType.Regular);

            ScrollLoot3.Amount = Utility.Random(5, 10);
            bag3.DropItem(ScrollLoot3);

            pack3.DropItem(bag3);

            PackItem(pack3);
        }
        public DeepOne() : base(AIType.AI_Melee, FightMode.Closest, 6, 1, 0.2, 0.4)
        {
            Name        = "a deep one";
            Body        = 376;
            BaseSoundID = 0x275;

            SetStr(144, 179);
            SetDex(75, 81);
            SetInt(22, 36);

            SetHits(175, 200);

            SetDamage(5, 9);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 30);
            SetResistance(ResistanceType.Fire, 10);
            SetResistance(ResistanceType.Cold, 20);
            SetResistance(ResistanceType.Poison, 10);
            SetResistance(ResistanceType.Energy, 0);

            SetSkill(SkillName.Anatomy, 20.0);
            SetSkill(SkillName.MagicResist, 35.1, 37.2);
            SetSkill(SkillName.Tactics, 50.1, 75.0);
            SetSkill(SkillName.Wrestling, 50.1, 75.0);

            Fame  = 2800;
            Karma = -2800;

            AddItem(new LightSource());

            PackReg(1, 5);

            Container pack = new Backpack();

            pack.DropItem(new Pitcher(BeverageType.Water));
            pack.DropItem(new Gold(Utility.RandomMinMax(6, 12)));
            pack.DropItem(Loot.RandomStatue());
            pack.DropItem(new Pearl());

            if (0.04 > Utility.RandomDouble())
            {
                pack.DropItem(new TurquoiseCustom());
            }

            if (0.03 > Utility.RandomDouble())
            {
                pack.DropItem(Loot.RandomGem());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing1 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing1, 3, 10, 25);

                pack.DropItem(clothing1);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing2 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing2, 3, 10, 25);

                pack.DropItem(clothing2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 3, 10, 25);

                pack.DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 2, 10, 15);
                }

                pack.DropItem(necklace);
            }

            PackItem(pack);

            switch (Utility.Random(3))
            {
            case 0: AddItem(Loot.RandomArmor()); break;

            case 1: AddItem(Loot.RandomClothing()); break;

            case 2: AddItem(Loot.RandomWeapon()); break;
            }
        }
예제 #30
0
        public Talon()
            : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Title = "Student of the arts";
            Name  = "Talon";
            Body  = 400;
            Hue   = 33770;

            Blessed = true;

            SetStr(900, 1100);
            SetDex(291, 315);
            SetInt(600, 720);

            SetHits(1520, 1725);

            SetDamage(10, 15);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 0, 1);
            SetResistance(ResistanceType.Fire, 0, 1);
            SetResistance(ResistanceType.Poison, 0, 1);
            SetResistance(ResistanceType.Energy, 0, 1);

            SetSkill(SkillName.EvalInt, 85.0, 100.0);
            SetSkill(SkillName.Tactics, 75.1, 100.0);
            SetSkill(SkillName.MagicResist, 75.0, 97.5);
            SetSkill(SkillName.Wrestling, 20.2, 60.0);
            SetSkill(SkillName.Meditation, 120.0);
            SetSkill(SkillName.Focus, 120.0);
            SetSkill(SkillName.Magery, 140.0, 150.0);

            Fame  = 2500;
            Karma = -2500;

            VirtualArmor = 50;

            int hairHue = 0;

            Blessed = true;

            switch (Utility.Random(1))
            {
            case 0: AddItem(new LongHair(hairHue)); break;
            }
            switch (Utility.Random(1))
            {
            case 0: AddItem(new ShortBeard(hairHue)); break;
            }

            AddItem(new Server.Items.HoodedShroudOfShadows(0));
            AddItem(new Server.Items.Sandals(0));

            GoldNecklace goldnecklace = new GoldNecklace();

            goldnecklace.Hue     = 0;
            goldnecklace.Movable = false;
            AddItem(goldnecklace);

            GoldRing goldring = new GoldRing();

            goldring.Hue     = 0;
            goldring.Movable = false;
            AddItem(goldring);

            Backpack backpack = new Backpack();

            backpack.Hue     = 1150;
            backpack.Movable = false;
            AddItem(backpack);
        }
예제 #31
0
        public Kappa() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name = "a kappa";
            Body = 240;

            SetStr(186, 230);
            SetDex(51, 75);
            SetInt(41, 55);

            SetMana(30);

            SetHits(250, 320);

            SetDamage(6, 12);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 35);
            SetResistance(ResistanceType.Fire, 35);
            SetResistance(ResistanceType.Cold, 25);
            SetResistance(ResistanceType.Poison, 35);
            SetResistance(ResistanceType.Energy, 5);

            SetSkill(SkillName.MagicResist, 60.1, 70.0);
            SetSkill(SkillName.Tactics, 79.1, 89.0);
            SetSkill(SkillName.Wrestling, 60.1, 70.0);

            Fame  = 13500;
            Karma = -13500;

            Container pack = new Backpack();

            pack.DropItem(new Gold(Utility.RandomMinMax(16, 32)));

            if (0.04 > Utility.RandomDouble())
            {
                pack.DropItem(new Amethyst());
            }

            if (0.03 > Utility.RandomDouble())
            {
                pack.DropItem(Loot.RandomGem());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing1 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing1, 3, 10, 25);

                pack.DropItem(clothing1);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing2 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing2, 3, 10, 25);

                pack.DropItem(clothing2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon, 3, 10, 25);

                pack.DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 2, 10, 15);
                }

                pack.DropItem(necklace);
            }

            PackItem(pack);

            switch (Utility.Random(3))
            {
            case 0: AddItem(Loot.RandomArmor()); break;

            case 1: AddItem(Loot.RandomClothing()); break;

            case 2: AddItem(Loot.RandomWeapon()); break;
            }
        }