Пример #1
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);
            }
        }
        public DragonSanctuarySamuraiSunElf() : base(AIType.AI_Melee, FightMode.Closest, 15, 1, 0.1, 0.2)
        {
            SetStr(755, 788);
            SetDex(300, 500);
            SetInt(100, 200);

            SetHits(500, 600);

            SetDamage(12, 15);

            SetSkill(SkillName.Anatomy, 100.0);
            SetSkill(SkillName.MagicResist, 70.0);
            SetSkill(SkillName.Swords, 100.0);
            SetSkill(SkillName.Tactics, 100.0);

            Karma = 10000;

            m_Timer = new MoveTimer(this);
            ChangeLocation();

            PackItem(new Bandage(Utility.RandomMinMax(15, 20)));

            if (this.Female = Utility.RandomBool())
            {
                Name       = NameList.RandomName("elven female");
                Title      = "Ljosalfar Samurai of Dragon Sanctuary";
                Body       = 606;
                Hue        = Utility.RandomList(1002, 1003, 1009, 1010, 1011, 1016, 1017, 1023, 1030);
                HairHue    = Utility.RandomList(1502, 1507, 1513, 2213, 2216, 2218);
                HairItemID = Utility.RandomList(12224, 12225, 12236, 12237, 12238, 12239);

                RadiantScimitar weapon = new RadiantScimitar();
                BaseRunicTool.ApplyAttributesTo(weapon, 5, 25, 35);
                weapon.Slayer = SlayerName.ReptilianDeath;
                weapon.WeaponAttributes.HitLightning = 25;
                weapon.Hue     = 0x4D5;
                weapon.Movable = true;
                AddItem(weapon);

                AmazonianFighterHelmet helmet = new AmazonianFighterHelmet();
                helmet.Movable = true;
                AddItem(helmet);

                AmazonianFighterBustier chest = new AmazonianFighterBustier();
                chest.Movable = true;
                AddItem(chest);

                AmazonianFighterGloves gloves = new AmazonianFighterGloves();
                gloves.Movable = true;
                AddItem(gloves);

                AddItem(new AmazonianFighterBelt());
                AddItem(new AmazonianFighterBoots());

                new Unicorn().Rider = this;
            }
            else
            {
                Name       = NameList.RandomName("elven male");
                Title      = "Ljosalfar Samurai of Dragon Sanctuary";
                Body       = 605;
                Hue        = Utility.RandomList(1002, 1003, 1009, 1010, 1011, 1016, 1017, 1023, 1030);
                HairHue    = Utility.RandomList(1502, 1507, 1513, 2213, 2216, 2218);
                HairItemID = Utility.RandomList(12224, 12225, 12236, 12237, 12238, 12239);

                SetSkill(SkillName.Fencing, 100.0);

                WarCleaver weapon = new WarCleaver();
                BaseRunicTool.ApplyAttributesTo(weapon, 5, 25, 35);
                weapon.Slayer = SlayerName.ReptilianDeath;
                weapon.WeaponAttributes.HitLightning = 25;
                weapon.Hue     = 0x4D5;
                weapon.Movable = true;
                AddItem(weapon);

                DecorativePlateKabuto helm = new DecorativePlateKabuto();
                BaseRunicTool.ApplyAttributesTo(helm, 5, 25, 35);
                helm.Hue     = 0x4D5;
                helm.Movable = true;
                AddItem(helm);

                PlateMempo gorget = new PlateMempo();
                BaseRunicTool.ApplyAttributesTo(gorget, 5, 25, 35);
                gorget.Hue     = 0x4D5;
                gorget.Movable = true;
                AddItem(gorget);

                PlateHiroSode arms = new PlateHiroSode();
                BaseRunicTool.ApplyAttributesTo(arms, 5, 25, 35);
                arms.Hue     = 0x4D5;
                arms.Movable = true;
                AddItem(arms);

                PlateDo chest = new PlateDo();
                BaseRunicTool.ApplyAttributesTo(chest, 5, 25, 35);
                chest.Hue     = 0x4D5;
                chest.Movable = true;
                AddItem(chest);

                PlateHaidate legs = new PlateHaidate();
                BaseRunicTool.ApplyAttributesTo(legs, 5, 25, 35);
                legs.Hue     = 0x4D5;
                legs.Movable = true;
                AddItem(legs);

                FurBoots boots = new FurBoots();
                BaseRunicTool.ApplyAttributesTo(boots, 5, 25, 35);
                boots.Hue     = 0x4D5;
                boots.Movable = true;
                AddItem(boots);

                new Kirin().Rider = this;
            }
        }