public override void InitOutfit()
        {
            Item item = null;

            item     = AddRandomHair();
            item.Hue = Utility.RandomHairHue();
            item     = AddRandomFacialHair(item.Hue);
            item     = new PlateChest();
            AddItem(item);
            item = new PlateLegs();
            AddItem(item);
            item = new PlateArms();
            AddItem(item);
            item = new PlateGloves();
            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);
            item     = new Tunic();
            item.Hue = Utility.RandomNondyedHue();
            AddItem(item);
            item = new PlateGorget();
            AddItem(item);
            item = new DoubleAxe();
            AddItem(item);
            PackGold(15, 100);
        }
        public override void InitOutfit()
        {
            WipeLayers();
            Hue = Utility.RandomSkinHue();

            PlateChest chest = new PlateChest();

            chest.Hue = 0x966;
            AddItem(chest);
            PlateArms arms = new PlateArms();

            arms.Hue = 0x966;
            AddItem(arms);
            PlateGloves gloves = new PlateGloves();

            gloves.Hue = 0x966;
            AddItem(gloves);
            PlateGorget gorget = new PlateGorget();

            gorget.Hue = 0x966;
            AddItem(gorget);
            PlateLegs legs = new PlateLegs();

            legs.Hue = 0x966;
            AddItem(legs);
            PlateHelm helm = new PlateHelm();

            helm.Hue = 0x966;
            AddItem(helm);

            Bow bow = new Bow();

            bow.Movable = false;
            bow.Crafter = this;
            bow.Quality = WeaponQuality.Exceptional;

            AddItem(bow);

            PackItem(new Arrow(250));
        }
Beispiel #3
0
        public override void GenerateLoot()
        {
            PlateChest chest = new PlateChest();

            chest.Hue = 0x966;
            AddItem(chest);
            PlateArms arms = new PlateArms();

            arms.Hue = 0x966;
            AddItem(arms);
            PlateGloves gloves = new PlateGloves();

            gloves.Hue = 0x966;
            AddItem(gloves);
            PlateGorget gorget = new PlateGorget();

            gorget.Hue = 0x966;
            AddItem(gorget);
            PlateLegs legs = new PlateLegs();

            legs.Hue = 0x966;
            AddItem(legs);
            PlateHelm helm = new PlateHelm();

            helm.Hue = 0x966;
            AddItem(helm);

            Bow bow = new Bow();

            bow.Movable = false;
            bow.Crafter = this;
            bow.Quality = WeaponQuality.Exceptional;

            AddItem(bow);

            PackItem(new Arrow(250));
            PackGold(250, 500);
        }
Beispiel #4
0
        public DupresChampion() : base(AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.2, 0.4)
        {
            Name   = NameList.RandomName("male");
            Title  = "the Champion";
            Body   = 0x190;
            Hue    = Utility.RandomSkinHue();
            Female = false;

            SetStr(190, 200);
            SetDex(50, 75);
            SetInt(150, 250);
            SetHits(3900, 4100);
            SetDamage(22, 28);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 50, 70);
            SetResistance(ResistanceType.Fire, 50, 70);
            SetResistance(ResistanceType.Cold, 50, 70);
            SetResistance(ResistanceType.Poison, 50, 70);
            SetResistance(ResistanceType.Energy, 50, 70);

            SetSkill(SkillName.EvalInt, 195.0, 220.0);
            SetSkill(SkillName.Magery, 195.0, 220.0);
            SetSkill(SkillName.Meditation, 195.0, 200.0);
            SetSkill(SkillName.MagicResist, 100.0, 120.0);
            SetSkill(SkillName.Tactics, 195.0, 220.0);
            SetSkill(SkillName.Wrestling, 195.0, 220.0);

            Item cutlass = new Cutlass();

            cutlass.LootType = LootType.Blessed;
            SetWearable(cutlass);

            Item ph = new PlateHelm();

            ph.LootType = LootType.Blessed;
            ph.Hue      = 0x8A5; // gold
            SetWearable(ph);

            Item pa = new PlateArms();

            pa.LootType = LootType.Blessed;
            pa.Hue      = 0x8A5; // gold
            SetWearable(pa);

            Item pg = new PlateGorget();

            pg.LootType = LootType.Blessed;
            pg.Hue      = 0x8A5; // gold
            SetWearable(pg);

            Item pgl = new PlateGloves();

            pgl.LootType = LootType.Blessed;
            pgl.Hue      = 0x8A5; // gold
            SetWearable(pgl);

            Item pl = new PlateLegs();

            pl.LootType = LootType.Blessed;
            pl.Hue      = 0x8A5; // gold
            SetWearable(pl);

            Item pc = new PlateChest();

            pc.LootType = LootType.Blessed;
            pc.Hue      = 0x8A5; // gold
            SetWearable(pc);

            Item mks = new MetalKiteShield();

            mks.LootType = LootType.Blessed;
            mks.Hue      = 0x776;
            SetWearable(mks);

            Item bs = new BodySash(0x486); // dark purple

            bs.LootType = LootType.Blessed;
            SetWearable(bs);

            Item cloak = new Cloak(0x486); // dark purple

            cloak.LootType = LootType.Blessed;
            SetWearable(cloak);

            PackGold(400, 600);
        }
Beispiel #5
0
		public DreadLordCaptain() : base( AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.1, 0.1 )
		{
			SpeechHue = Utility.RandomDyedHue();

			Hue = Utility.RandomSkinHue();

			Body = 0x190;
			Name = "Dread Lord Captain";

			SetStr( 400 );
			SetDex( 200, 250 );
			SetInt( 200, 250 );
			SetHits( 350, 400 );
			SetStam( 200, 250 );
			SetMana( 200, 250 );
			SetDamage( 10, 20 );

			SetSkill( SkillName.Parry, 85.0, 98.0 );
			SetSkill( SkillName.Wrestling, 67.0, 90.0 );
			SetSkill( SkillName.Magery, 90.0, 100.0 );
			SetSkill( SkillName.Poisoning, 90.0, 100.0 );
			SetSkill( SkillName.MagicResist, 65.0, 88.0 );
			SetSkill( SkillName.Swords, 90.0, 95.0 );
			SetSkill( SkillName.Tactics, 90.0, 98.0 );

			Fame = 7500;
			Karma = -10000;

			VirtualArmor = 40;

			Item temp;
			temp = new PlateGloves();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateHelm();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateArms();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateGorget();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateLegs();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateChest();
			temp.Movable = false;
			AddItem( temp );
			temp = new VikingSword();
			temp.Movable = false;
			AddItem( temp );
			temp = new Cloak();
			temp.Hue = 0x0493;
			temp.Movable = true;
			AddItem( temp );
			temp = new BodySash();
			temp.Hue = 0x0493;
			temp.Movable = true;
			AddItem( temp );
			temp = new HalfApron();
			temp.Hue = 0x1;
			temp.Movable = false;
			AddItem( temp );

			Item hair = new Item( Utility.RandomList( 0x203B, 0x2049, 0x2048, 0x204A ) );
			hair.Hue = Utility.RandomNondyedHue();
			hair.Layer = Layer.Hair;
			hair.Movable = false;
			AddItem( hair );
			//PackGold(800, 1200);
			PackGem( 4 );
		}
        public DupresKnight() : base(AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.2, 0.4)
        {
            Name  = m_Names[Utility.Random(m_Names.Length)];
            Title = m_Titles[Utility.Random(m_Titles.Length)];
            Body  = 0x190;
            Hue   = Utility.RandomSkinHue();

            SetStr(190, 200);
            SetDex(50, 75);
            SetInt(150, 250);
            SetHits(3900, 4100);
            SetDamage(22, 28);
            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 50, 70);
            SetResistance(ResistanceType.Fire, 50, 70);
            SetResistance(ResistanceType.Cold, 50, 70);
            SetResistance(ResistanceType.Poison, 50, 70);
            SetResistance(ResistanceType.Energy, 50, 70);

            SetSkill(SkillName.EvalInt, 195.0, 220.0);
            SetSkill(SkillName.Magery, 195.0, 220.0);
            SetSkill(SkillName.Meditation, 195.0, 200.0);
            SetSkill(SkillName.MagicResist, 100.0, 120.0);
            SetSkill(SkillName.Tactics, 195.0, 220.0);
            SetSkill(SkillName.Wrestling, 195.0, 220.0);

            VirtualArmor = 70;

            Item longsword = new Longsword();

            longsword.LootType = LootType.Blessed;
            AddItem(longsword);

            Item ph = new PlateHelm();

            ph.LootType = LootType.Blessed;
            AddItem(ph);

            Item pa = new PlateArms();

            pa.LootType = LootType.Blessed;
            AddItem(pa);

            Item pg = new PlateGorget();

            pg.LootType = LootType.Blessed;
            AddItem(pg);

            Item pgl = new PlateGloves();

            pgl.LootType = LootType.Blessed;
            AddItem(pgl);

            Item pl = new PlateLegs();

            pl.LootType = LootType.Blessed;
            AddItem(pl);

            Item pc = new PlateChest();

            pc.LootType = LootType.Blessed;
            AddItem(pc);

            Item mks = new MetalKiteShield();

            mks.LootType = LootType.Blessed;
            mks.Hue      = 0x794;
            AddItem(mks);

            Item bs = new BodySash(0x794); // dark purple

            bs.LootType = LootType.Blessed;
            AddItem(bs);

            PackGold(400, 600);
        }
Beispiel #7
0
        public Knight() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Hue  = 846;
            Body = 0x190;

            SetStr(186, 200);
            SetDex(181, 295);
            SetInt(161, 275);

            SetDamage(10, 33);

            SetSkill(SkillName.Fencing, 66.0, 97.5);
            SetSkill(SkillName.Macing, 65.0, 87.5);
            SetSkill(SkillName.MagicResist, 25.0, 47.5);
            SetSkill(SkillName.Swords, 65.0, 87.5);
            SetSkill(SkillName.Tactics, 65.0, 87.5);
            SetSkill(SkillName.Wrestling, 15.0, 37.5);

            Fame  = 1000;
            Karma = -1000;

            PlateHelm helm = new PlateHelm();

            helm.Hue     = 846;
            helm.Movable = false;
            AddItem(helm);

            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 846;
            gorget.Movable = false;
            AddItem(gorget);

            PlateChest chest = new PlateChest();

            chest.Hue     = 846;
            chest.Movable = false;
            AddItem(chest);

            PlateLegs legs = new PlateLegs();

            legs.Hue     = 846;
            legs.Movable = false;
            AddItem(legs);

            PlateArms arms = new PlateArms();

            arms.Hue     = 846;
            arms.Movable = false;
            AddItem(arms);

            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 846;
            gloves.Movable = false;
            AddItem(gloves);

            HeaterShield shield = new HeaterShield();

            shield.Hue     = 846;
            shield.Movable = false;
            AddItem(shield);

            Longsword weapon = new Longsword();

            weapon.Hue     = 846;
            weapon.Movable = false;
            AddItem(weapon);
        }
Beispiel #8
0
        public override void OnAfterSpawn()
        {
            base.OnAfterSpawn();

            Region reg = Region.Find(this.Location, this.Map);

            string World = Server.Misc.Worlds.GetMyWorld(this.Map, this.Location, this.X, this.Y);

            int clothColor = 0;
            int shieldType = 0;
            int helmType   = 0;
            int cloakColor = 0;

            Item weapon = new VikingSword(); weapon.Delete();

            if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Whisper")
            {
                clothColor = 0x96D;             shieldType = 0x1B72;    helmType = 0x140E;              cloakColor = 0x972;             weapon = new Longsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Glacial Hills")
            {
                clothColor = 0x482;             shieldType = 0x1B74;    helmType = 0x1412;              cloakColor = 0x542;             weapon = new Kryss();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Springvale")
            {
                clothColor = 0x595;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x593;             weapon = new Pike();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Elidor")
            {
                clothColor = 0x665;             shieldType = 0x1B7B;    helmType = 0x1412;              cloakColor = 0x664;             weapon = new Katana();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Islegem")
            {
                clothColor = 0x7D1;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x7D6;             weapon = new Spear();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Greensky Village")
            {
                clothColor = 0x7D7;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x7DA;             weapon = new Bardiche();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Port of Dusk")
            {
                clothColor = 0x601;             shieldType = 0x1B76;    helmType = 0x140E;              cloakColor = 0x600;             weapon = new Cutlass();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Port of Starguide")
            {
                clothColor = 0x751;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x758;             weapon = new BladedStaff();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Portshine")
            {
                clothColor = 0x847;             shieldType = 0x1B7A;    helmType = 0x140E;              cloakColor = 0x851;             weapon = new Mace();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Ranger Outpost")
            {
                clothColor = 0x598;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x83F;             weapon = new Spear();
            }
            else if (World == "the Land of Lodoria")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Lodoria" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Castle of Knowledge" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Lodoria City Park" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Village of Lodoria" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Lodoria Cemetery" )
            {
                clothColor = 0x6E4;             shieldType = 0x1BC4;    helmType = 0x1412;              cloakColor = 0x6E7;             weapon = new Scimitar();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Lunar City of Dawn")
            {
                clothColor = 0x9C4;             shieldType = 0x1B76;    helmType = 0x140E;              cloakColor = 0x9C4;             weapon = new DiamondMace();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "The Town of Devil Guard" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "The Farmland of Devil Guard")
            {
                clothColor = 0x430;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0;                 weapon = new LargeBattleAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Moon")
            {
                clothColor = 0x8AF;             shieldType = 0x1B72;    helmType = 0x1412;              cloakColor = 0x972;             weapon = new Longsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Grey")
            {
                clothColor = 0;                 shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x763;             weapon = new Halberd();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Montor")
            {
                clothColor = 0x96F;             shieldType = 0x1B74;    helmType = 0x1412;              cloakColor = 0x529;             weapon = new Broadsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Fawn")
            {
                clothColor = 0x59D;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x59C;             weapon = new DoubleAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Yew")
            {
                clothColor = 0x83C;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x850;             weapon = new Spear();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Iceclad Fisherman's Village" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Mountain Crest" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Glacial Coast Village")
            {
                clothColor = 0x482;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x47E;             weapon = new Bardiche();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Undercity of Umbra")
            {
                clothColor = 0x964;             shieldType = 0x1BC3;    helmType = 0x140E;              cloakColor = 0x966;             weapon = new BoneHarvester();
            }
            else if (World == "the Island of Umber Veil")
            {
                clothColor = 0xA5D;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x96D;             weapon = new Halberd();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Kuldara")
            {
                clothColor = 0x965;             shieldType = 0x1BC3;    helmType = 0x140E;              cloakColor = 0x845;             weapon = new Maul();
            }
            else if (World == "the Isles of Dread")
            {
                clothColor = 0x978;             shieldType = 0;                 helmType = 0x2645;              cloakColor = 0x973;             weapon = new OrnateAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Barako")
            {
                clothColor = 0x515;             shieldType = 0x1B72;    helmType = 0x2645;              cloakColor = 0x58D;             weapon = new WarMace();
            }
            else if (World == "the Savaged Empire")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Village of Kurak" )
            {
                clothColor = 0x515;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x59D;             weapon = new Spear();
            }
            else if (World == "the Serpent Island")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Furnace" )
            {
                clothColor = 0x515;             shieldType = 0;                 helmType = 0x2FBB;              cloakColor = 0;                 weapon = new Halberd();
            }
            else             // if ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Britain" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Britain Castle Grounds" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "Lord British Castle" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Britain Dungeons" )
            {
                clothColor = 0x9C4;             shieldType = 0x1BC4;    helmType = 0x140E;              cloakColor = 0x845;             weapon = new VikingSword();
            }

            weapon.Movable = false;
            ((BaseWeapon)weapon).MaxHitPoints = 1000;
            ((BaseWeapon)weapon).HitPoints    = 1000;
            ((BaseWeapon)weapon).MinDamage    = 500;
            ((BaseWeapon)weapon).MaxDamage    = 900;
            AddItem(weapon);

            AddItem(new PlateChest());
            if (World == "the Serpent Island")
            {
                AddItem(new RingmailArms());
            }
            else
            {
                AddItem(new PlateArms());
            }                                                                                                                       // FOR GARGOYLES
            AddItem(new PlateLegs());
            AddItem(new PlateGorget());
            AddItem(new PlateGloves());
            AddItem(new Boots( ));

            if (helmType > 0)
            {
                PlateHelm helm = new PlateHelm();
                helm.ItemID = helmType;
                helm.Name   = "helm";
                AddItem(helm);
            }
            if (shieldType > 0)
            {
                ChaosShield shield = new ChaosShield();
                shield.ItemID = shieldType;
                shield.Name   = "shield";
                AddItem(shield);
            }

            MorphingTime.ColorMyClothes(this, clothColor);

            if (cloakColor > 0)
            {
                Cloak cloak = new Cloak();
                cloak.Hue = cloakColor;
                AddItem(cloak);
            }

            Server.Misc.MorphingTime.CheckMorph(this);
        }
Beispiel #9
0
        public override Item Construct(Type type, Mobile from, Item _i, HarvestDefinition _d, HarvestBank _b, HarvestResource _r)
        {
            if (type == typeof(TreasureMap))
            {
                int level = 1;

                return(new TreasureMap(level, Map.Felucca));
            }

            else if (type == typeof(MessageInABottle))
            {
                return(new MessageInABottle(Map.Felucca));
            }

            Container pack = from.Backpack;

            if (pack != null)
            {
                List <SOS> messages = pack.FindItemsByType <SOS>();

                for (int i = 0; i < messages.Count; ++i)
                {
                    SOS sos = messages[i];

                    if (from.Map == sos.TargetMap && from.InRange(sos.TargetLocation, 60) && !sos.Completed)
                    {
                        Item preLoot = null;

                        switch (Utility.Random(7))
                        {
                        case 0:     // Body parts
                        {
                            int[] list = new int[]
                            {
                                0x1CDD, 0x1CE5,                                        // arm
                                0x1CE0, 0x1CE8,                                        // torso
                                0x1CE1, 0x1CE9,                                        // head
                                0x1CE2, 0x1CEC                                         // leg
                            };

                            preLoot = new ShipwreckedItem(Utility.RandomList(list));
                            break;
                        }

                        case 1:     // Bone parts
                        {
                            int[] list = new int[]
                            {
                                0x1AE0, 0x1AE1, 0x1AE2, 0x1AE3, 0x1AE4,                         // skulls
                                0x1B09, 0x1B0A, 0x1B0B, 0x1B0C, 0x1B0D, 0x1B0E, 0x1B0F, 0x1B10, // bone piles
                                0x1B15, 0x1B16                                                  // pelvis bones
                            };

                            preLoot = new ShipwreckedItem(Utility.RandomList(list));
                            break;
                        }

                        case 2:     // Pillows
                        {
                            preLoot = new ShipwreckedItem(Utility.Random(0x13A4, 11));
                            break;
                        }

                        case 3:     // Shells
                        {
                            preLoot = new ShipwreckedItem(Utility.Random(0xFC4, 9));
                            break;
                        }

                        case 4:         //Hats
                        {
                            if (Utility.RandomBool())
                            {
                                preLoot = new SkullCap();
                            }
                            else
                            {
                                preLoot = new TricorneHat();
                            }

                            break;
                        }

                        case 5:     // Misc
                        {
                            int[] list = new int[]
                            {
                                0x1EB5,                                        // unfinished barrel
                                0xA2A,                                         // stool
                                0xC1F,                                         // broken clock
                                0x1EB1, 0x1EB2, 0x1EB3, 0x1EB4                 // barrel staves
                            };

                            if (Utility.Random(list.Length + 1) == 0)
                            {
                                preLoot = new Candelabra();
                            }
                            else
                            {
                                preLoot = new ShipwreckedItem(Utility.RandomList(list));
                            }

                            break;
                        }
                        }

                        if (preLoot != null)
                        {
                            if (preLoot is IShipwreckedItem)
                            {
                                ((IShipwreckedItem)preLoot).IsShipwreckedItem = true;
                            }

                            return(preLoot);
                        }

                        LockableContainer chest;

                        if (Utility.RandomBool())
                        {
                            chest = new MetalGoldenChest();
                        }
                        else
                        {
                            chest = new WoodenChest();
                        }

                        if (sos.IsAncient)
                        {
                            chest.Hue = 0x481;
                        }

                        TreasureMapChest.Fill(chest, Math.Max(1, Math.Min(3, (sos.Level + 1))));

                        if (sos.IsAncient)
                        {
                            chest.DropItem(new FabledFishingNet());
                        }
                        else
                        {
                            chest.DropItem(new SpecialFishingNet());
                        }

                        if (Utility.Random(500) == 0)
                        {
                            Item mask = new HornedTribalMask();
                            mask.Hue  = 2715;
                            mask.Name = "Mask of Cthulu";

                            chest.DropItem(mask);
                        }

                        switch (Utility.Random(300))
                        {
                        case 0:
                        {
                            Item rustedchest = new PlateChest();
                            rustedchest.Hue  = 2718;
                            rustedchest.Name = "a rusted platemail chest recovered from a shipwreck";

                            chest.DropItem(rustedchest);
                            break;
                        }

                        case 1:
                        {
                            Item rustedarms = new PlateArms();
                            rustedarms.Hue  = 2718;
                            rustedarms.Name = "rusted platemail arms recovered from a shipwreck";

                            chest.DropItem(rustedarms);
                            break;
                        }

                        case 2:
                        {
                            Item rustedlegs = new PlateLegs();
                            rustedlegs.Hue  = 2718;
                            rustedlegs.Name = "rusted platemail legguards recovered from a shipwreck";

                            chest.DropItem(rustedlegs);
                            break;
                        }

                        case 3:
                        {
                            Item rustedgloves = new PlateGloves();
                            rustedgloves.Hue  = 2718;
                            rustedgloves.Name = "rusted platemail gloves recovered from a shipwreck";

                            chest.DropItem(rustedgloves);
                            break;
                        }

                        case 4:
                        {
                            Item rustedgorget = new PlateGorget();
                            rustedgorget.Hue  = 2718;
                            rustedgorget.Name = "rusted platemail gorget recovered from a shipwreck";

                            chest.DropItem(rustedgorget);
                            break;
                        }

                        case 5:
                        {
                            Item rustedhelm = new PlateHelm();
                            rustedhelm.Hue  = 2718;
                            rustedhelm.Name = "a rusted platemail helmet recovered from a shipwreck";

                            chest.DropItem(rustedhelm);
                            break;
                        }
                        }

                        switch (Utility.Random(400))
                        {
                        case 0:
                        {
                            Item lamp = new LampPost1();
                            lamp.Name = "Britannia Head Light";
                            lamp.Hue  = 2601;

                            chest.DropItem(lamp);
                            break;
                        }

                        case 1:
                        {
                            Item lantern = new HangingLantern();
                            lantern.Name    = "Fog Lamp";
                            lantern.Hue     = 2601;
                            lantern.Movable = true;

                            chest.DropItem(lantern);
                            break;
                        }
                        }

                        chest.Movable   = true;
                        chest.Locked    = false;
                        chest.TrapType  = TrapType.None;
                        chest.TrapPower = 0;
                        chest.TrapLevel = 0;

                        sos.Completed = true;

                        BaseBoat ownerBoat = BaseBoat.FindBoatAt(from.Location, from.Map);

                        PlayerMobile player = from as PlayerMobile;

                        if (ownerBoat != null && player != null)
                        {
                            if (ownerBoat.IsFriend(player) || ownerBoat.IsOwner(player) || ownerBoat.IsCoOwner(player))
                            {
                                double doubloonValue = Utility.RandomMinMax(25, 50);

                                int finalDoubloonAmount = (int)doubloonValue;

                                bool shipOwner          = ownerBoat.IsOwner(player);
                                bool bankDoubloonsValid = false;
                                bool holdPlacementValid = false;

                                //Deposit Half In Player's Bank
                                if (Banker.DepositUniqueCurrency(player, typeof(Doubloon), finalDoubloonAmount))
                                {
                                    Doubloon doubloonPile = new Doubloon(finalDoubloonAmount);
                                    player.SendSound(doubloonPile.GetDropSound());
                                    doubloonPile.Delete();

                                    bankDoubloonsValid = true;
                                }

                                //Deposit Other Half in Ship
                                if (ownerBoat.DepositDoubloons(finalDoubloonAmount))
                                {
                                    Doubloon doubloonPile = new Doubloon(finalDoubloonAmount);
                                    player.SendSound(doubloonPile.GetDropSound());
                                    doubloonPile.Delete();

                                    holdPlacementValid = true;
                                }

                                if (shipOwner)
                                {
                                    player.PirateScore += finalDoubloonAmount;
                                    //ownerBoat.doubloonsEarned += finalDoubloonAmount * 2;

                                    if (bankDoubloonsValid && holdPlacementValid)
                                    {
                                        player.SendMessage("You've received " + (finalDoubloonAmount * 2).ToString() + " doubloons for completing a message in a bottle! They have been evenly split between your bank box and your ship's hold.");
                                    }

                                    else if (bankDoubloonsValid && !holdPlacementValid)
                                    {
                                        player.SendMessage("You've earned " + (finalDoubloonAmount * 2).ToString() + " doubloons, however there was not enough room to place all of them in your ship's hold.");
                                    }

                                    else if (!bankDoubloonsValid && holdPlacementValid)
                                    {
                                        player.SendMessage("You've earned " + (finalDoubloonAmount * 2).ToString() + " doubloons, however there was not enough room to place all of them in your bank box.");
                                    }
                                }

                                else
                                {
                                    //ownerBoat.doubloonsEarned += finalDoubloonAmount;
                                    player.PirateScore += finalDoubloonAmount;

                                    if (bankDoubloonsValid)
                                    {
                                        player.SendMessage("You've earned " + finalDoubloonAmount.ToString() + " doubloons for completing a message in a bottle! They have been placed in your bank box.");
                                    }

                                    else
                                    {
                                        player.SendMessage("You've earned doubloons, but there was not enough room to place all of them in your bank box.");
                                    }
                                }
                            }
                        }

                        return(chest);
                    }
                }
            }

            return(base.Construct(type, from, _i, _d, _b, _r));
        }
Beispiel #10
0
        public CastleGuardWarrior() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            Title = "the Knight, Lord British Imperial Guard";

            SetStr(1500, 1500);
            SetDex(150, 150);
            SetInt(61, 75);

            SetSkill(SkillName.MagicResist, 120.0, 120.0);
            SetSkill(SkillName.Swords, 120.0, 120.0);
            SetSkill(SkillName.Tactics, 120.0, 120.0);
            SetSkill(SkillName.Anatomy, 120.0, 120.0);

            VikingSword weapon = new VikingSword();

            weapon.Hue     = 2413;
            weapon.Movable = false;
            AddItem(weapon);

            MetalKiteShield shield = new MetalKiteShield();

            shield.Hue     = 2413;
            shield.Movable = false;
            AddItem(shield);

            PlateHelm helm = new PlateHelm();

            helm.Hue = 2413;
            AddItem(helm);

            PlateArms arms = new PlateArms();

            arms.Hue = 2413;
            AddItem(arms);

            PlateGloves gloves = new PlateGloves();

            gloves.Hue = 2413;
            AddItem(gloves);

            PlateChest tunic = new PlateChest();

            tunic.Hue = 2413;
            AddItem(tunic);

            PlateLegs legs = new PlateLegs();

            legs.Hue = 2413;
            AddItem(legs);

            Body = 400;
            Name = NameList.RandomName("male");

            SetDamage(45, 75);

            VirtualArmor = 100;

            Utility.AssignRandomHair(this);
        }
Beispiel #11
0
        public LostKnight() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = NameList.RandomName("barb_male");
            Title       = "the lost knight";
            BaseSoundID = 412;
            Hue         = 1;
            Body        = 0x190;

            SetStr(386, 400);
            SetDex(151, 165);
            SetInt(161, 175);

            SetHits(200, 300);

            SetDamage(8, 10);

            SetDamageType(ResistanceType.Physical, 100);

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

            SetSkill(SkillName.DetectHidden, 100.0);
            SetSkill(SkillName.Anatomy, 125.0);
            SetSkill(SkillName.Poisoning, 60.0, 82.5);
            SetSkill(SkillName.MagicResist, 83.5, 92.5);
            SetSkill(SkillName.Swords, 125.0);
            SetSkill(SkillName.Tactics, 125.0);

            Fame  = 10000;
            Karma = -10000;

            VirtualArmor = 20;

            Item armor1 = new PlateChest();

            AddItem(armor1);
            Item armor2 = new PlateArms();

            AddItem(armor2);
            Item armor3 = new PlateLegs();

            AddItem(armor3);
            Item armor4 = new PlateGorget();

            AddItem(armor4);
            Item armor5 = new PlateGloves();

            AddItem(armor5);
            Item armor6 = new PlateHelm();

            AddItem(armor6);
            Item armor7 = new Longsword();

            AddItem(armor7);
            Item armor8 = new OrderShield();

            AddItem(armor8);

            MorphingTime.BlessMyClothes(this);
            MorphingTime.ColorMyClothes(this, 0x47E);

            if (1 == Utility.RandomMinMax(0, 2))
            {
                switch (Utility.RandomMinMax(0, 7))
                {
                case 0: armor1.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor1, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("armors")); break;

                case 1: armor2.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor2, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("armors")); break;

                case 2: armor3.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor3, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("armors")); break;

                case 3: armor4.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor4, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("armors")); break;

                case 4: armor5.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor5, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("armors")); break;

                case 5: armor6.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor6, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("armors")); break;

                case 6: armor7.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor7, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("weapons")); break;

                case 7: armor8.LootType = LootType.Regular; MorphingItem.MorphMyItem(armor8, "IGNORED", "Spectral", "IGNORED", MorphingTemplates.TemplateLostKnight("armors")); break;
                }
            }

            AddItem(new LightSource());
        }
Beispiel #12
0
        public EvilPaladin() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body  = 400;
            Name  = "Hinton";
            Title = "The Evil Paladin";
            Hue   = 0;

            SetStr(200, 250);
            SetDex(100, 125);
            SetInt(180, 200);

            SetHits(1900, 2000);

            SetDamage(25, 28);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 75);
            SetResistance(ResistanceType.Fire, 60);
            SetResistance(ResistanceType.Cold, 60);
            SetResistance(ResistanceType.Poison, 60);
            SetResistance(ResistanceType.Energy, 60);

            SetSkill(SkillName.Wrestling, 100.0);
            SetSkill(SkillName.Swords, 120);
            SetSkill(SkillName.Anatomy, 120);
            SetSkill(SkillName.MagicResist, 90.1, 100.0);
            SetSkill(SkillName.Tactics, 90.1, 100.0);

            Fame  = 10000;
            Karma = -10000;

            VirtualArmor = 45;

            Broadsword weapon = new Broadsword();

            weapon.Hue     = 2306;
            weapon.Movable = false;
            AddItem(weapon);

            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 2306;
            gorget.Movable = false;
            AddItem(gorget);

            MetalShield shield = new MetalShield();

            shield.Hue     = 2306;
            shield.Movable = false;
            AddItem(shield);

            PlateHelm helm = new PlateHelm();

            helm.Hue     = 2306;
            helm.Movable = false;
            AddItem(helm);

            PlateArms arms = new PlateArms();

            arms.Hue     = 2306;
            arms.Movable = false;
            AddItem(arms);

            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 2306;
            gloves.Movable = false;
            AddItem(gloves);

            PlateChest tunic = new PlateChest();

            tunic.Hue     = 2306;
            tunic.Movable = false;
            AddItem(tunic);

            PlateLegs legs = new PlateLegs();

            legs.Hue     = 2306;
            legs.Movable = false;
            AddItem(legs);

            AddItem(new Boots());
            Hue = 2306;
            //PackGold( 3500,4000 );
            PackItem(new LionsCourageMedallion());
        }
Beispiel #13
0
        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);
            }
        }
Beispiel #14
0
        public void DressGuards(BaseCreature bc, Mobile captain)
        {
            int clothColor = 0;
            int helmType   = 0;
            int cloakColor = 0;

            if (captain.Title == "of the Whisper Guard")
            {
                clothColor = 0x96D;             helmType = 0x140E;              cloakColor = 0x972;
            }
            else if (captain.Title == "of the Glacial Guard")
            {
                clothColor = 0xB70;             helmType = 0x1412;              cloakColor = 0xB7A;
            }
            else if (captain.Title == "of the Springvale Guard")
            {
                clothColor = 0x595;             helmType = 0x140E;              cloakColor = 0x593;
            }
            else if (captain.Title == "of the Elidor Guard")
            {
                clothColor = 0x665;             helmType = 0x1412;              cloakColor = 0x664;
            }
            else if (captain.Title == "of the Islegem Guard")
            {
                clothColor = 0x7D1;             helmType = 0x140E;              cloakColor = 0x7D6;
            }
            else if (captain.Title == "of the Greensky Guard")
            {
                clothColor = 0x7D7;             helmType = 0x1412;              cloakColor = 0x7DA;
            }
            else if (captain.Title == "of the Dusk Guard")
            {
                clothColor = 0x601;             helmType = 0x140E;              cloakColor = 0x600;
            }
            else if (captain.Title == "of the Starguide Guard")
            {
                clothColor = 0x751;             helmType = 0x1412;              cloakColor = 0x758;
            }
            else if (captain.Title == "of the Portshine Guard")
            {
                clothColor = 0x847;             helmType = 0x140E;              cloakColor = 0x851;
            }
            else if (captain.Title == "of the Lodoria Guard")
            {
                clothColor = 0x6E4;             helmType = 0x1412;              cloakColor = 0x6E7;
            }
            else if (captain.Title == "of the Devil Guard")
            {
                clothColor = 0x430;             helmType = 0x140E;              cloakColor = 0;
            }
            else if (captain.Title == "of the Moon Guard")
            {
                clothColor = 0x8AF;             helmType = 0x1412;              cloakColor = 0x972;
            }
            else if (captain.Title == "of the Grey Guard")
            {
                clothColor = 0;                 helmType = 0x140E;              cloakColor = 0x763;
            }
            else if (captain.Title == "of the Montor Guard")
            {
                clothColor = 0x96F;             helmType = 0x1412;              cloakColor = 0x529;
            }
            else if (captain.Title == "of the Fawn Guard")
            {
                clothColor = 0x59D;             helmType = 0x140E;              cloakColor = 0x59C;
            }
            else if (captain.Title == "of the Yew Guard")
            {
                clothColor = 0x83C;             helmType = 0x1412;              cloakColor = 0x850;
            }
            else if (captain.Title == "of the Iceclad Guard")
            {
                clothColor = 0x482;             helmType = 0x140E;              cloakColor = 0x47E;
            }
            else if (captain.Title == "of the Britain Guard")
            {
                clothColor = 0x9C4;             helmType = 0x140E;              cloakColor = 0x845;
            }
            else if (captain.Title == "of the Renika Guard")
            {
                clothColor = 0xA5D;             helmType = 0x140E;              cloakColor = 0x96D;
            }
            else if (captain.Title == "of the Kuldara Guard")
            {
                clothColor = 0x965;             helmType = 0x140E;              cloakColor = 0x845;
            }
            else if (captain.Title == "of the Cimmeran Guard")
            {
                clothColor = 0x978;             helmType = 0;                   cloakColor = 0x973;
            }
            else if (captain.Title == "of the Barako Guard")
            {
                clothColor = 0x515;             helmType = 0x2645;              cloakColor = 0x58D;
            }
            else if (captain.Title == "of the Kurak Guard")
            {
                clothColor = 0x515;             helmType = 0x140E;              cloakColor = 0x59D;
            }

            Item arms  = new PlateArms();
            Item tunic = new PlateChest();
            Item legs  = new PlateLegs();
            Item neck  = new PlateGorget();
            Item hand  = new PlateGloves();
            Item foot  = new Boots( );

            if (captain.Title == "of the Cimmeran Guard")
            {
                tunic.ItemID = 0x5652;  tunic.Name = "tunic";
                if (bc.Female)
                {
                    tunic.ItemID = 0x563E;
                    Utility.AssignRandomHair(bc);
                }
                else
                {
                    Utility.AssignRandomHair(bc);
                    FacialHairItemID = Utility.RandomList(0, 8254, 8255, 8256, 8257, 8267, 8268, 8269);
                }

                bc.HairHue       = 0x455;
                bc.FacialHairHue = 0x455;

                arms.ItemID = 22093;    arms.Name = "sleeves";
                legs.ItemID = 7176;             legs.Name = "skirt";
                neck.ItemID = 0x5650;   neck.Name = "amulet";
                hand.ItemID = 0x564E;   hand.Name = "gloves";
                foot.ItemID = 5901;             foot.Name = "sandals";
            }

            bc.AddItem(tunic);
            bc.AddItem(arms);
            bc.AddItem(legs);
            bc.AddItem(neck);
            bc.AddItem(hand);
            bc.AddItem(foot);

            if (helmType > 0)
            {
                PlateHelm helm = new PlateHelm();
                helm.ItemID = helmType;
                helm.Name   = "helm";
                bc.AddItem(helm);
            }

            MorphingTime.ColorMyClothes(bc, clothColor);

            if (bc is BasePirate)
            {
                Cloak cloak = new Cloak();
                cloak.Hue = cloakColor;
                bc.AddItem(cloak);
            }
        }
        public MinocGuard() : base(AIType.AI_Melee, FightMode.Closest, 15, 1, 0.1, 0.2)
        {
            Title = "the Knight";

            SetStr(1750, 1750);
            SetDex(150, 150);
            SetInt(61, 75);

            SetSkill(SkillName.MagicResist, 120.0, 120.0);
            SetSkill(SkillName.Swords, 120.0, 120.0);
            SetSkill(SkillName.Tactics, 120.0, 120.0);
            SetSkill(SkillName.Anatomy, 120.0, 120.0);

            AddItem(new Longsword());
            HeaterShield twohanded = new HeaterShield();

            twohanded.Hue = 1175;
            AddItem(twohanded);
            PlateLegs legs = new PlateLegs();

            legs.Hue = 1175;
            AddItem(legs);
            PlateArms arms = new PlateArms();

            arms.Hue = 1175;
            AddItem(arms);
            PlateGorget neck = new PlateGorget();

            neck.Hue = 1175;
            AddItem(neck);
            AddItem(new Boots());
            PlateHelm helm = new PlateHelm();

            helm.Hue = 1175;
            AddItem(helm);
            AddItem(new Cloak(248));
            PlateGloves gloves = new PlateGloves();

            gloves.Hue = 1175;
            AddItem(gloves);
            AddItem(new BodySash(248));

            if (Female = Utility.RandomBool())
            {
                Body = 401;
                Name = NameList.RandomName("female");

                FemalePlateChest chest = new FemalePlateChest();
                chest.Hue = 1175;
                AddItem(chest);
            }
            else
            {
                Body = 400;
                Name = NameList.RandomName("male");

                PlateChest chest = new PlateChest();
                chest.Hue = 1175;
                AddItem(chest);
            }

            Utility.AssignRandomHair(this);
        }
Beispiel #16
0
        public void DoSpecialAbility(Mobile target)
        {
            if (target is PlayerMobile)
            {
                int          resnum  = 0;
                PlayerMobile owner   = target as PlayerMobile;
                BaseArmor    helm1   = new PlateHelm();
                BaseArmor    gorget1 = new PlateGorget();
                BaseArmor    tunic1  = new PlateChest();
                BaseArmor    arms1   = new PlateArms();
                BaseArmor    gloves1 = new PlateGloves();
                BaseArmor    legs1   = new PlateLegs();
                BaseShield   shield1 = new HeaterShield();
                BaseWeapon   wep1    = new Kryss();
                Item         helm    = owner.FindItemOnLayer(Layer.Helm);
                if (helm != null)
                {
                    helm1 = helm as BaseArmor;
                }
                Item gorget = owner.FindItemOnLayer(Layer.Neck);
                if (gorget != null)
                {
                    gorget1 = gorget as BaseArmor;
                }
                Item tunic = owner.FindItemOnLayer(Layer.InnerTorso);
                if (tunic != null)
                {
                    tunic1 = tunic as BaseArmor;
                }
                Item arms = owner.FindItemOnLayer(Layer.Arms);
                if (arms != null)
                {
                    arms1 = arms as BaseArmor;
                }
                Item gloves = owner.FindItemOnLayer(Layer.Gloves);
                if (gloves != null)
                {
                    gloves1 = gloves as BaseArmor;
                }
                Item legs = owner.FindItemOnLayer(Layer.Pants);
                if (legs != null)
                {
                    legs1 = legs as BaseArmor;
                }
                Item shield = owner.FindItemOnLayer(Layer.TwoHanded);
                if (shield != null)
                {
                    shield1 = shield as BaseShield;
                }
                Item wep = owner.FindItemOnLayer(Layer.FirstValid);
                if (wep != null)
                {
                    wep1 = wep as BaseWeapon;
                }

                if (shield1 != null)
                {
                    resnum = (int)(shield1.Resource);
                    if (resnum >= 1 && resnum <= 99 && shield1.HitPoints >= 21)
                    {
                        shield1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (tunic1 != null)
                {
                    resnum = (int)(tunic1.Resource);
                    if (resnum >= 1 && resnum <= 99 && tunic1.HitPoints >= 21)
                    {
                        tunic1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (legs1 != null)
                {
                    resnum = (int)(legs1.Resource);
                    if (resnum >= 1 && resnum <= 99 && legs1.HitPoints >= 21)
                    {
                        legs1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (arms1 != null)
                {
                    resnum = (int)(arms1.Resource);
                    if (resnum >= 1 && resnum <= 99 && arms1.HitPoints >= 21)
                    {
                        arms1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (helm1 != null)
                {
                    resnum = (int)(helm1.Resource);
                    if (resnum >= 1 && resnum <= 99 && helm1.HitPoints >= 21)
                    {
                        helm1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (gloves1 != null)
                {
                    resnum = (int)(gloves1.Resource);
                    if (resnum >= 1 && resnum <= 99 && gloves1.HitPoints >= 21)
                    {
                        gloves1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (gorget1 != null)
                {
                    resnum = (int)(gorget1.Resource);
                    if (resnum >= 1 && resnum <= 99 && gorget1.HitPoints >= 21)
                    {
                        gorget1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (wep1 != null)
                {
                    resnum = (int)(wep1.Resource);
                    if (resnum >= 1 && resnum <= 99 && wep1.HitPoints >= 21)
                    {
                        wep1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (shield1 != null)
                {
                    resnum = (int)(shield1.Resource);
                    if (resnum >= 1 && resnum <= 99 && shield1.HitPoints >= 11)
                    {
                        shield1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (tunic1 != null)
                {
                    resnum = (int)(tunic1.Resource);
                    if (resnum >= 1 && resnum <= 99 && tunic1.HitPoints >= 11)
                    {
                        tunic1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (legs1 != null)
                {
                    resnum = (int)(legs1.Resource);
                    if (resnum >= 1 && resnum <= 99 && legs1.HitPoints >= 11)
                    {
                        legs1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (arms1 != null)
                {
                    resnum = (int)(arms1.Resource);
                    if (resnum >= 1 && resnum <= 99 && arms1.HitPoints >= 11)
                    {
                        arms1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (helm1 != null)
                {
                    resnum = (int)(helm1.Resource);
                    if (resnum >= 1 && resnum <= 99 && helm1.HitPoints >= 11)
                    {
                        helm1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (gloves1 != null)
                {
                    resnum = (int)(gloves1.Resource);
                    if (resnum >= 1 && resnum <= 99 && gloves1.HitPoints >= 11)
                    {
                        gloves1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (gorget1 != null)
                {
                    resnum = (int)(gorget1.Resource);
                    if (resnum >= 1 && resnum <= 99 && gorget1.HitPoints >= 11)
                    {
                        gorget1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }

                if (wep1 != null)
                {
                    resnum = (int)(wep1.Resource);
                    if (resnum >= 1 && resnum <= 99 && wep1.HitPoints >= 11)
                    {
                        wep1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return;
                    }
                }
            }
            return;
        }
Beispiel #17
0
		public DreadLord() : base( AIType.AI_SphereMelee, FightMode.Closest, 10, 1, 0.1, 0.1 )
		{
			SpeechHue = 0;

			Hue = Utility.RandomSkinHue();
			Body = 0x190;
			Name = "Dread Lord";

			SetStr( 200, 250 );
			SetDex( 100, 150 );
			SetInt( 71, 85 );
			SetHits( 200, 250 );
			SetDex( 100, 150 );
			SetInt( 71, 85 );
			SetDamage( 10, 20 );

			SetSkill( SkillName.Parry, 75.0, 98.0 );
			SetSkill( SkillName.Poisoning, 90.0, 100.0 );
			SetSkill( SkillName.MagicResist, 65.0, 88.0 );
			SetSkill( SkillName.Swords, 80.0, 95.0 );
			SetSkill( SkillName.Tactics, 80.0, 98.0 );
			SetSkill( SkillName.Wrestling, 67.0, 90.0 );
			SetSkill( SkillName.DetectHidden, 90.0, 100.0 );

			Fame = 6000;
			Karma = -10000;
			VirtualArmor = 30;

			Item temp;
			temp = new PlateGloves();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateHelm();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateArms();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateGorget();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateLegs();
			temp.Movable = false;
			AddItem( temp );
			temp = new PlateChest();
			temp.Movable = false;
			AddItem( temp );
			temp = new VikingSword();
			temp.Movable = false;
			AddItem( temp );
			temp = new Cloak();
			temp.Hue = 0x0020;
			temp.Movable = true;
			AddItem( temp );
			temp = new BodySash();
			temp.Hue = 0x0020;
			temp.Movable = true;
			AddItem( temp );
			temp = new HalfApron();
			temp.Hue = 0x0020;
			temp.Movable = false;
			AddItem( temp );

			AddItem( new KrisnaHair( Utility.RandomHairHue() ) );

            Spellbook book = new Spellbook();
            book.Content = ulong.MaxValue;
            book.LootType = LootType.Regular;
            AddItem(book);
		}
        public PaladinOfPride() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body  = 0x190;
            Name  = "Frothos";
            Title = "Master of Pride";
            Hue   = 0;

            SetStr(400, 450);
            SetDex(151, 165);
            SetInt(180, 200);

            SetHits(5000, 5500);

            SetDamage(25, 35);

            SetDamageType(ResistanceType.Physical, 100);
            SetDamageType(ResistanceType.Cold, 25);

            SetResistance(ResistanceType.Physical, 75);
            SetResistance(ResistanceType.Fire, 60);
            SetResistance(ResistanceType.Cold, 60);
            SetResistance(ResistanceType.Poison, 60);
            SetResistance(ResistanceType.Energy, 60);

            SetSkill(SkillName.Wrestling, 100.0);
            SetSkill(SkillName.Swords, 120.1, 130.0);
            SetSkill(SkillName.Anatomy, 120.1, 130.0);
            SetSkill(SkillName.MagicResist, 90.1, 100.0);
            SetSkill(SkillName.Tactics, 90.1, 100.0);

            Fame  = 10000;
            Karma = -10000;

            VirtualArmor = 65;

            Broadsword weapon = new Broadsword();

            weapon.Hue     = 1153;
            weapon.Movable = false;
            AddItem(weapon);

            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 1153;
            gorget.Movable = false;
            AddItem(gorget);

            MetalShield shield = new MetalShield();

            shield.Hue     = 1153;
            shield.Movable = false;
            AddItem(shield);

            PlateHelm helm = new PlateHelm();

            helm.Hue     = 1153;
            helm.Movable = false;
            AddItem(helm);

            PlateArms arms = new PlateArms();

            arms.Hue     = 1153;
            arms.Movable = false;
            AddItem(arms);

            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 1153;
            gloves.Movable = false;
            AddItem(gloves);

            PlateChest tunic = new PlateChest();

            tunic.Hue     = 1153;
            tunic.Movable = false;
            AddItem(tunic);

            PlateLegs legs = new PlateLegs();

            legs.Hue     = 1153;
            legs.Movable = false;
            AddItem(legs);

            AddItem(new Boots());
            Hue = 1153;
            PackGold(3500, 4000);
            PackItem(new PrideCrystal());
        }
Beispiel #19
0
        public SkeletalSamurai() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = "a skeletal samurai";
            Body        = 247;
            BaseSoundID = 451;

            SetStr(196, 250);
            SetDex(76, 95);
            SetInt(36, 60);

            SetHits(118, 150);

            SetDamage(8, 18);

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

            SetResistance(ResistanceType.Physical, 35, 45);
            SetResistance(ResistanceType.Fire, 20, 30);
            SetResistance(ResistanceType.Cold, 50, 60);
            SetResistance(ResistanceType.Poison, 20, 30);
            SetResistance(ResistanceType.Energy, 30, 40);

            SetSkill(SkillName.MagicResist, 65.1, 80.0);
            SetSkill(SkillName.Tactics, 85.1, 100.0);
            SetSkill(SkillName.Wrestling, 85.1, 95.0);

            Fame  = 3000;
            Karma = -3000;

            VirtualArmor = 40;

            switch (Utility.Random(6))
            {
            case 0: Item drop1 = new PlateArms();           drop1.Hue = 0x539;      drop1.ItemID = 0x2780; drop1.Name = "plate kote";               PackItem(drop1);      break;

            case 1: Item drop2 = new PlateChest();          drop2.Hue = 0x539;      drop2.ItemID = 0x277D; drop2.Name = "plate do";                 PackItem(drop2);      break;

            case 2: Item drop3 = new PlateGloves();         drop3.Hue = 0x539;                                                                                                              PackItem(drop3);      break;

            case 3: Item drop4 = new PlateGorget();         drop4.Hue = 0x539;                                                                                                                      PackItem(drop4);      break;

            case 4: Item drop5 = new PlateLegs();           drop5.Hue = 0x539;      drop5.ItemID = 0x2788; drop5.Name = "plate suneate";    PackItem(drop5);      break;

            case 5: Item drop6 = new PlateHelm();           drop6.Hue = 0x539;      drop6.ItemID = 0x2785; drop6.Name = "plate kabuto";             PackItem(drop6);      break;
            }

            PackSlayer();
            PackItem(new Katana());
            PackItem(new Katana());

            int[] list = new int[]
            {
                0x1B11, 0x1B12, 0x1B13, 0x1B14, 0x1B15, 0x1B16, 0x1B19, 0x1B1A, // bone parts
                0x1AE0, 0x1AE1, 0x1AE2, 0x1AE3, 0x1AE4,                         // skulls
                0x1B17, 0x1B18, 0x1B1B, 0x1B1C,                                 // ribs and spines
                0x1B09, 0x1B0A, 0x1B0B, 0x1B0C, 0x1B0D, 0x1B0E, 0x1B0F, 0x1B10, // bone piles
                0xECA, 0xECB, 0xECC, 0xECD, 0xECE, 0xECF, 0xED0, 0xED1, 0xED2   // bones
            };

            PackItem(new BodyPart(Utility.RandomList(list)));
        }
Beispiel #20
0
        public TownGuard() : base(AIType.AI_Melee, FightMode.Closest, 15, 1, 0.175, 0.2)
        {
            Title     = "the guard";
            Body      = 400;
            Hue       = Utility.RandomSkinHue();
            SpeechHue = 1153;
            this.Body = 0x190;
            this.Name = NameList.RandomName("male");
            SetStr(150);
            SetDex(100);
            SetInt(25);

            SetSkill(SkillName.MagicResist, 200.0);
            SetSkill(SkillName.Tactics, 100.0);
            SetSkill(SkillName.Healing, 100.0);
            SetSkill(SkillName.Anatomy, 100.0);
            SetSkill(SkillName.Swords, 100.0);
            SetSkill(SkillName.Lumberjacking, 100.0);
            SetSkill(SkillName.Healing, 100.0);

            Fame  = 2500;
            Karma = 5000;

            VirtualArmor = 30;

            Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A));

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

            switch (Utility.Random(50))
            {
            case 0:
            {
                Item beard = new Item(Utility.RandomList(0x2040, 0x204B, 0x203F, 0x2041));
                beard.Hue     = hair.Hue;
                beard.Layer   = Layer.FacialHair;
                beard.Movable = false;
                AddItem(beard);
                break;
            }
            }

            PackGold(0);
            switch (Utility.Random(35))
            {
            case 0:
            {
                Item helm = new PlateHelm();
                EquipItem(helm);
                break;
            }
            }
            switch (Utility.Random(35))
            {
            case 0:
            {
                Item gloves = new PlateGloves();
                EquipItem(gloves);
                break;
            }
            }
            Item platechest = new PlateChest();

            EquipItem(platechest);
            Item platearms = new PlateArms();

            EquipItem(platearms);
            Item platelegs = new PlateLegs();

            EquipItem(platelegs);
            Item plategorget = new PlateGorget();

            EquipItem(plategorget);
            Halberd halberd = new Halberd();

            halberd.Movable   = false;
            halberd.MinDamage = 40;
            halberd.MaxDamage = 45;
            EquipItem(halberd);
            PackItem(new Halberd());
            PackItem(new Bandage(100));
        }
Beispiel #21
0
        public DungeonGuard() : base(AIType.AI_Melee)
        {
            Name      = NameList.RandomName("male");
            Title     = "the Guard";
            Fame      = 5000;
            Karma     = -5000;
            Hue       = 1175;
            BodyValue = 400;;

            SetStr(150);
            SetDex(100);
            SetInt(200);

            SetHits(1000);

            SetSkill(SkillName.MagicResist, 200.0);
            SetSkill(SkillName.Tactics, 100.0);
            SetSkill(SkillName.Swords, 120.0);
            SetSkill(SkillName.DetectHidden, 100.0, 120.0);

            PlateArms a = new PlateArms();

            a.Hue      = 1109;
            a.LootType = LootType.Blessed;
            AddItem(a);

            Cloak c = new Cloak();

            c.Hue      = 1157;
            c.LootType = LootType.Blessed;
            AddItem(c);

            BodySash b = new BodySash();

            b.Hue      = 1157;
            b.LootType = LootType.Blessed;
            AddItem(b);

            PlateGloves g = new PlateGloves();

            g.Hue      = 1109;
            g.LootType = LootType.Blessed;
            AddItem(g);

            PlateLegs l = new PlateLegs();

            l.Hue      = 1109;
            l.LootType = LootType.Blessed;
            AddItem(l);

            PlateChest t = new PlateChest();

            t.Hue      = 1109;
            t.LootType = LootType.Blessed;
            AddItem(t);

            PlateGorget n = new PlateGorget();

            n.Hue      = 1109;
            n.LootType = LootType.Blessed;
            AddItem(n);

            PlateHelm h = new PlateHelm();

            h.Hue      = 1109;
            h.LootType = LootType.Blessed;
            AddItem(h);

            VikingSword w = new VikingSword();

            w.Hue      = 1109;
            w.Movable  = false;
            w.LootType = LootType.Blessed;
            AddItem(w);

            ChaosShield s = new ChaosShield();

            s.Hue      = 1109;
            s.Movable  = false;
            s.LootType = LootType.Blessed;
            AddItem(s);
        }
Beispiel #22
0
        public Guardian() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            InitStats(100, 125, 25);
            Title = "the guardian";
            Level = 10;

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            if (Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
            }

            new ForestOstard().Rider = this;

            PlateChest chest = new PlateChest();

            chest.Hue     = 0x966;
            chest.Movable = false;
            AddItem(chest);
            PlateArms arms = new PlateArms();

            arms.Hue     = 0x966;
            arms.Movable = false;
            AddItem(arms);
            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 0x966;
            gloves.Movable = false;
            AddItem(gloves);
            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 0x966;
            gorget.Movable = false;
            AddItem(gorget);
            PlateLegs legs = new PlateLegs();

            legs.Hue     = 0x966;
            legs.Movable = false;
            AddItem(legs);
            PlateHelm helm = new PlateHelm();

            helm.Hue     = 0x966;
            helm.Movable = false;
            AddItem(helm);


            VikingSword sword = new VikingSword();

            sword.Movable = false;
            sword.Crafter = this;
            sword.Quality = WeaponQuality.Exceptional;

            AddItem(sword);

            PackGold(2, 8);

            SetSkill(SkillName.Swords, 80.0, 90.0);
            Skills[SkillName.Anatomy].Base      = 120.0;
            Skills[SkillName.Tactics].Base      = 120.0;
            Skills[SkillName.MagicResist].Base  = 120.0;
            Skills[SkillName.DetectHidden].Base = 100.0;
        }
Beispiel #23
0
        public Guardian() : base(AIType.AI_Archer, FightMode.Aggressor)
        {
            InitStats(100, 125, 25);
            Title = "the guardian";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Race.Human.RandomSkinHue();

            if (Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
            }

            new ForestOstard().Rider = this;

            var chest = new PlateChest();

            chest.Hue = 0x966;
            AddItem(chest);
            var arms = new PlateArms();

            arms.Hue = 0x966;
            AddItem(arms);
            var gloves = new PlateGloves();

            gloves.Hue = 0x966;
            AddItem(gloves);
            var gorget = new PlateGorget();

            gorget.Hue = 0x966;
            AddItem(gorget);
            var legs = new PlateLegs();

            legs.Hue = 0x966;
            AddItem(legs);
            var helm = new PlateHelm();

            helm.Hue = 0x966;
            AddItem(helm);

            var bow = new Bow();

            bow.Movable = false;
            bow.Crafter = this;
            bow.Quality = WeaponQuality.Exceptional;

            AddItem(bow);

            PackItem(new Arrow(250));
            PackGold(250, 500);

            Skills.Anatomy.Base      = 120.0;
            Skills.Tactics.Base      = 120.0;
            Skills.Archery.Base      = 120.0;
            Skills.MagicResist.Base  = 120.0;
            Skills.DetectHidden.Base = 100.0;
        }
Beispiel #24
0
        public Hodur() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.1, 0.4)
        {
            Name        = "Set";
            Title       = "Hodur God Of Winter";
            Body        = 400;
            Hue         = 0;
            BaseSoundID = 377;

            AddItem(new ThighBoots(0x51D));

            Item item;

            item     = new BodySash();
            item.Hue = 1152;
            AddItem(item);

            item     = new Cloak();
            item.Hue = 1152;
            AddItem(item);

            PlateArms arms = new PlateArms();

            arms.Hue     = 1151;
            arms.Movable = false;
            AddItem(arms);

            PlateChest chest = new PlateChest();

            chest.Hue     = 1151;
            chest.Movable = false;
            AddItem(chest);

            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 1151;
            gloves.Movable = false;
            AddItem(gloves);

            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 1151;
            gorget.Movable = false;
            AddItem(gorget);

            PlateHelm helm = new PlateHelm();

            helm.Hue     = 1151;
            helm.Movable = false;
            AddItem(helm);

            PlateLegs legs = new PlateLegs();

            legs.Hue     = 1151;
            legs.Movable = false;
            AddItem(legs);

            SetStr(1198, 1207);
            SetDex(127, 135);
            SetInt(495, 546);

            SetHits(25000);

            SetDamage(27, 31);

            SetDamageType(ResistanceType.Physical, 80);
            SetDamageType(ResistanceType.Cold, 20);

            SetResistance(ResistanceType.Physical, 78, 89);
            SetResistance(ResistanceType.Fire, 30, 46);
            SetResistance(ResistanceType.Cold, 97, 100);
            SetResistance(ResistanceType.Poison, 71, 80);
            SetResistance(ResistanceType.Energy, 70, 80);

            SetSkill(SkillName.Wrestling, 110.4, 112.3);
            SetSkill(SkillName.Tactics, 114.0, 118.5);
            SetSkill(SkillName.MagicResist, 114.1, 132.0);
            SetSkill(SkillName.Magery, 90.9, 99.8);
            SetSkill(SkillName.EvalInt, 90.7, 98.7);
            SetSkill(SkillName.Meditation, 90.4, 98.8);

            Fame  = 24000;
            Karma = -24000;

            VirtualArmor = 80;

            PackGold(9500, 16500);

            if (Utility.RandomDouble() <= 0.15)
            {
                PackItem(new WeaponBlessDeed());
            }
        }
Beispiel #25
0
        public BlackKnight() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body = 0x190;

            SpeechHue = Utility.RandomDyedHue();
            Hue       = Utility.RandomSkinHue();

            Name = NameList.RandomName("male");
            Utility.AssignRandomHair(this);
            int HairColor = Utility.RandomHairHue();

            FacialHairItemID = Utility.RandomList(0, 8254, 8255, 8256, 8257, 8267, 8268, 8269);
            HairHue          = HairColor;
            FacialHairHue    = HairColor;
            Title            = "the Black Knight";

            SetStr(230);
            SetDex(150);
            SetInt(120);

            SetHits(230);

            SetDamage(12, 23);

            SetDamageType(ResistanceType.Physical, 100);

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

            SetSkill(SkillName.DetectHidden, 80.0);
            SetSkill(SkillName.Anatomy, 110.0);
            SetSkill(SkillName.MagicResist, 80.0);
            SetSkill(SkillName.Macing, 110.0);
            SetSkill(SkillName.Fencing, 110.0);
            SetSkill(SkillName.Wrestling, 110.0);
            SetSkill(SkillName.Swords, 110.0);
            SetSkill(SkillName.Tactics, 110.0);

            Fame  = 7000;
            Karma = -7000;

            VirtualArmor = 30;

            PlateChest  bk_chest  = new PlateChest(); AddItem(bk_chest);
            PlateArms   bk_arms   = new PlateArms(); AddItem(bk_arms);
            PlateLegs   bk_legs   = new PlateLegs(); AddItem(bk_legs);
            PlateGorget bk_gorget = new PlateGorget(); AddItem(bk_gorget);
            PlateGloves bk_gloves = new PlateGloves(); AddItem(bk_gloves);
            PlateHelm   bk_helm   = new PlateHelm(); AddItem(bk_helm);
            VikingSword bk_sword  = new VikingSword(); AddItem(bk_sword);
            ChaosShield bk_shield = new ChaosShield(); AddItem(bk_shield);

            AddItem(new Boots( ));

            if (90 < Utility.Random(100))
            {
                switch (Utility.RandomMinMax(0, 7))
                {
                case 0: MorphingItem.MorphMyItem(bk_chest, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("armors")); break;

                case 1: MorphingItem.MorphMyItem(bk_arms, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("armors")); break;

                case 2: MorphingItem.MorphMyItem(bk_legs, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("armors")); break;

                case 3: MorphingItem.MorphMyItem(bk_gorget, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("armors")); break;

                case 4: MorphingItem.MorphMyItem(bk_gloves, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("armors")); break;

                case 5: MorphingItem.MorphMyItem(bk_helm, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("armors")); break;

                case 6: MorphingItem.MorphMyItem(bk_sword, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("weapons")); break;

                case 7: MorphingItem.MorphMyItem(bk_shield, "Black Knight", "IGNORED", "IGNORED", MorphingTemplates.TemplateBlackKnight("armors")); break;
                }
            }

            MorphingTime.ColorMyClothes(this, 0x497);
        }
Beispiel #26
0
        public void Init()
        {
            if (m_WarStone == null)
            {
                return;
            }

            Longsword sword = new Longsword();

            //Backpack.DropItem( new PineShortbow() );
            //Backpack.DropItem( new Arrow( 1000 ) );
            AddItem(sword);

            if (!Female)
            {
                PlateChest chest = new PlateChest();
                chest.Hue      = m_WarStone.ColorTwo;
                chest.LootType = LootType.Blessed;

                AddItem(chest);
            }
            else
            {
                FemalePlateChest fchest = new FemalePlateChest();
                fchest.Hue      = m_WarStone.ColorTwo;
                fchest.LootType = LootType.Blessed;

                AddItem(fchest);
            }

            PlateHelm    helm   = new PlateHelm();
            PlateGorget  gorget = new PlateGorget();
            PlateArms    arms   = new PlateArms();
            PlateGloves  gloves = new PlateGloves();
            PlateLegs    legs   = new PlateLegs();
            HeaterShield shield = new HeaterShield();

            helm.Hue      = m_WarStone.ColorOne;
            helm.LootType = LootType.Blessed;

            gorget.Hue      = m_WarStone.ColorOne;
            gorget.LootType = LootType.Blessed;

            arms.Hue      = m_WarStone.ColorOne;
            arms.LootType = LootType.Blessed;

            gloves.Hue      = m_WarStone.ColorOne;
            gloves.LootType = LootType.Blessed;

            legs.Hue      = m_WarStone.ColorOne;
            legs.LootType = LootType.Blessed;

            shield.Hue      = m_WarStone.ColorTwo;
            shield.LootType = LootType.Blessed;

            AddItem(helm);
            AddItem(gorget);
            AddItem(arms);
            AddItem(gloves);
            AddItem(legs);
            AddItem(shield);
        }
Beispiel #27
0
        public Guardian() : base(AIType.AI_Archer, FightMode.Aggressor, 10, 1, 0.2, 0.4)
        {
            InitStats(100, 125, 25);
            Title = "the guardian";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            if (Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
            }

            new ForestOstard().Rider = this;

            PlateChest chest = new PlateChest
            {
                Hue = 0x966
            };

            AddItem(chest);
            PlateArms arms = new PlateArms
            {
                Hue = 0x966
            };

            AddItem(arms);
            PlateGloves gloves = new PlateGloves
            {
                Hue = 0x966
            };

            AddItem(gloves);
            PlateGorget gorget = new PlateGorget
            {
                Hue = 0x966
            };

            AddItem(gorget);
            PlateLegs legs = new PlateLegs
            {
                Hue = 0x966
            };

            AddItem(legs);
            PlateHelm helm = new PlateHelm
            {
                Hue = 0x966
            };

            AddItem(helm);


            Bow bow = new Bow
            {
                Movable = false,
                Crafter = this,
                Quality = ItemQuality.Exceptional
            };

            AddItem(bow);

            PackItem(new Arrow(250));
            PackGold(250, 500);

            Skills[SkillName.Anatomy].Base      = 120.0;
            Skills[SkillName.Tactics].Base      = 120.0;
            Skills[SkillName.Archery].Base      = 120.0;
            Skills[SkillName.MagicResist].Base  = 120.0;
            Skills[SkillName.DetectHidden].Base = 100.0;
        }
Beispiel #28
0
        public SpawnHelperMage() : base(AIType.AI_Mage, FightMode.Closest, 25, 1, 0.4, 0.3)
        {
            Title = "[BEC-Mage]";
            if (Female = Utility.RandomBool())
            {
                Body = 401;
                Name = NameList.RandomName("female");
            }
            else
            {
                Body = 400;
                Name = NameList.RandomName("male");
            }
//			Name.Hue = 2002;
//			Title.Hue = 2002;


            SetStr(100, 150);
            SetDex(100, 150);
            SetInt(250, 500);
            ActiveSpeed  = 0.2;
            PassiveSpeed = 0;

            SetHits(200, 300);

//            SetDamage(12, 19);

            SetDamageType(ResistanceType.Physical, 120);

            SetResistance(ResistanceType.Physical, 65, 80);
            SetResistance(ResistanceType.Fire, 65, 80);
            SetResistance(ResistanceType.Cold, 65, 80);
            SetResistance(ResistanceType.Poison, 65, 80);
            SetResistance(ResistanceType.Energy, 65, 80);

            SetSkill(SkillName.Swords, 89.0, 120.0);
            SetSkill(SkillName.Tactics, 89.0, 120.0);
            SetSkill(SkillName.MagicResist, 89.0, 120.0);
            SetSkill(SkillName.Tactics, 89.0, 120.0);
            SetSkill(SkillName.Parry, 89.0, 120.0);
            SetSkill(SkillName.Anatomy, 85.0, 120.0);
            SetSkill(SkillName.Healing, 85.0, 120.0);
            SetSkill(SkillName.Magery, 99.0, 120.0);
            SetSkill(SkillName.EvalInt, 99.0, 120.0);
            SetSkill(SkillName.Poisoning, 85.0, 100.0);

            Fame  = 18000;
            Karma = 10000;

            VirtualArmor = 50;

            switch (Utility.Random(4))
            {
            case 0: BattleAxe weapona = new BattleAxe();
                weapona.Hue      = 2063;
                weapona.LootType = LootType.Newbied;
                weapona.Attributes.SpellChanneling    = 1;
                weapona.WeaponAttributes.HitLeechMana = 60;
                weapona.Movable = false;
                AddItem(weapona);
                break;

            case 1: Axe weaponb = new Axe();
                weaponb.Hue      = 2063;
                weaponb.LootType = LootType.Newbied;
                weaponb.Attributes.SpellChanneling    = 1;
                weaponb.WeaponAttributes.HitLeechMana = 60;
                weaponb.Movable = false;
                AddItem(weaponb);
                break;

            case 2: Bardiche weaponc = new Bardiche();
                weaponc.Hue      = 2063;
                weaponc.LootType = LootType.Newbied;
                weaponc.Attributes.SpellChanneling    = 1;
                weaponc.WeaponAttributes.HitLeechMana = 60;
                weaponc.Movable = false;
                AddItem(weaponc);
                break;

            case 3: Hatchet weapond = new Hatchet();
                weapond.Hue      = 2063;
                weapond.LootType = LootType.Newbied;
                weapond.Attributes.SpellChanneling    = 1;
                weapond.WeaponAttributes.HitLeechMana = 60;
                weapond.Movable = false;
                AddItem(weapond);
                break;
            }



            Item Robe = new Robe( );

            Robe.Name    = "Britania Electric Co.";
            Robe.Movable = false;
            Robe.Hue     = 1109;
            AddItem(Robe);



            switch (Utility.Random(3))
            {
            case 0: AddItem(new LongPants(1050)); break;

            case 1: Item LegsOfBane = new LeggingsOfBane();
                LegsOfBane.Hue      = 1269;
                LegsOfBane.LootType = LootType.Newbied;
                LegsOfBane.Movable  = false;
                AddItem(LegsOfBane);
                break;

            case 2: break;
            }

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

            case 1: Item Sandals = new Sandals();
                Sandals.Hue      = 1195;
                Sandals.LootType = LootType.Blessed;
                Sandals.Movable  = false;
                AddItem(Sandals);
                break;

            case 2: break;
            }


            Item PlateHelm = new PlateHelm();

            PlateHelm.Hue      = 2063;
            PlateHelm.LootType = LootType.Newbied;
            PlateHelm.Movable  = false;
            AddItem(PlateHelm);


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

            case 1: break;

            case 2: break;
            }


            AddItem(new Shirt(743));



            Utility.AssignRandomHair(this);

            for (int i = 0; i < 10; i++)
            {
                PackItem(new GreaterCurePotion());
                PackItem(new GreaterHealPotion());
                PackItem(new TotalRefreshPotion());
            }

            PackItem(new Bandage(Utility.RandomMinMax(80, 200)));

            Horse ns = new Horse();

            ns.Controlled    = true;
            ns.Hue           = 2063;
            ns.ControlMaster = this;
            ns.ControlOrder  = OrderType.Stay;
            ns.Rider         = this;
        }
Beispiel #29
0
        public BaneOfWantoness() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body = 0x190;

            SpeechHue = Utility.RandomTalkHue();
            Hue       = Utility.RandomSkinColor();

            Name = NameList.RandomName("male");
            Utility.AssignRandomHair(this);
            int HairColor = Utility.RandomHairHue();

            FacialHairItemID = Utility.RandomList(0, 8254, 8255, 8256, 8257, 8267, 8268, 8269);
            HairHue          = HairColor;
            FacialHairHue    = HairColor;
            Title            = "the Bane of Wantoness";

            SetStr(350);
            SetDex(150);
            SetInt(120);

            SetHits(300);

            SetDamage(12, 23);

            SetDamageType(ResistanceType.Physical, 100);

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

            SetSkill(SkillName.DetectHidden, 80.0);
            SetSkill(SkillName.Anatomy, 110.0);
            SetSkill(SkillName.MagicResist, 80.0);
            SetSkill(SkillName.Macing, 110.0);
            SetSkill(SkillName.Fencing, 110.0);
            SetSkill(SkillName.Wrestling, 110.0);
            SetSkill(SkillName.Swords, 110.0);
            SetSkill(SkillName.Tactics, 110.0);

            Fame  = 8000;
            Karma = -8000;

            VirtualArmor = 30;

            PlateChest chest = new PlateChest();

            chest.Hue             = 0x4AB;
            chest.Name            = "plate tunic of wantoness";
            chest.Durability      = ArmorDurabilityLevel.Indestructible;
            chest.ProtectionLevel = ArmorProtectionLevel.Invulnerability;
            AddItem(chest);
            PlateArms arms = new PlateArms();

            arms.Hue             = 0x4AB;
            arms.Name            = "plate arms of wantoness";
            arms.Durability      = ArmorDurabilityLevel.Indestructible;
            arms.ProtectionLevel = ArmorProtectionLevel.Invulnerability;
            AddItem(arms);
            PlateLegs legs = new PlateLegs();

            legs.Hue             = 0x4AB;
            legs.Name            = "plate leggings of wantoness";
            legs.Durability      = ArmorDurabilityLevel.Indestructible;
            legs.ProtectionLevel = ArmorProtectionLevel.Invulnerability;
            AddItem(legs);
            PlateGorget neck = new PlateGorget();

            neck.Hue             = 0x4AB;
            neck.Name            = "plate gorget of wantoness";
            neck.Durability      = ArmorDurabilityLevel.Indestructible;
            neck.ProtectionLevel = ArmorProtectionLevel.Invulnerability;
            AddItem(neck);
            PlateGloves gloves = new PlateGloves();

            gloves.Hue             = 0x4AB;
            gloves.Name            = "plate gloves of wantoness";
            gloves.Durability      = ArmorDurabilityLevel.Indestructible;
            gloves.ProtectionLevel = ArmorProtectionLevel.Invulnerability;
            AddItem(gloves);
            PlateHelm helm = new PlateHelm();

            helm.Hue             = 0x4AB;
            helm.ItemID          = 0x2645;
            helm.Name            = "plate helm of wantoness";
            helm.Durability      = ArmorDurabilityLevel.Indestructible;
            helm.ProtectionLevel = ArmorProtectionLevel.Invulnerability;
            AddItem(helm);
            ExecutionersAxe weapon = new ExecutionersAxe();

            weapon.Hue             = 0x4AB;
            weapon.Name            = "axe of wantoness";
            weapon.AccuracyLevel   = WeaponAccuracyLevel.Supremely;
            weapon.DamageLevel     = WeaponDamageLevel.Vanq;
            weapon.DurabilityLevel = WeaponDurabilityLevel.Indestructible;
            AddItem(weapon);
        }
Beispiel #30
0
        public HireFighter()
        {
            Female = Utility.RandomBool();
            Body   = Female ? 401 : 400;
            Title  = "the fighter";
            Name   = NameList.RandomName(Female ? "female" : "male");
            Hue    = Utility.RandomSkinHue();
            SetStr(11, 88);
            SetDex(11, 88);
            SetInt(7, 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);
                item     = new StuddedChest();
                AddItem(item);
                item = new StuddedLegs();
                AddItem(item);
                item = new StuddedArms();
                AddItem(item);
                item = new StuddedGloves();
                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);
                item = new StuddedGorget();
                AddItem(item);
                item = Loot.RandomWeapon();
                AddItem(item);
                if (item.Layer == Layer.OneHanded)
                {
                    item = new WoodenShield();
                    AddItem(item);
                }
            }
            else
            {
                item     = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                item     = new StuddedChest();
                AddItem(item);
                item = new StuddedLegs();
                AddItem(item);
                item = new StuddedArms();
                AddItem(item);
                item = new StuddedGloves();
                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);
                item = new StuddedGorget();
                AddItem(item);
                item = Loot.RandomWeapon();
                AddItem(item);
                if (item.Layer == Layer.OneHanded)
                {
                    item = new WoodenShield();
                    AddItem(item);
                }
            }
        }