private static void AddBeard(Mobile m, int itemID, int hue)
        {
            if (m.Female)
            {
                return;
            }

            Item item;

            switch (itemID & 0x3FFF)
            {
            case 0x203E: item = new LongBeard(hue); break;

            case 0x203F: item = new ShortBeard(hue); break;

            case 0x2040: item = new Goatee(hue); break;

            case 0x2041: item = new Mustache(hue); break;

            case 0x204B: item = new MediumShortBeard(hue); break;

            case 0x204C: item = new MediumLongBeard(hue); break;

            case 0x204D: item = new Vandyke(hue); break;

            default: return;
            }

            m.AddItem(item);
        }
        public override void InitOutfit()
        {
            WipeLayers();

            if (Core.UOAI || Core.UOAR)
            {
                AddItem(new Sandals());

                Item EvilMageRobe = new Robe();
                EvilMageRobe.Hue      = 0x1;
                EvilMageRobe.LootType = LootType.Newbied;
                AddItem(EvilMageRobe);

                Item BDB = new BloodDrenchedBandana();
                BDB.LootType = LootType.Newbied;
                AddItem(BDB);

                Item Cloak = new Cloak();
                Cloak.Hue      = 0x1;
                Cloak.LootType = LootType.Newbied;
                AddItem(Cloak);

                Item Bracelet = new GoldBracelet();
                Bracelet.LootType = LootType.Newbied;
                AddItem(Bracelet);

                Item Ring = new GoldRing();
                Ring.LootType = LootType.Newbied;
                AddItem(Ring);

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

                Item beard = new Goatee();
                beard.Hue     = 0x47E;
                beard.Movable = false;
                AddItem(beard);
            }
            else
            {
                if (Blackthorns_Revenge == false)
                {                                              // not Todd's graphics, so we need to dress
                    AddItem(new Robe(Utility.RandomRedHue())); // TODO: Proper hue

                    // Don't think we should drop the sandals .. stratics is unclear when it comes to clothes.
                    // http://web.archive.org/web/20020207054748/uo.stratics.com/hunters/evilmage.shtml
                    //  Red Robe: 0 to 50 Gold, Scrolls (circles 1-7), Reagents

                    /*Sandals shoes = new Sandals();
                     * if (Core.UOSP || Core.UOMO)
                     *      shoes.LootType = LootType.Newbied;
                     * AddItem(shoes);*/


                    /* Publish 4
                     * Shopkeeper Changes
                     * NPC shopkeepers will no longer have colored sandals. Evil NPC Mages will carry these items.
                     */
                    if (Core.Publish >= 4)
                    {
                        // http://forums.uosecondage.com/viewtopic.php?f=8&t=22266
                        // runuo.com/community/threads/evil-mage-hues.91540/
                        if (0.18 >= Utility.RandomDouble())
                        {
                            AddItem(new Shoes(Utility.RandomRedHue()));
                        }
                        else
                        {
                            AddItem(new Sandals(Utility.RandomRedHue()));
                        }
                    }
                    else
                    {
                        AddItem(new Sandals());
                    }
                }

                Item hair = null;
                switch (Utility.Random(4))
                {
                case 0:                         //  bald
                    break;

                case 1:
                    hair = new ShortHair();
                    break;

                case 2:
                    hair = new LongHair();
                    break;

                case 3:
                    hair = new ReceedingHair();
                    break;
                }

                if (hair != null)
                {
                    hair.Hue     = Utility.RandomHairHue();
                    hair.Layer   = Layer.Hair;
                    hair.Movable = false;
                    AddItem(hair);
                }

                Item beard = null;
                switch (Utility.Random(4))
                {
                case 0:                         //  clean shaven
                    break;

                case 1:
                    beard = new LongBeard();
                    break;

                case 2:
                    beard = new ShortBeard();
                    break;

                case 3:
                    beard = new MediumLongBeard();
                    break;

                case 4:
                    beard = new MediumShortBeard();
                    break;
                }

                if (beard != null)
                {
                    beard.Hue     = (hair != null) ? hair.Hue : Utility.RandomHairHue();                 // do the drapes match the carpet?
                    beard.Movable = false;
                    beard.Layer   = Layer.FacialHair;
                    AddItem(beard);
                }
            }
        }
Example #3
0
        public override void InitOutfit()
        {
            WipeLayers();

            if (Core.UOAI || Core.UOAR)
            {
                if (Utility.RandomBool())
                {
                    AddItem(new Shoes(Utility.RandomBlueHue()));
                }
                else
                {
                    AddItem(new Sandals(Utility.RandomBlueHue()));
                }

                //New Fall Fashions!

                Item EvilMageRobe = new Robe();
                EvilMageRobe.Hue      = 0x1;
                EvilMageRobe.LootType = LootType.Newbied;
                AddItem(EvilMageRobe);

                Item EvilWizHat = new WizardsHat();
                EvilWizHat.Hue      = 0x1;
                EvilWizHat.LootType = LootType.Newbied;
                AddItem(EvilWizHat);

                Item Bracelet = new GoldBracelet();
                Bracelet.LootType = LootType.Newbied;
                AddItem(Bracelet);

                Item Ring = new GoldRing();
                Ring.LootType = LootType.Newbied;
                AddItem(Ring);

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

                Item beard = new MediumLongBeard();
                beard.Hue     = 0x47E;
                beard.Movable = false;
                beard.Layer   = Layer.FacialHair;
                AddItem(beard);
            }
            else
            {
                if (Blackthorns_Revenge == false)
                {                       // not Todd's graphocs, so we dress
                                        // evil mage lord colors 1106 1109
                    AddItem(new Robe(Utility.Random(1106, 4)));

                    // Don't think we should drop the sandals .. stratics is unclear when it comes to clothes.
                    // http://web.archive.org/web/20020414131123/uo.stratics.com/hunters/evilmagelord.shtml
                    // Blue Robe: 200 to 250 Gold, Gems, Scrolls (circles 4-7), Reagents

                    /*Sandals shoes = new Sandals();
                     * if (Core.UOSP || Core.UOMO)
                     *      shoes.LootType = LootType.Newbied;
                     * AddItem(shoes);*/

                    /* Publish 8
                     * Shopkeeper Changes
                     * NPC shopkeepers will no longer have colored sandals. Evil NPC Mages will carry these items.
                     */
                    if (Core.Publish >= 4)
                    {
                        // http://forums.uosecondage.com/viewtopic.php?f=8&t=22266
                        // runuo.com/community/threads/evil-mage-hues.91540/
                        if (0.20 >= Utility.RandomDouble())
                        {
                            AddItem(new Shoes(Utility.RandomBlueHue()));
                        }
                        else
                        {
                            AddItem(new Sandals(Utility.RandomBlueHue()));
                        }
                    }
                    else
                    {
                        AddItem(new Sandals());
                    }
                }

                Item hair = null;
                switch (Utility.Random(4))
                {
                case 0:                         //  bald
                    break;

                case 1:
                    hair = new ShortHair();
                    break;

                case 2:
                    hair = new LongHair();
                    break;

                case 3:
                    hair = new ReceedingHair();
                    break;
                }

                if (hair != null)
                {
                    hair.Hue     = Utility.RandomHairHue();
                    hair.Layer   = Layer.Hair;
                    hair.Movable = false;
                    AddItem(hair);
                }

                Item beard = null;
                switch (Utility.Random(4))
                {
                case 0:                         //  clean shaven
                    break;

                case 1:
                    beard = new LongBeard();
                    break;

                case 2:
                    beard = new ShortBeard();
                    break;

                case 3:
                    beard = new MediumLongBeard();
                    break;

                case 4:
                    beard = new MediumShortBeard();
                    break;
                }

                if (beard != null)
                {
                    beard.Hue     = (hair != null) ? hair.Hue : Utility.RandomHairHue();                 // do the drapes match the carpet?
                    beard.Movable = false;
                    beard.Layer   = Layer.FacialHair;
                    AddItem(beard);
                }
            }
        }