Ejemplo n.º 1
0
        public Earthcaller() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.15, 0.2)
        {
            Title = "the Earthcaller";

            Hue              = Utility.RandomSkinHue();
            Body             = 0x190;
            Name             = NameList.RandomName("male");
            BaseSoundID      = 0;
            Kills            = 10;
            ShortTermMurders = 10;

            Item StrawHat = new StrawHat();

            StrawHat.Movable = false;
            StrawHat.Hue     = 1021;
            EquipItem(StrawHat);

            Item Robe = new Robe();

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

            Item Sandals = new Sandals();

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

            SetStr(200, 220);
            SetDex(136, 145);

            SetDamage(10, 17);

            SetSkill(SkillName.Wrestling, 95.3, 98.8);
            SetSkill(SkillName.Tactics, 93.5, 97.0);
            SetSkill(SkillName.MagicResist, 96.6, 99.8);

            Fame  = 12500;
            Karma = -12500;

            VirtualArmor = 50;

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

            PackGold(500, 800);
            PackPotion();
            PackItem(new Bandage(Utility.RandomMinMax(5, 10)));
            PackArmor(0, 5);
            PackWeapon(0, 5);
            PackSlayer();

            if (0.05 > Utility.RandomDouble())
            {
                PackItem(new Obsidian());
            }
        }
Ejemplo n.º 2
0
        public static Item GetRandomHat()
        {
            Item hat = null;

            switch (Utility.Random(6))
            {
            case 0:
                hat = new SkullCap(GetRandomHue());
                break;

            case 1:
                hat = new Bandana(GetRandomHue());
                break;

            case 2:
                hat = new WideBrimHat();
                break;

            case 3:
                hat = new TallStrawHat(Utility.RandomNeutralHue());
                break;

            case 4:
                hat = new StrawHat(Utility.RandomNeutralHue());
                break;

            case 5:
                hat = new TricorneHat(Utility.RandomNeutralHue());
                break;
            }

            return(hat);
        }
        public void TestHasEquippedNewHelmet()
        {
            var strawHat  = new StrawHat();
            var inventory = new InventoryBuilder().HasHelmetEquipped(strawHat);

            Assert.True(inventory.WieldedHelmet.Equals(strawHat));
        }
Ejemplo n.º 4
0
        public override void InitOutfit()
        {
            Item item = null;

            if (!Female)
            {
                item     = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                item     = AddRandomFacialHair(item.Hue);
                item     = new Shirt();
                item.Hue = Utility.RandomNondyedHue();
                AddItem(item);
                item     = new LongPants();
                item.Hue = Utility.RandomNondyedHue();
                AddItem(item);
                item     = new StrawHat();
                item.Hue = Utility.RandomNeutralHue();
                AddItem(item);
                item = Utility.RandomBool() ? (Item) new Boots() : (Item) new ThighBoots();
                AddItem(item);
                PackGold(15, 100);
            }
            else
            {
                item     = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                item     = new Shirt();
                item.Hue = Utility.RandomNondyedHue();
                AddItem(item);
                item     = new Skirt();
                item.Hue = Utility.RandomNondyedHue();
                AddItem(item);
                item     = new StrawHat();
                item.Hue = Utility.RandomNeutralHue();
                AddItem(item);
                item = Utility.RandomBool() ? (Item) new Boots() : (Item) new ThighBoots();
                AddItem(item);
                PackGold(15, 100);
            }
        }
Ejemplo n.º 5
0
        public Gambler()
            : base(AIType.AI_Melee, FightMode.None, 10, 1, 0.8, 3.0)
        {
            SetStr(10, 30);
            SetDex(10, 30);
            SetInt(10, 30);
            Fame      = 50;
            Karma     = 50;
            SpeechHue = Utility.RandomDyedHue();
            Title     = "the gambler";
            Hue       = Utility.RandomSkinHue();
            Blessed   = true;
            NameHue   = 0x35;

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

                HairItemID = Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2045, 0x204A, 0x2046, 0x2049);
                HairHue    = Utility.RandomHairHue();

                Item hat = null;
                switch (Utility.Random(5))
                {
                case 0: hat = new FloppyHat(Utility.RandomNeutralHue());              break;

                case 1: hat = new FeatheredHat(Utility.RandomNeutralHue());   break;

                case 2: hat = new Bonnet();                                             break;

                case 3: hat = new Cap(Utility.RandomNeutralHue());            break;
                }
                AddItem(hat);
            }
            else
            {
                this.Body = 0x190;
                this.Name = NameList.RandomName("male");

                HairItemID = Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2048);
                HairHue    = Utility.RandomHairHue();

                FacialHairItemID = Utility.RandomList(0x0000, 0x203E, 0x203F, 0x2040, 0x2041, 0x2067, 0x2068, 0x2069);
                FacialHairHue    = HairHue;

                Item hat = null;
                switch (Utility.Random(7))
                {
                case 0: hat = new SkullCap(GetRandomHue());                   break;

                case 1: hat = new Bandana(GetRandomHue());                    break;

                case 2: hat = new WideBrimHat();                                        break;

                case 3: hat = new TallStrawHat(Utility.RandomNeutralHue());   break;

                case 4: hat = new StrawHat(Utility.RandomNeutralHue());               break;

                case 5: hat = new TricorneHat(Utility.RandomNeutralHue());    break;
                }
                AddItem(hat);
            }
            AddItem(new LongPants(GetRandomHue()));
            AddItem(new FancyShirt(GetRandomHue()));
            AddItem(new Boots(Utility.RandomNeutralHue()));
            AddItem(new Cloak(GetRandomHue()));
            AddItem(new BodySash(GetRandomHue()));

            Container pack = new Backpack();

            pack.Movable = false;
            pack.Visible = false;

            AddItem(pack);

            //reset stats
            for (int i = 0; i <= 5; ++i)
            {
                gamestats[i] = 0;
            }
        }
Ejemplo n.º 6
0
        private static void ApplyHatEffect()
        {
            CleanUp();
            if (Game1.player.hat.Value != null)
            {
                Monitor.Log($"Hat Equipped: {Game1.player.hat.Value.Name}", LogLevel.Trace);
                switch (Game1.player.hat.Value.Name)
                {
                case CowboyHat.Name:
                    CowboyHat.Activate();
                    DisableHat = CowboyHat.Disable;
                    break;

                case BowlerHat.Name:
                    BowlerHat.Activate();
                    DisableHat = BowlerHat.Disable;
                    break;

                case TopHat.Name:
                    TopHat.Activate();
                    DisableHat = TopHat.Disable;
                    break;

                case Sombrero.Name:
                    Sombrero.Activate();
                    DisableHat = Sombrero.Disable;
                    break;

                case StrawHat.Name:
                    StrawHat.Activate();
                    DisableHat = StrawHat.Disable;
                    break;

                case OfficialCap.Name:
                    OfficialCap.Activate();
                    DisableHat = OfficialCap.Disable;
                    break;

                case BlueBonnet.Name:
                    BlueBonnet.Activate();
                    DisableHat = BlueBonnet.Disable;
                    break;

                case PlumChapeau.Name:
                    PlumChapeau.Activate();
                    DisableHat = PlumChapeau.Disable;
                    break;

                case SkeletonMask.Name:
                    SkeletonMask.Activate();
                    DisableHat = SkeletonMask.Disable;
                    break;

                case GoblinMask.Name:
                    GoblinMask.Activate();
                    DisableHat = GoblinMask.Disable;
                    break;

                case ChickenMask.Name:
                    ChickenMask.Activate();
                    DisableHat = ChickenMask.Disable;
                    break;

                case Earmuffs.Name:
                    Earmuffs.Activate();
                    DisableHat = Earmuffs.Disable;
                    break;

                case DelicateBow.Name:
                    DelicateBow.Activate();
                    DisableHat = DelicateBow.Disable;
                    break;

                case Tropiclip.Name:
                    Tropiclip.Activate();
                    DisableHat = Tropiclip.Disable;
                    break;

                case ButterflyBow.Name:
                    ButterflyBow.Activate();
                    DisableHat = ButterflyBow.Disable;
                    break;

                case HuntersCap.Name:
                    HuntersCap.Activate();
                    DisableHat = HuntersCap.Disable;
                    break;

                case TruckerHat.Name:
                    TruckerHat.Activate();
                    DisableHat = TruckerHat.Disable;
                    break;

                case SailorsCap.Name:
                    SailorsCap.Activate();
                    DisableHat = SailorsCap.Disable;
                    break;

                case GoodOlCap.Name:
                    GoodOlCap.Activate();
                    DisableHat = GoodOlCap.Disable;
                    break;

                case Fedora.Name:
                    Fedora.Activate();
                    DisableHat = Fedora.Disable;
                    break;

                case CoolCap.Name:
                    CoolCap.Activate();
                    DisableHat = CoolCap.Disable;
                    break;

                case LuckyBow.Name:
                    LuckyBow.Activate();
                    DisableHat = LuckyBow.Disable;
                    break;

                case PolkaBow.Name:
                    PolkaBow.Activate();
                    DisableHat = PolkaBow.Disable;
                    break;

                case GnomesCap.Name:
                    GnomesCap.Activate();
                    DisableHat = GnomesCap.Disable;
                    break;

                case EyePatch.Name:
                    EyePatch.Activate();
                    DisableHat = EyePatch.Disable;
                    break;

                case SantaHat.Name:
                    SantaHat.Activate();
                    DisableHat = SantaHat.Disable;
                    break;

                case Tiara.Name:
                    Tiara.Activate();
                    DisableHat = Tiara.Disable;
                    break;

                case HardHat.Name:
                    HardHat.Activate();
                    DisableHat = HardHat.Disable;
                    break;

                case Souwester.Name:
                    Souwester.Activate();
                    DisableHat = Souwester.Disable;
                    break;

                case Daisy.Name:
                    Daisy.Activate();
                    DisableHat = Daisy.Disable;
                    break;

                case WatermelonBand.Name:
                    WatermelonBand.Activate();
                    DisableHat = WatermelonBand.Disable;
                    break;

                case MouseEars.Name:
                    MouseEars.Activate();
                    DisableHat = MouseEars.Disable;
                    break;

                case CatEars.Name:
                    CatEars.Activate();
                    DisableHat = CatEars.Disable;
                    break;

                case CowgalHat.Name:
                    CowgalHat.Activate();
                    DisableHat = CowgalHat.Disable;
                    break;

                case CowpokeHat.Name:
                    CowpokeHat.Activate();
                    DisableHat = CowpokeHat.Disable;
                    break;

                case ArchersCap.Name:
                    ArchersCap.Activate();
                    DisableHat = ArchersCap.Disable;
                    break;

                case PandaHat.Name:
                    PandaHat.Activate();
                    DisableHat = PandaHat.Disable;
                    break;

                case BlueCowboyHat.Name:
                    BlueCowboyHat.Activate();
                    DisableHat = BlueCowboyHat.Disable;
                    break;

                case RedCowboyHat.Name:
                    RedCowboyHat.Activate();
                    DisableHat = RedCowboyHat.Disable;
                    break;

                case ConeHat.Name:
                    ConeHat.Activate();
                    DisableHat = ConeHat.Disable;
                    break;

                case LivingHat.Name:
                    LivingHat.Activate();
                    DisableHat = LivingHat.Disable;
                    break;

                case EmilysMagicHat.Name:
                    EmilysMagicHat.Activate();
                    DisableHat = EmilysMagicHat.Disable;
                    break;

                case MushroomCap.Name:
                    MushroomCap.Activate();
                    DisableHat = MushroomCap.Disable;
                    break;

                case DinosaurHat.Name:
                    DinosaurHat.Activate();
                    DisableHat = DinosaurHat.Disable;
                    break;

                case TotemMask.Name:
                    TotemMask.Activate();
                    DisableHat = TotemMask.Disable;
                    break;

                case LogoCap.Name:
                    LogoCap.Activate();
                    DisableHat = LogoCap.Disable;
                    break;

                case WearableDwarfHelm.Name:
                    WearableDwarfHelm.Activate();
                    DisableHat = WearableDwarfHelm.Disable;
                    break;

                case FashionHat.Name:
                    FashionHat.Activate();
                    DisableHat = FashionHat.Disable;
                    break;

                case PumpkinMask.Name:
                    PumpkinMask.Activate();
                    DisableHat = PumpkinMask.Disable;
                    break;

                case HairBone.Name:
                    HairBone.Activate();
                    DisableHat = HairBone.Disable;
                    break;

                case KnightsHelmet.Name:
                    KnightsHelmet.Activate();
                    DisableHat = KnightsHelmet.Disable;
                    break;

                case SquiresHelmet.Name:
                    SquiresHelmet.Activate();
                    DisableHat = SquiresHelmet.Disable;
                    break;

                case SpottedHeadscarf.Name:
                    SpottedHeadscarf.Activate();
                    DisableHat = SpottedHeadscarf.Disable;
                    break;

                case Beanie.Name:
                    Beanie.Activate();
                    DisableHat = Beanie.Disable;
                    break;

                case FishingHat.Name:
                    FishingHat.Activate();
                    DisableHat = FishingHat.Disable;
                    break;

                case BlobfishMask.Name:
                    BlobfishMask.Activate();
                    DisableHat = BlobfishMask.Disable;
                    break;

                case PartyHat.Name:
                    PartyHat.Activate();
                    DisableHat = PartyHat.Disable;
                    break;

                case ArcaneHat.Name:
                    ArcaneHat.Activate();
                    DisableHat = ArcaneHat.Disable;
                    break;

                case ChefHat.Name:
                    ChefHat.Activate();
                    DisableHat = ChefHat.Disable;
                    break;

                case PirateHat.Name:
                    PirateHat.Activate();
                    DisableHat = PirateHat.Disable;
                    break;

                case FlatToppedHat.Name:
                    FlatToppedHat.Activate();
                    DisableHat = FlatToppedHat.Disable;
                    break;

                case ElegantTurban.Name:
                    ElegantTurban.Activate();
                    DisableHat = ElegantTurban.Disable;
                    break;

                case WhiteTurban.Name:
                    WhiteTurban.Activate();
                    DisableHat = WhiteTurban.Disable;
                    break;

                case GarbageHat.Name:
                    GarbageHat.Activate();
                    DisableHat = GarbageHat.Disable;
                    break;

                case GoldenMask.Name:
                    GoldenMask.Activate();
                    DisableHat = GoldenMask.Disable;
                    break;

                case PropellerHat.Name:
                    PropellerHat.Activate();
                    DisableHat = PropellerHat.Disable;
                    break;

                case BridalVeil.Name:
                    BridalVeil.Activate();
                    DisableHat = BridalVeil.Disable;
                    break;

                case WitchHat.Name:
                    WitchHat.Activate();
                    DisableHat = WitchHat.Disable;
                    break;

                case CopperPan.Name:
                    CopperPan.Activate();
                    DisableHat = CopperPan.Disable;
                    break;

                case GreenTurban.Name:
                    GreenTurban.Activate();
                    DisableHat = GreenTurban.Disable;
                    break;

                case MagicCowboyHat.Name:
                    MagicCowboyHat.Activate();
                    DisableHat = MagicCowboyHat.Disable;
                    break;

                case MagicTurban.Name:
                    MagicTurban.Activate();
                    DisableHat = MagicTurban.Disable;
                    break;

                default:
                    Monitor.Log($"Hat not found: {Game1.player.hat.Value.Name}", LogLevel.Warn);
                    break;
                }
            }
        }
Ejemplo n.º 7
0
        public XmlQuestNPC(int gender, bool clothes) : base(AIType.AI_Melee, FightMode.None, 10, 1, 0.8, 3.0)
        {
            SetStr(10, 30);
            SetDex(10, 30);
            SetInt(10, 30);

            Fame  = 50;
            Karma = 50;

            CanHearGhosts = true;

            SpeechHue = Utility.RandomDyedHue();
            Title     = string.Empty;
            Hue       = Utility.RandomSkinHue();

            switch (gender)
            {
            case -1: this.Female = Utility.RandomBool(); break;

            case 0: this.Female = false; break;

            case 1: this.Female = true; break;
            }

            if (clothes)
            {
                if (this.Female)
                {
                    this.Body = 0x191;
                    this.Name = NameList.RandomName("female");
                    Item hair = new Item(Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2045, 0x204A, 0x2046, 0x2049));
                    hair.Hue     = Utility.RandomHairHue();
                    hair.Layer   = Layer.Hair;
                    hair.Movable = false;
                    AddItem(hair);
                    Item hat = null;
                    switch (Utility.Random(5))//4 hats, one empty, for no hat
                    {
                    case 0: hat = new FloppyHat(Utility.RandomNeutralHue()); break;

                    case 1: hat = new FeatheredHat(Utility.RandomNeutralHue()); break;

                    case 2: hat = new Bonnet(); break;

                    case 3: hat = new Cap(Utility.RandomNeutralHue()); break;
                    }
                    AddItem(hat);
                    Item pants = null;
                    switch (Utility.Random(3))
                    {
                    case 0: pants = new ShortPants(GetRandomHue()); break;

                    case 1: pants = new LongPants(GetRandomHue()); break;

                    case 2: pants = new Skirt(GetRandomHue()); break;
                    }
                    AddItem(pants);
                    Item shirt = null;
                    switch (Utility.Random(7))
                    {
                    case 0: shirt = new Doublet(GetRandomHue()); break;

                    case 1: shirt = new Surcoat(GetRandomHue()); break;

                    case 2: shirt = new Tunic(GetRandomHue()); break;

                    case 3: shirt = new FancyDress(GetRandomHue()); break;

                    case 4: shirt = new PlainDress(GetRandomHue()); break;

                    case 5: shirt = new FancyShirt(GetRandomHue()); break;

                    case 6: shirt = new Shirt(GetRandomHue()); break;
                    }
                    AddItem(shirt);
                }
                else
                {
                    this.Body = 0x190;
                    this.Name = NameList.RandomName("male");
                    Item hair = new Item(Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2048));
                    hair.Hue     = Utility.RandomHairHue();
                    hair.Layer   = Layer.Hair;
                    hair.Movable = false;
                    AddItem(hair);
                    Item beard = new Item(Utility.RandomList(0x0000, 0x203E, 0x203F, 0x2040, 0x2041, 0x2067, 0x2068, 0x2069));
                    beard.Hue     = hair.Hue;
                    beard.Layer   = Layer.FacialHair;
                    beard.Movable = false;
                    AddItem(beard);
                    Item hat = null;
                    switch (Utility.Random(7)) //6 hats, one empty, for no hat
                    {
                    case 0: hat = new SkullCap(GetRandomHue()); break;

                    case 1: hat = new Bandana(GetRandomHue()); break;

                    case 2: hat = new WideBrimHat(); break;

                    case 3: hat = new TallStrawHat(Utility.RandomNeutralHue()); break;

                    case 4: hat = new StrawHat(Utility.RandomNeutralHue()); break;

                    case 5: hat = new TricorneHat(Utility.RandomNeutralHue()); break;
                    }
                    AddItem(hat);
                    Item pants = null;
                    switch (Utility.Random(2))
                    {
                    case 0: pants = new ShortPants(GetRandomHue()); break;

                    case 1: pants = new LongPants(GetRandomHue()); break;
                    }
                    AddItem(pants);
                    Item shirt = null;
                    switch (Utility.Random(5))
                    {
                    case 0: shirt = new Doublet(GetRandomHue()); break;

                    case 1: shirt = new Surcoat(GetRandomHue()); break;

                    case 2: shirt = new Tunic(GetRandomHue()); break;

                    case 3: shirt = new FancyShirt(GetRandomHue()); break;

                    case 4: shirt = new Shirt(GetRandomHue()); break;
                    }
                    AddItem(shirt);
                }

                Item feet = null;
                switch (Utility.Random(3))
                {
                case 0: feet = new Boots(Utility.RandomNeutralHue()); break;

                case 1: feet = new Shoes(Utility.RandomNeutralHue()); break;

                case 2: feet = new Sandals(Utility.RandomNeutralHue()); break;
                }
                AddItem(feet);
            }
            Container pack = new Backpack();

            //pack.DropItem( new Gold( 0, 50 ) );

            pack.Movable = false;

            AddItem(pack);
        }
Ejemplo n.º 8
0
        public DeerTrapper() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name = "Deer Trapper";
            Body = 400;
            Hue  = 1002;


            SetStr(796, 825);
            SetDex(86, 105);
            SetInt(436, 475);
            SetHits(478, 495);
            SetDamage(20, 30);


            Item longpants;

            longpants     = new LongPants();
            longpants.Hue = 944;
            AddItem(longpants);
            longpants.LootType = LootType.Newbied;

            Item shirt;

            shirt     = new Tunic();
            shirt.Hue = 605;
            AddItem(shirt);
            shirt.LootType = LootType.Newbied;


            Item StrawHat;

            StrawHat     = new StrawHat();
            StrawHat.Hue = 944;
            AddItem(StrawHat);
            StrawHat.LootType = LootType.Newbied;

            Item boots;

            boots     = new Boots();
            boots.Hue = 1109;
            AddItem(boots);
            boots.LootType = LootType.Newbied;


            this.FacialHairItemID = 0x203F;
            this.FacialHairHue    = 1001;


            this.HairItemID = 0x2049;
            this.HairHue    = 1001;



            DoubleAxe weapon = new DoubleAxe();

            weapon.Movable = false;
            AddItem(weapon);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 55, 60);
            SetResistance(ResistanceType.Fire, 61, 71);
            SetResistance(ResistanceType.Cold, 30, 40);
            SetResistance(ResistanceType.Poison, 25, 35);
            SetResistance(ResistanceType.Energy, 35, 45);

            SetSkill(SkillName.MagicResist, 99.2, 100);
            SetSkill(SkillName.Tactics, 97.6, 100);
            SetSkill(SkillName.Wrestling, 90.1, 92.5);
            SetSkill(SkillName.Anatomy, 75.1, 78);



            PackGold(250, 350);
        }
Ejemplo n.º 9
0
        public Commoner()
            : base(AIType.AI_Melee, FightMode.None, 10, 1, 0.8, 3.0)
        {
            SetStr(10, 30);
            SetDex(10, 30);
            SetInt(10, 30);

            Fame  = 50;
            Karma = 50;

            SpeechHue = Utility.RandomDyedHue();
            Title     = string.Empty;        //Commoner.Titles[Utility.Random( 0, Titles.Length )];
            Hue       = Utility.RandomSkinHue();
            if (this.Female = Utility.RandomBool())
            {
                this.Body = 0x191;
                this.Name = NameList.RandomName("female");

                HairItemID = Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2045, 0x204A, 0x2046, 0x2049);
                HairHue    = Utility.RandomHairHue();

                Item hat = null;
                switch (Utility.Random(5))                   //4 hats, one empty, for no hat
                {
                case 0: hat = new FloppyHat(Utility.RandomNeutralHue()); break;

                case 1: hat = new FeatheredHat(Utility.RandomNeutralHue()); break;

                case 2: hat = new Bonnet(); break;

                case 3: hat = new Cap(Utility.RandomNeutralHue()); break;
                }
                AddItem(hat);
                Item pants = null;
                switch (Utility.Random(3))
                {
                case 0: pants = new ShortPants(GetRandomHue()); break;

                case 1: pants = new LongPants(GetRandomHue()); break;

                case 2: pants = new Skirt(GetRandomHue()); break;
                }
                AddItem(pants);
                Item shirt = null;
                switch (Utility.Random(7))
                {
                case 0: shirt = new Doublet(GetRandomHue()); break;

                case 1: shirt = new Surcoat(GetRandomHue()); break;

                case 2: shirt = new Tunic(GetRandomHue()); break;

                case 3: shirt = new FancyDress(GetRandomHue()); break;

                case 4: shirt = new PlainDress(GetRandomHue()); break;

                case 5: shirt = new FancyShirt(GetRandomHue()); break;

                case 6: shirt = new Shirt(GetRandomHue()); break;
                }
                AddItem(shirt);
            }
            else
            {
                this.Body = 0x190;
                this.Name = NameList.RandomName("male");

                HairItemID = Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2048);
                HairHue    = Utility.RandomHairHue();

                FacialHairItemID = Utility.RandomList(0x0000, 0x203E, 0x203F, 0x2040, 0x2041, 0x2067, 0x2068, 0x2069);
                FacialHairHue    = HairHue;

                Item hat = null;
                switch (Utility.Random(7))                    //6 hats, one empty, for no hat
                {
                case 0: hat = new SkullCap(GetRandomHue()); break;

                case 1: hat = new Bandana(GetRandomHue()); break;

                case 2: hat = new WideBrimHat(); break;

                case 3: hat = new TallStrawHat(Utility.RandomNeutralHue()); break;

                case 4: hat = new StrawHat(Utility.RandomNeutralHue()); break;

                case 5: hat = new TricorneHat(Utility.RandomNeutralHue()); break;
                }
                AddItem(hat);
                Item pants = null;
                switch (Utility.Random(2))
                {
                case 0: pants = new ShortPants(GetRandomHue()); break;

                case 1: pants = new LongPants(GetRandomHue()); break;
                }
                AddItem(pants);
                Item shirt = null;
                switch (Utility.Random(5))
                {
                case 0: shirt = new Doublet(GetRandomHue()); break;

                case 1: shirt = new Surcoat(GetRandomHue()); break;

                case 2: shirt = new Tunic(GetRandomHue()); break;

                case 3: shirt = new FancyShirt(GetRandomHue()); break;

                case 4: shirt = new Shirt(GetRandomHue()); break;
                }
                AddItem(shirt);
            }

            Item feet = null;

            switch (Utility.Random(3))
            {
            case 0: feet = new Boots(Utility.RandomNeutralHue()); break;

            case 1: feet = new Shoes(Utility.RandomNeutralHue()); break;

            case 2: feet = new Sandals(Utility.RandomNeutralHue()); break;
            }
            AddItem(feet);
            Container pack = new Backpack();

            pack.Movable = false;

            AddItem(pack);
        }