Inheritance: BaseShield
Exemple #1
0
        public MilitiaFighter()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            InitStats( 40, 30, 5 );
            Title = "the Militia Fighter";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            Female = false;
            Body = 0x190;
            Name = NameList.RandomName( "male" );

            Utility.AssignRandomHair( this );
            Utility.AssignRandomFacialHair( this, HairHue );

            AddItem( new ThighBoots( 0x1BB ) );
            AddItem( new LeatherChest() );
            AddItem( new LeatherArms() );
            AddItem( new LeatherLegs() );
            AddItem( new LeatherCap() );
            AddItem( new LeatherGloves() );
            AddItem( new LeatherGorget() );

            Item weapon;
            switch ( Utility.Random( 6 ) )
            {
                case 0:
                    weapon = new Broadsword();
                    break;
                case 1:
                    weapon = new Cutlass();
                    break;
                case 2:
                    weapon = new Katana();
                    break;
                case 3:
                    weapon = new Longsword();
                    break;
                case 4:
                    weapon = new Scimitar();
                    break;
                default:
                    weapon = new VikingSword();
                    break;
            }
            weapon.Movable = false;
            AddItem( weapon );

            Item shield = new BronzeShield();
            shield.Movable = false;
            AddItem( shield );

            SetSkill( SkillName.Swords, 20.0 );
        }
Exemple #2
0
        public Jailor()
            : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.45, 0.8)
        {
            Female = Utility.RandomBool();
            Body = Female ? 401 : 400;
            Title = "the jailor";
            Name = NameList.RandomName( Female ? "female" : "male" );
            Hue = Utility.RandomSkinHue();
            SetStr( 96, 110 );
            SetDex( 96, 110 );
            SetInt( 71, 85 );
            Karma = Utility.RandomMinMax( 13, -45 );

            SetSkill( SkillName.Tactics, 75, 97.5 );
            SetSkill( SkillName.MagicResist, 75, 97.5 );
            SetSkill( SkillName.Parry, 75, 97.5 );
            SetSkill( SkillName.Swords, 15, 37.5 );
            SetSkill( SkillName.Macing, 15, 37.5 );
            SetSkill( SkillName.Fencing, 15, 37.5 );
            SetSkill( SkillName.Wrestling, 15, 37.5 );

            Item item = null;
            if ( !Female )
            {
                item = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                item = AddRandomFacialHair( item.Hue );
                item = new ChainChest();
                AddItem( item );
                item = new ChainLegs();
                AddItem( item );
                item = new BronzeShield();
                AddItem( item );
                item = new Boots();
                item.Hue = Utility.RandomNeutralHue();
                AddItem( item );
                item = new VikingSword();
                AddItem( item );
                PackGold( 15, 100 );
            } else {
                item = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                item = new ChainChest();
                AddItem( item );
                item = new ChainLegs();
                AddItem( item );
                item = new BronzeShield();
                AddItem( item );
                item = new Boots();
                item.Hue = Utility.RandomNeutralHue();
                AddItem( item );
                item = new VikingSword();
                AddItem( item );
                PackGold( 15, 100 );
            }
        }
        public MilitiaFighter()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            InitStats( 40, 30, 5 );
            Title = "the Militia Fighter";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            Female = false;
            Body = 0x190;
            Name = NameList.RandomName( "male" );

            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 );

            Item beard = new Item( Utility.RandomList( 0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D ) );
            beard.Hue = hair.Hue;
            beard.Layer = Layer.FacialHair;
            beard.Movable = false;
            AddItem( beard );

            AddItem( new ThighBoots( 0x1BB ) );
            AddItem( new LeatherChest() );
            AddItem( new LeatherArms() );
            AddItem( new LeatherLegs() );
            AddItem( new LeatherCap() );
            AddItem( new LeatherGloves() );
            AddItem( new LeatherGorget() );

            Item weapon;
            switch ( Utility.Random( 6 ) )
            {
                case 0: weapon = new Broadsword(); break;
                case 1: weapon = new Cutlass(); break;
                case 2: weapon = new Katana(); break;
                case 3: weapon = new Longsword(); break;
                case 4: weapon = new Scimitar(); break;
                default: weapon = new VikingSword(); break;
            }
            weapon.Movable = false;
            AddItem( weapon );

            Item shield = new BronzeShield();
            shield.Movable = false;
            AddItem( shield );

            SetSkill( SkillName.Swords, 20.0 );
        }
        public IguanaCoveTreasureChest1() : base(0xE43)
        {
            Name    = "a treasure chest -40-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 40;
            LockLevel     = 40;
            MaxLockLevel  = 80;

/////////////////////////////////// Gold
            if (Utility.RandomDouble() < 0.25)
            {
                DropItem(new Gold(Utility.Random(20, 300)));
            }

/////////////////////////////////////// Supplies

            switch (Utility.Random(19))
            {
            case 0: DropItem(new Board(70)); break;

            case 1: DropItem(new BoltOfCloth(70)); break;

            case 2: DropItem(new Bottle(70)); break;

            case 3: DropItem(new CopperWire(70)); break;

            case 4: DropItem(new Cotton(70)); break;

            case 5: DropItem(new DarkYarn(70)); break;

            case 6: DropItem(new Feather(70)); break;

            case 7: DropItem(new Flax(70)); break;

            case 8: DropItem(new Gears(70)); break;

            case 9: DropItem(new GoldWire(70)); break;

            case 10: DropItem(new IronIngot(70)); break;

            case 11: DropItem(new IronWire(70)); break;

            case 12: DropItem(new Leather(70)); break;

            case 13: DropItem(new LightYarn(70)); break;

            case 14: DropItem(new Shaft(70)); break;

            case 15: DropItem(new SilverWire(70)); break;

            case 16: DropItem(new SpoolOfThread(70)); break;

            case 17: DropItem(new Springs(70)); break;

            case 18: DropItem(new Wool(70)); break;
            }

            switch (Utility.Random(5))
            {
            case 0: DropItem(new ArcaneStone(15)); break;

            case 1: DropItem(new BeetleEgg(15)); break;

            case 2: DropItem(new DragonScale(15)); break;

            case 3: DropItem(new FishScale(15)); break;

            case 4: DropItem(new SerpentScale(15)); break;
            }

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.RandomMinMax(5, 10);
            DropItem(ReagentLoot);

            if (Utility.RandomDouble() < 0.05)
            {
                DropItem(new SackFlour());
            }

/////////////////////////////////////// Rare Items

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new DyeTub());
            }

/////////////////////////////////////// LV 20-30
            if (Utility.RandomDouble() < 0.10)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                switch (Utility.Random(31))
                {
                case 0: weapon = new DoubleAxe(); break;                      // Lv20

                case 1: weapon = new TwoHandedAxe(); break;                   // Lv25

                case 2: weapon = new WarAxe(); break;                         // Lv30

                case 3: weapon = new CompositeBow(); break;                   // Lv20

                case 4: weapon = new EbonyCrossbow(); break;                  // Lv20

                case 5: weapon = new FireBow(); break;                        // Lv25

                case 6: weapon = new GrassBow(); break;                       // Lv25

                case 7: weapon = new IceBow(); break;                         // Lv25

                case 8: weapon = new LightningBow(); break;                   // Lv25

                case 9: weapon = new EbonyWarBow(); break;                    // Lv30

                case 10: weapon = new PistolCrossbow(); break;                // Lv30

                case 11: weapon = new EbonyDualDaggers(); break;              // Lv20

                case 12: weapon = new Tekagi(); break;                        // Lv25

                case 13: weapon = new ElvenSpellblade(); break;               // Lv30

                case 14: weapon = new WarMace(); break;                       // Lv20

                case 15: weapon = new Tessen(); break;                        // Lv25

                case 16: weapon = new HammerPick(); break;                    // Lv30

                case 17: weapon = new Spear(); break;                         // Lv20

                case 18: weapon = new BoneSpear(); break;                     // Lv25

                case 19: weapon = new BubbleStaff(); break;                   // Lv25

                case 20: weapon = new CrystalStaff(); break;                  // Lv25

                case 21: weapon = new EnergyStaff(); break;                   // Lv25

                case 22: weapon = new FireStaff(); break;                     // Lv25

                case 23: weapon = new VineStaff(); break;                     // Lv25

                case 24: weapon = new BlackStaff(); break;                    // Lv30

                case 25: weapon = new VikingSword(); break;                   // Lv20

                case 26: weapon = new Wakizashi(); break;                     // Lv20

                case 27: weapon = new Daisho(); break;                        // Lv30

                case 28: weapon = new EbonyScimitar(); break;                 // Lv30

                case 29: weapon = new RuneBlade(); break;                     // Lv30

                default: weapon = new Longsword(); break;                     // Lv20
                }

                BaseRunicTool.ApplyAttributesTo(weapon, 2, 5, 50);
                DropItem(weapon);
            }

/////////////////////////////////////// LV 18-27
            if (Utility.RandomDouble() < 0.10)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(18))
                {
                case 0: armor = new HideFemaleChest(); break;                   // Lv18

                case 1: armor = new HideGloves(); break;                        // Lv18

                case 2: armor = new HideGorget(); break;                        // Lv18

                case 3: armor = new HidePants(); break;                         // Lv18

                case 4: armor = new HidePauldrons(); break;                     // Lv18

                case 5: armor = new StuddedDo(); break;                         // Lv21

                case 6: armor = new StuddedHaidate(); break;                    // Lv21

                case 7: armor = new StuddedHiroSode(); break;                   // Lv21

                case 8: armor = new StuddedMempo(); break;                      // Lv21

                case 9: armor = new StuddedSuneate(); break;                    // Lv21

                case 10: armor = new VikingStuddedArms(); break;                // Lv24

                case 11: armor = new VikingStuddedCap(); break;                 // Lv24

                case 12: armor = new VikingStuddedChest(); break;               // Lv24

                case 13: armor = new VikingStuddedLegs(); break;                // Lv24

                case 14: armor = new ChainChest(); break;                       // Lv27

                case 15: armor = new ChainCoif(); break;                        // Lv27

                case 16: armor = new ChainLegs(); break;                        // Lv27

                default: armor = new HideChest(); break;                        // Lv18
                }

                BaseRunicTool.ApplyAttributesTo(armor, 3, 5, 50);
                DropItem(armor);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseHat hat = Loot.RandomHat(true);
                BaseRunicTool.ApplyAttributesTo(hat, 3, 12, 15);
                DropItem(hat);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 12, 15);
                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield1 = new Buckler();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield1, 3, 5, 50);
                }
                DropItem(shield1);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield2 = new WoodenShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield2, 3, 5, 50);
                }
                DropItem(shield2);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield3 = new AmmoniteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield3, 3, 5, 50);
                }
                DropItem(shield3);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield4 = new BronzeShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield4, 3, 5, 50);
                }
                DropItem(shield4);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield5 = new MetalShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield5, 3, 5, 50);
                }
                DropItem(shield5);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield6 = new WoodenKiteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield6, 3, 5, 50);
                }
                DropItem(shield6);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel bracelet = new SilverBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 3, 12, 15);
                }
                DropItem(bracelet);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel earrings = new SilverEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 3, 12, 15);
                }
                DropItem(earrings);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel necklace = new SilverNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 3, 12, 15);
                }
                DropItem(necklace);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel ring = new SilverRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 3, 12, 15);
                }
                DropItem(ring);
            }
        }
Exemple #5
0
        public MongbatHideoutTreasureChest1() : base(0xE43)
        {
            Name    = "a treasure chest -40-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 40;
            LockLevel     = 40;
            MaxLockLevel  = 80;

/////////////////////////////////// Gold
            if (Utility.RandomDouble() < 0.25)
            {
                DropItem(new Gold(Utility.Random(20, 300)));
            }

/////////////////////////////////////// Supplies

            switch (Utility.Random(19))
            {
            case 0: DropItem(new Board(60)); break;

            case 1: DropItem(new BoltOfCloth(60)); break;

            case 2: DropItem(new Bottle(60)); break;

            case 3: DropItem(new CopperWire(60)); break;

            case 4: DropItem(new Cotton(60)); break;

            case 5: DropItem(new DarkYarn(60)); break;

            case 6: DropItem(new Feather(60)); break;

            case 7: DropItem(new Flax(60)); break;

            case 8: DropItem(new Gears(60)); break;

            case 9: DropItem(new GoldWire(60)); break;

            case 10: DropItem(new IronIngot(60)); break;

            case 11: DropItem(new IronWire(60)); break;

            case 12: DropItem(new Leather(60)); break;

            case 13: DropItem(new LightYarn(60)); break;

            case 14: DropItem(new Shaft(60)); break;

            case 15: DropItem(new SilverWire(60)); break;

            case 16: DropItem(new SpoolOfThread(60)); break;

            case 17: DropItem(new Springs(60)); break;

            case 18: DropItem(new Wool(60)); break;
            }

            switch (Utility.Random(5))
            {
            case 0: DropItem(new BeetleEgg(15)); break;

            case 1: DropItem(new FishScale(15)); break;

            case 2: DropItem(new Nirnroot(15)); break;

            case 3: DropItem(new SerpentScale(15)); break;

            case 4: DropItem(new ThunderStone(15)); break;
            }

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.RandomMinMax(5, 10);
            DropItem(ReagentLoot);

            if (Utility.RandomDouble() < 0.05)
            {
                DropItem(new SackFlour());
            }

/////////////////////////////////////// Rare Items

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new DyeTub());
            }

/////////////////////////////////////// LV 1-15
            if (Utility.RandomDouble() < 0.10)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                switch (Utility.Random(36))
                {
                case 0: weapon = new Hatchet(); break;                     // Lv1

                case 1: weapon = new Axe(); break;                         // Lv5

                case 2: weapon = new BattleAxe(); break;                   // Lv10

                case 3: weapon = new Bow(); break;                         // Lv1

                case 4: weapon = new Crossbow(); break;                    // Lv1

                case 5: weapon = new Balestra(); break;                    // Lv5

                case 6: weapon = new ElvenLeafBow(); break;                // Lv5

                case 7: weapon = new MagicalShortbow(); break;             // Lv10

                case 8: weapon = new RepeatingCrossbow(); break;           // Lv10

                case 9: weapon = new SkinningKnife(); break;               // Lv1

                case 10: weapon = new Cleaver(); break;                    // Lv5

                case 11: weapon = new Dagger(); break;                     // Lv5

                case 12: weapon = new ButcherKnife(); break;               // Lv10

                case 13: weapon = new EbonyDagger(); break;                // Lv10

                case 14: weapon = new Sai(); break;                        // Lv15

                case 15: weapon = new Club(); break;                       // Lv1

                case 16: weapon = new Nunchaku(); break;                   // Lv1

                case 17: weapon = new Mace(); break;                       // Lv5

                case 18: weapon = new Maul(); break;                       // Lv10

                case 19: weapon = new Scepter(); break;                    // Lv15

                case 20: weapon = new Pitchfork(); break;                  // Lv1

                case 21: weapon = new ShortSpear(); break;                 // Lv5

                case 22: weapon = new Pilum(); break;                      // Lv10

                case 23: weapon = new Pike(); break;                       // Lv15

                case 24: weapon = new GnarledStaff(); break;               // Lv1

                case 25: weapon = new ShepherdsCrook(); break;             // Lv1

                case 26: weapon = new QuarterStaff(); break;               // Lv10

                case 27: weapon = new ReptilianStaff(); break;             // Lv15

                case 28: weapon = new Bokuto(); break;                     // Lv1

                case 29: weapon = new BoneHarvester(); break;              // Lv1

                case 30: weapon = new Cutlass(); break;                    // Lv1

                case 31: weapon = new ElvenMachete(); break;               // Lv1

                case 32: weapon = new Kryss(); break;                      // Lv1

                case 33: weapon = new EbonyRapier(); break;                // Lv10

                case 34: weapon = new Scimitar(); break;                   // Lv10

                default: weapon = new Leafblade(); break;                  // Lv1
                }

                switch (Utility.Random(14))
                {
                case 0: weapon.Attributes.AttackChance = Utility.RandomMinMax(1, 5); break;

                case 1: weapon.Attributes.DefendChance = Utility.RandomMinMax(1, 5); break;

                case 2: weapon.Attributes.Luck = Utility.RandomMinMax(1, 10); break;

                case 3: weapon.Attributes.WeaponSpeed = Utility.RandomMinMax(1, 25); break;

                case 4: weapon.WeaponAttributes.HitDispel = Utility.RandomMinMax(2, 10); break;

                case 5: weapon.WeaponAttributes.HitFireball = Utility.RandomMinMax(2, 10); break;

                case 6: weapon.WeaponAttributes.HitHarm = Utility.RandomMinMax(2, 10); break;

                case 7: weapon.WeaponAttributes.HitLeechHits = Utility.RandomMinMax(2, 10); break;

                case 8: weapon.WeaponAttributes.HitLeechMana = Utility.RandomMinMax(2, 10); break;

                case 9: weapon.WeaponAttributes.HitLeechStam = Utility.RandomMinMax(2, 10); break;

                case 10: weapon.WeaponAttributes.HitLightning = Utility.RandomMinMax(2, 10); break;

                case 11: weapon.WeaponAttributes.HitLowerAttack = Utility.RandomMinMax(2, 10); break;

                case 12: weapon.WeaponAttributes.HitLowerDefend = Utility.RandomMinMax(2, 10); break;

                default: weapon.Attributes.WeaponDamage = Utility.RandomMinMax(1, 10); break;
                }

                DropItem(weapon);
            }

/////////////////////////////////////// LV 1-15
            if (Utility.RandomDouble() < 0.10)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(39))
                {
                case 0: armor = new LeatherArms(); break;                       // Lv1

                case 1: armor = new LeatherBustierArms(); break;                // Lv1

                case 2: armor = new LeatherCap(); break;                        // Lv1

                case 3: armor = new LeatherChest(); break;                      // Lv1

                case 4: armor = new LeatherGloves(); break;                     // Lv1

                case 5: armor = new LeatherGorget(); break;                     // Lv1

                case 6: armor = new LeatherLegs(); break;                       // Lv1

                case 7: armor = new LeatherShorts(); break;                     // Lv1

                case 8: armor = new LeatherSkirt(); break;                      // Lv1

                case 9: armor = new FemaleLeafChest(); break;                   // Lv1

                case 10: armor = new LeafArms(); break;                         // Lv3

                case 11: armor = new LeafChest(); break;                        // Lv3

                case 12: armor = new LeafGloves(); break;                       // Lv3

                case 13: armor = new LeafGorget(); break;                       // Lv3

                case 14: armor = new LeafLegs(); break;                         // Lv3

                case 15: armor = new LeafTonlet(); break;                       // Lv3

                case 16: armor = new LeatherDo(); break;                        // Lv6

                case 17: armor = new LeatherHaidate(); break;                   // Lv6

                case 18: armor = new LeatherHiroSode(); break;                  // Lv6

                case 19: armor = new LeatherJingasa(); break;                   // Lv6

                case 20: armor = new LeatherMempo(); break;                     // Lv6

                case 21: armor = new LeatherNinjaHood(); break;                 // Lv6

                case 22: armor = new LeatherNinjaJacket(); break;               // Lv6

                case 23: armor = new LeatherNinjaMitts(); break;                // Lv6

                case 24: armor = new LeatherNinjaPants(); break;                // Lv6

                case 25: armor = new LeatherSuneate(); break;                   // Lv6

                case 26: armor = new EbonsilkArms(); break;                     // Lv9

                case 27: armor = new EbonsilkChest(); break;                    // Lv9

                case 28: armor = new EbonsilkGloves(); break;                   // Lv9

                case 29: armor = new EbonsilkGorget(); break;                   // Lv9

                case 30: armor = new EbonsilkLegs(); break;                     // Lv9

                case 31: armor = new EbonsilkTiara(); break;                    // Lv9

                case 32: armor = new ChitinArms(); break;                       // Lv12

                case 33: armor = new ChitinChest(); break;                      // Lv12

                case 34: armor = new ChitinGloves(); break;                     // Lv12

                case 35: armor = new ChitinGorget(); break;                     // Lv12

                case 36: armor = new ChitinHelmet(); break;                     // Lv12

                case 37: armor = new ChitinLegs(); break;                       // Lv12

                default: armor = new FemaleLeatherChest(); break;               // Lv1
                }

                BaseRunicTool.ApplyAttributesTo(armor, 3, 5, 50);
                DropItem(armor);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseHat hat = Loot.RandomHat(true);
                BaseRunicTool.ApplyAttributesTo(hat, 3, 5, 10);
                DropItem(hat);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 5, 10);
                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield1 = new Buckler();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield1, 3, 5, 50);
                }
                DropItem(shield1);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield2 = new WoodenShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield2, 3, 5, 50);
                }
                DropItem(shield2);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield3 = new AmmoniteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield3, 3, 5, 50);
                }
                DropItem(shield3);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield4 = new BronzeShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield4, 3, 5, 50);
                }
                DropItem(shield4);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield5 = new MetalShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield5, 3, 5, 50);
                }
                DropItem(shield5);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseShield shield6 = new WoodenKiteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield6, 3, 5, 50);
                }
                DropItem(shield6);
            }

            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel bracelet = new SilverBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 3, 5, 10);
                }
                DropItem(bracelet);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel earrings = new SilverEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 3, 5, 10);
                }
                DropItem(earrings);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel necklace = new SilverNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 3, 5, 10);
                }
                DropItem(necklace);
            }
            if (Utility.RandomDouble() < 0.05)
            {
                BaseJewel ring = new SilverRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 3, 5, 10);
                }
                DropItem(ring);
            }
        }
		public MadSorceress() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.2)
		{

			Name = "a mad sorceress";
			Hue= 33770;
			Body = 401;
			Kills = 10;
			ShortTermMurders = 10;

			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=15000;
			Karma=-15000;

			VirtualArmor= 0;
			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 );

			Item hair = new Item( 0x203C);
			hair.Hue = 1156;
			hair.Layer = Layer.Hair;
			hair.Movable = false;
			AddItem( hair );

			switch( Utility.Random(125) )
			{
				case 0: PackItem( new DarkIronWire() ); break;
			}

			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( 700, 1000);
			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;
			}

		}
Exemple #7
0
        public static string MakeThisTask()
        {
            string task = null;

            switch (Utility.RandomMinMax(1, 10))
            {
            case 1: task = "Repair"; break;

            case 2: task = "Fix"; break;

            case 3: task = "Buff"; break;

            case 4: task = "Modify"; break;

            case 5: task = "Polish"; break;

            case 6: task = "Engrave"; break;

            case 7: task = "Adjust"; break;

            case 8: task = "Improve"; break;

            case 9: task = "Smooth the dents from"; break;

            case 10: task = "Remove the dents from"; break;
            }

            Item item = null;

            switch (Utility.RandomMinMax(1, 79))
            {
            case 1: item = new AssassinSpike(); break;

            case 2: item = new Axe(); break;

            case 3: item = new Bardiche(); break;

            case 4: item = new Bascinet(); break;

            case 5: item = new BattleAxe(); break;

            case 6: item = new BoneHarvester(); break;

            case 7: item = new Broadsword(); break;

            case 8: item = new BronzeShield(); break;

            case 9: item = new Buckler(); break;

            case 10: item = new ButcherKnife(); break;

            case 11: item = new ChainChest(); break;

            case 12: item = new ChainCoif(); break;

            case 13: item = new ChainLegs(); break;

            case 14: item = new ChampionShield(); break;

            case 15: item = new Cleaver(); break;

            case 16: item = new CloseHelm(); break;

            case 17: item = new CloseHelm(); break;

            case 18: item = new CrescentBlade(); break;

            case 19: item = new CrestedShield(); break;

            case 20: item = new Cutlass(); break;

            case 21: item = new Dagger(); break;

            case 22: item = new DarkShield(); break;

            case 23: item = new DiamondMace(); break;

            case 24: item = new DoubleAxe(); break;

            case 25: item = new DoubleBladedStaff(); break;

            case 26: item = new DreadHelm(); break;

            case 27: item = new ElvenMachete(); break;

            case 28: item = new ElvenShield(); break;

            case 29: item = new ElvenSpellblade(); break;

            case 30: item = new ExecutionersAxe(); break;

            case 31: item = new FemalePlateChest(); break;

            case 32: item = new GuardsmanShield(); break;

            case 33: item = new Halberd(); break;

            case 34: item = new HammerPick(); break;

            case 35: item = new HeaterShield(); break;

            case 36: item = new Helmet(); break;

            case 37: item = new Helmet(); break;

            case 38: item = new JeweledShield(); break;

            case 39: item = new Katana(); break;

            case 40: item = new Kryss(); break;

            case 41: item = new Lance(); break;

            case 42: item = new LargeBattleAxe(); break;

            case 43: item = new Leafblade(); break;

            case 44: item = new Longsword(); break;

            case 45: item = new Mace(); break;

            case 46: item = new Maul(); break;

            case 47: item = new MetalKiteShield(); break;

            case 48: item = new MetalShield(); break;

            case 49: item = new NorseHelm(); break;

            case 50: item = new NorseHelm(); break;

            case 51: item = new OrnateAxe(); break;

            case 52: item = new Pickaxe(); break;

            case 53: item = new Pike(); break;

            case 54: item = new Pitchfork(); break;

            case 55: item = new PlateArms(); break;

            case 56: item = new PlateChest(); break;

            case 57: item = new PlateGloves(); break;

            case 58: item = new PlateGorget(); break;

            case 59: item = new PlateHelm(); break;

            case 60: item = new PlateHelm(); break;

            case 61: item = new PlateLegs(); break;

            case 62: item = new RadiantScimitar(); break;

            case 63: item = new RingmailArms(); break;

            case 64: item = new RingmailChest(); break;

            case 65: item = new RingmailGloves(); break;

            case 66: item = new RingmailLegs(); break;

            case 67: item = new RuneBlade(); break;

            case 68: item = new Scimitar(); break;

            case 69: item = new Scythe(); break;

            case 70: item = new ShortSpear(); break;

            case 71: item = new SkinningKnife(); break;

            case 72: item = new Spear(); break;

            case 73: item = new ThinLongsword(); break;

            case 74: item = new TwoHandedAxe(); break;

            case 75: item = new VikingSword(); break;

            case 76: item = new WarAxe(); break;

            case 77: item = new WarCleaver(); break;

            case 78: item = new WarHammer(); break;

            case 79: item = new WarMace(); break;
            }

            if (Utility.RandomMinMax(1, 5) == 1)
            {
                bool evil   = false;
                bool orient = false;

                switch (Utility.RandomMinMax(1, 8))
                {
                case 1: evil = true; break;

                case 2: orient = true; break;
                }

                string sAdjective = "unusual";
                string eAdjective = "might";

                sAdjective = Server.LootPackEntry.MagicItemAdj("start", orient, evil, item.ItemID);
                eAdjective = Server.LootPackEntry.MagicItemAdj("end", orient, evil, item.ItemID);

                string name  = "item";
                string xName = ContainerFunctions.GetOwner("property");

                if (item.Name != null && item.Name != "")
                {
                    name = item.Name.ToLower();
                }
                if (name == "item")
                {
                    name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower();
                }

                switch (Utility.RandomMinMax(0, 5))
                {
                case 0: name = sAdjective + " " + name + " of " + xName;        break;

                case 1: name = name + " of " + xName;                                           break;

                case 2: name = sAdjective + " " + name;                                         break;

                case 3: name = sAdjective + " " + name + " of " + xName;        break;

                case 4: name = name + " of " + xName;                                           break;

                case 5: name = sAdjective + " " + name;                                         break;
                }

                task = task + " their " + name;
            }
            else
            {
                string[] sMetals = new string[] { "iron ", "dull copper ", "shadow iron ", "copper ", "bronze ", "gold ", "agapite ", "verite ", "valorite ", "nepturite ", "obsidian ", "steel ", "brass ", "mithril ", "xormite ", "dwarven " };
                string   sMetal  = sMetals[Utility.RandomMinMax(0, (sMetals.Length - 1))];

                string name = "item";
                if (item.Name != null && item.Name != "")
                {
                    name = item.Name.ToLower();
                }
                if (name == "item")
                {
                    name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower();
                }

                task = task + " their " + sMetal + name;
            }

            item.Delete();

            return(task);
        }
        public Mercenary()
            : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.45, 0.8)
        {
            Female = Utility.RandomBool();
            Body = Female ? 401 : 400;
            Title = "the mercenary";
            Name = NameList.RandomName( Female ? "female" : "male" );
            Hue = Utility.RandomSkinHue();
            SetStr( 25, 88 );
            SetDex( 25, 88 );
            SetInt( 37, 49 );
            Karma = Utility.RandomMinMax( 13, -45 );

            SetSkill( SkillName.Tactics, 45, 67.5 );
            SetSkill( SkillName.MagicResist, 45, 67.5 );
            SetSkill( SkillName.Parry, 45, 67.5 );
            SetSkill( SkillName.Swords, 45, 67.5 );
            SetSkill( SkillName.Macing, 45, 67.5 );
            SetSkill( SkillName.Fencing, 45, 67.5 );
            SetSkill( SkillName.Wrestling, 45, 67.5 );
            SetSkill( SkillName.ArmsLore, 42.5, 65 );

            Item item = null;
            if ( !Female )
            {
                item = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                item = AddRandomFacialHair( item.Hue );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateChest(); break;
                    case 1: item = new ChainChest(); break;
                    case 2: item = new StuddedChest(); break;
                    case 3: item = new RingmailChest(); break;
                    case 4: default: item = new LeatherChest(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateLegs(); break;
                    case 1: item = new ChainLegs(); break;
                    case 2: item = new StuddedLegs(); break;
                    case 3: item = new RingmailLegs(); break;
                    case 4: default: item = new LeatherLegs(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 4 ) )
                {
                    case 0: item = new PlateArms(); break;
                    case 1: item = new RingmailArms(); break;
                    case 2: item = new StuddedArms(); break;
                    case 3: default: item = new LeatherArms(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 3 ) )
                {
                    case 0: item = new PlateGloves(); break;
                    case 1: item = new StuddedGloves(); break;
                    case 2: default: item = new LeatherGloves(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 6 ) )
                {
                    case 0: item = new PlateHelm(); break;
                    case 1: item = new ChainCoif(); break;
                    case 2: item = new CloseHelm(); break;
                    case 3: item = new Bascinet(); break;
                    case 4: item = new NorseHelm(); break;
                    case 5: default: item = new Helmet(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 7 ) )
                {
                    case 0: item = new BronzeShield(); break;
                    case 1: item = new Buckler(); break;
                    case 2: item = new HeaterShield(); break;
                    case 3: item = new MetalKiteShield(); break;
                    case 4: item = new MetalShield(); break;
                    case 5: item = new WoodenKiteShield(); break;
                    case 6: default: item = new WoodenShield(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 4 ) )
                {
                    case 0: item = new PlateGorget(); break;
                    case 1: item = new StuddedGorget(); break;
                    default: case 2: item = new LeatherGorget(); break;
                }
                AddItem( item );
                item = Loot.RandomWeapon();
                AddItem( item );
                PackGold( 15, 100 );
            } else {
                item = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateChest(); break;
                    case 1: item = new ChainChest(); break;
                    case 2: item = new StuddedChest(); break;
                    case 3: item = new RingmailChest(); break;
                    case 4: default: item = new LeatherChest(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateLegs(); break;
                    case 1: item = new ChainLegs(); break;
                    case 2: item = new StuddedLegs(); break;
                    case 3: item = new RingmailLegs(); break;
                    case 4: default: item = new LeatherLegs(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 3 ) )
                {
                    case 0: item = new PlateGloves(); break;
                    case 1: item = new StuddedGloves(); break;
                    case 2: default: item = new LeatherGloves(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 6 ) )
                {
                    case 0: item = new PlateHelm(); break;
                    case 1: item = new ChainCoif(); break;
                    case 2: item = new CloseHelm(); break;
                    case 3: item = new Bascinet(); break;
                    case 4: item = new NorseHelm(); break;
                    case 5: default: item = new Helmet(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 7 ) )
                {
                    case 0: item = new BronzeShield(); break;
                    case 1: item = new Buckler(); break;
                    case 2: item = new HeaterShield(); break;
                    case 3: item = new MetalKiteShield(); break;
                    case 4: item = new MetalShield(); break;
                    case 5: item = new WoodenKiteShield(); break;
                    case 6: default: item = new WoodenShield(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 4 ) )
                {
                    case 0: item = new PlateGorget(); break;
                    case 1: item = new StuddedGorget(); break;
                    default: case 2: item = new LeatherGorget(); break;
                }
                AddItem( item );
                item = Loot.RandomWeapon();
                AddItem( item );
                PackGold( 15, 100 );
            }
        }