Пример #1
0
            protected override void OnTarget(Mobile from, object o)
            {
                if (o is Item)
                {
                    Item           item    = (Item)o;
                    PlayerMobile   pm      = from as PlayerMobile;
                    ImbuingContext context = Imbuing.GetContext(pm);

                    int itemRef = ImbuingGump.GetItemRef(o);

                    if (itemRef == 0)
                    {
                        from.SendLocalizedMessage(1079576); // You cannot imbue this item.
                        return;
                    }

                    ImbuingGump.ImbueStep1(from, item);
                }
            }
Пример #2
0
        private const int FontColor  = 0xFFFFFF; //string

        public ImbuingGumpB(Mobile from, Item item) : base(520, 340)
        {
            from.CloseGump(typeof(ImbuingGump));
            from.CloseGump(typeof(ImbuingGumpC));

            Mobile       m  = from;
            PlayerMobile pm = from as PlayerMobile;

            ImbuingContext context = Imbuing.GetContext(m);

            m_Item = context.LastImbued;

            int  itemRef   = ImbuingGump.GetItemRef(m_Item);
            bool twoHanded = item.Layer == Layer.TwoHanded;

            AddPage(0);
            AddBackground(0, 0, 520, 520, 5054);
            AddImageTiled(10, 10, 500, 500, 2624);
            AddImageTiled(10, 30, 500, 10, 5058);
            AddImageTiled(230, 40, 10, 480, 5058);
            AddImageTiled(10, 480, 500, 10, 5058);

            AddAlphaRegion(10, 10, 520, 500);

            AddHtmlLocalized(10, 12, 520, 20, 1079588, LabelColor, false, false); //IMBING MENU
            int yOffset = 0;

            // ===== Attribute Catagories ========================================
            AddHtmlLocalized(10, 60, 220, 20, 1044010, LabelColor, false, false);  // <CENTER>CATEGORIES</CENTER>
            AddHtmlLocalized(240, 60, 270, 20, 1044012, LabelColor, false, false); // <CENTER>SELECTIONS</CENTER>

            AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10001, GumpButtonType.Reply, 0);
            AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114248, LabelColor, false, false);       //Casting
            yOffset += 1;

            if (itemRef == 1 || itemRef == 2 || itemRef == 4 || itemRef == 6)
            {
                AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10002, GumpButtonType.Reply, 0);
                AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114249, LabelColor, false, false);   //Combat
                yOffset += 1;
            }

            if (itemRef == 1 || itemRef == 2)
            {
                AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10006, GumpButtonType.Reply, 0);
                AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114250, LabelColor, false, false);   //Hit Area Effects
                yOffset += 1;

                AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10007, GumpButtonType.Reply, 0);
                AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114251, LabelColor, false, false);   //Hit Effects
                yOffset += 1;
            }

            AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10003, GumpButtonType.Reply, 0);
            AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114252, LabelColor, false, false);       //Misc.
            yOffset += 1;

            if (itemRef == 1 || itemRef == 2 || itemRef == 3 || itemRef == 5 || itemRef == 6)
            {
                AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10004, GumpButtonType.Reply, 0);
                AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114254, LabelColor, false, false);   //Resists
                yOffset += 1;
            }

            if (itemRef == 2 || itemRef == 3 || itemRef == 5 || itemRef == 6)
            {
                AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10005, GumpButtonType.Reply, 0);
                AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114262, LabelColor, false, false);   //Stats
                yOffset += 1;
            }

            if (itemRef == 1 || itemRef == 2)
            {
                AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10008, GumpButtonType.Reply, 0);
                AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114263, LabelColor, false, false);   //Slayers
                yOffset += 1;

                AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10009, GumpButtonType.Reply, 0);
                AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114264, LabelColor, false, false);   //Super Slayers
                yOffset += 1;
            }

            if (itemRef == 6)
            {
                for (int i = 0; i < 5; i++)
                {
                    AddButton(15, 90 + (yOffset * 25), 4005, 4007, 10010 + i, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(50, 90 + (yOffset * 25), 150, 18, 1114255 + i, LabelColor, false, false);       //Skill Group 1
                    yOffset += 1;
                }
            }

            // ===== Attribute Catagories ========================================
            yOffset = 0;
            int menuCat = context.ImbMenu_Cat;

            if (menuCat == 1) // == CASTING ==
            {
                if (itemRef == 1)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10122, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079766, LabelColor, false, false);       //Spell Channeling
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10141, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079759, LabelColor, false, false);       //Mage Weapon
                    yOffset += 1;

                    if (item is BaseWeapon && (((BaseWeapon)item).Attributes.SpellChanneling == 0 || ((BaseWeapon)item).Attributes.CastSpeed < 0))
                    {
                        AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10116, GumpButtonType.Reply, 0);
                        AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075617, LabelColor, false, false);       //Faster Casting
                        yOffset += 1;
                    }
                }
                else if (itemRef == 2)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10122, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079766, LabelColor, false, false);       //Spell Channeling
                    yOffset += 1;

                    if (item is BaseWeapon && (((BaseWeapon)item).Attributes.SpellChanneling == 0 || ((BaseWeapon)item).Attributes.CastSpeed < 0))
                    {
                        AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10116, GumpButtonType.Reply, 0);
                        AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075617, LabelColor, false, false);       //Faster Casting
                    }
                    yOffset += 1;
                }
                else if (itemRef == 3)
                {
                    BaseArmor Ar = m_Item as BaseArmor;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10117, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075621, LabelColor, false, false);       //Lower Mana Cost
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10118, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075625, LabelColor, false, false);       //Lower Reg Cost
                    yOffset += 1;
                }
                else if (itemRef == 4)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10122, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079766, LabelColor, false, false);       //Spell Channeling
                    yOffset += 1;

                    if (item is BaseShield && (((BaseShield)item).Attributes.SpellChanneling == 0 || ((BaseShield)item).Attributes.CastSpeed < 0))
                    {
                        AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10116, GumpButtonType.Reply, 0);
                        AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075617, LabelColor, false, false);       //Faster Casting
                        yOffset += 1;
                    }
                }
                else if (itemRef == 5)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10117, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075621, LabelColor, false, false);       //Lower Mana Cost
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10118, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075625, LabelColor, false, false);       //Lower Reg Cost
                    yOffset += 1;
                }
                else if (itemRef == 6)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10117, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075621, LabelColor, false, false);       //Lower Mana Cost
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10118, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075625, LabelColor, false, false);       //Lower Reg Cost
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10114, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075628, LabelColor, false, false);       //Spell Damage Increase
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10116, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075617, LabelColor, false, false);       //Faster Casting
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10115, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075618, LabelColor, false, false);       //Faster Cast Recovery
                    yOffset += 1;
                }
            }
            else if (menuCat == 2) // == COMBAT ==
            {
                if (itemRef == 1 || itemRef == 2)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10112, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075619, LabelColor, false, false);       //Weapon Damage Increase
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10101, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075620, LabelColor, false, false);       //Defense Chance Increase
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10102, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075616, LabelColor, false, false);       //Hit Chance Increase
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10113, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075629, LabelColor, false, false);       //Swing Speed Increase
                    yOffset += 1;

                    if (itemRef == 1)
                    {
                        AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10140, GumpButtonType.Reply, 0);
                        AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079592, LabelColor, false, false);   //Use Best Weapon Skill
                        yOffset += 1;
                    }
                    if (itemRef == 2)
                    {
                        AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10160, GumpButtonType.Reply, 0);
                        AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1080416, LabelColor, false, false);   //Velocity
                        yOffset += 1;
                    }

                    if (twoHanded)
                    {
                        AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10161, GumpButtonType.Reply, 0);
                        AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1072792, LabelColor, false, false);   //Balanced
                        yOffset += 1;
                    }
                }
                else if (itemRef == 4)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10101, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075620, LabelColor, false, false);       //Defense Chance Increase
                    yOffset += 1;
                }
                else if (itemRef == 6)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10112, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075619, LabelColor, false, false);       //Weapon Damage Increase
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10101, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075620, LabelColor, false, false);       //Defense Chance Increase
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10102, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075616, LabelColor, false, false);       //Hit Chance Increase
                    yOffset += 1;
                }
            }
            else if (menuCat == 3)  // == MISC ==
            {
                if (itemRef == 1 || itemRef == 2)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10121, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061153, LabelColor, false, false);       //Luck
                    yOffset += 1;
                }
                else if (itemRef == 3)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10119, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075626, LabelColor, false, false);       //Reflect Physical Damage
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10121, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061153, LabelColor, false, false);       //Luck
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10123, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1015168, LabelColor, false, false);       //Night Sight
                    yOffset += 1;
                }
                else if (itemRef == 4)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10119, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075626, LabelColor, false, false);       //Reflect Physical Damage
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10121, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079757, LabelColor, false, false);       //Lower Requirements
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10142, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1017323, LabelColor, false, false);       //Durability
                    yOffset += 1;
                }
                else if (itemRef == 5)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10119, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075626, LabelColor, false, false);       //Reflect Physical Damage
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10121, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061153, LabelColor, false, false);       //Luck
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10123, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1015168, LabelColor, false, false);       //Night Sight
                    yOffset += 1;
                }
                else if (itemRef == 6)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10121, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061153, LabelColor, false, false);       //Luck
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10123, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1015168, LabelColor, false, false);       //Night Sight
                    yOffset += 1;

                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10120, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075624, LabelColor, false, false);       //Enhance Potions
                    yOffset += 1;
                }
            }
            else if (menuCat == 4) // == RESISTS ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10151, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061158, LabelColor, false, false);           //Physcial Resist
                yOffset += 1;

                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10152, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061159, LabelColor, false, false);           //Fire Resist
                yOffset += 1;

                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10153, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061160, LabelColor, false, false);           //Cold Resist
                yOffset += 1;

                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10154, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061161, LabelColor, false, false);           //Poison Resist
                yOffset += 1;

                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10155, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1061162, LabelColor, false, false);           //Energy Resist
                yOffset += 1;
            }
            else if (menuCat == 5)  // == STATS ==
            {
                if (itemRef == 3)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10109, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075630, LabelColor, false, false);       //Hit Point Increase
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10110, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075632, LabelColor, false, false);       //Stamina Increase
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10111, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075631, LabelColor, false, false);       //Mana Increaase
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10103, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075627, LabelColor, false, false);       //Hit Points Regeneration
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10104, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079411, LabelColor, false, false);       //Stamina Regeneration
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10105, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079410, LabelColor, false, false);       //Mana Regeneration
                    yOffset += 1;
                }
                else if (itemRef == 5)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10109, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075630, LabelColor, false, false);       //Hit Point Increase
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10110, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075632, LabelColor, false, false);       //Stamina Increase
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10111, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075631, LabelColor, false, false);       //Mana Increaase
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10103, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1075627, LabelColor, false, false);                   //Hit Points Regeneration
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10104, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079411, LabelColor, false, false);       //Stamina Regeneration
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10105, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079410, LabelColor, false, false);       //Mana Regeneration
                    yOffset += 1;
                }
                else if (itemRef == 6)
                {
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10106, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079767, LabelColor, false, false);       //Strength Bonus
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10107, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079732, LabelColor, false, false);       //Dexterity Bonus
                    yOffset += 1;
                    AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10108, GumpButtonType.Reply, 0);
                    AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079756, LabelColor, false, false);       //Intelligence Bonus
                    yOffset += 1;
                }
            }
            else if (menuCat == 6)  // == HIT AREA EFFECTS ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10130, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079696, LabelColor, false, false);           //Hit Physical Area
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10131, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079695, LabelColor, false, false);           //Hit Fire Area
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10132, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079693, LabelColor, false, false);           //Hit Cold Area
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10133, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079697, LabelColor, false, false);           //Hit Poison Area
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10134, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079694, LabelColor, false, false);           //Hit Energy Area
                yOffset += 1;
            }
            else if (menuCat == 7)  // == ON HIT EFFECTS ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10135, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079706, LabelColor, false, false);           //Hit Magic Arrow
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10136, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079704, LabelColor, false, false);           //Hit Harm
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10137, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079703, LabelColor, false, false);           //Hit Fireball
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10138, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079705, LabelColor, false, false);           //Hit Lightning
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10139, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079702, LabelColor, false, false);           //Hit Dispel
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10128, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079699, LabelColor, false, false);           //Hit Lower Attack
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10129, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079700, LabelColor, false, false);           //Hit Lower Defense
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10125, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079698, LabelColor, false, false);           //Hit Life Leeach
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10126, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079707, LabelColor, false, false);            // Hit Stam Leech
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10127, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1079701, LabelColor, false, false);           //Hit Mana Leech
                yOffset += 1;
            }
            else if (menuCat == 8)  // == SLAYERS ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10201, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060470, LabelColor, false, false);           //Orc Slaying
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10202, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060480, LabelColor, false, false);           //Troll Slaughter
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10203, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060468, LabelColor, false, false);           //Ogre Thrashing
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10204, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060462, LabelColor, false, false);           //Dragon Slaying
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10205, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060478, LabelColor, false, false);           //Terathean
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10206, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060475, LabelColor, false, false);           //Snakes Bane
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10207, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060467, LabelColor, false, false);           //Lizardman Slaughter
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10208, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060466, LabelColor, false, false);           //Gargoyles Foe
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10211, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060469, LabelColor, false, false);           //Ophidian
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10212, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060477, LabelColor, false, false);           //Spiders Death
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10213, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060474, LabelColor, false, false);           //Scorpians Bane
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10214, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060465, LabelColor, false, false);           //Flame Dousing
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10215, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060481, LabelColor, false, false);           //Water Dissipation
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10216, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060457, LabelColor, false, false);           //Vacuum
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10217, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060471, LabelColor, false, false);           //Elemental Health
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10218, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060463, LabelColor, false, false);           //Earth Shatter
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10219, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060459, LabelColor, false, false);           //Blood Drinking
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10220, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060476, LabelColor, false, false);           //Summer Wind
                yOffset += 1;
            }
            else if (menuCat == 9)  // == SUPER SLAYERS ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10221, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060479, LabelColor, false, false);           //Silver
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10222, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060472, LabelColor, false, false);           //Repond
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10223, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060473, LabelColor, false, false);           //Reptilian Death
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10224, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060460, LabelColor, false, false);           //Exorcism
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10225, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060458, LabelColor, false, false);           //Arachnid Doom
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10226, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1060464, LabelColor, false, false);           //Elemental Ban
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10227, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1070855, LabelColor, false, false);           //Fey
                yOffset += 1;
            }
            else if (menuCat == 10)  // == SKILL GROUP 1 ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10251, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044102, LabelColor, false, false);           //Fencing
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10252, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044101, LabelColor, false, false);           //Mace Fighting
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10253, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044100, LabelColor, false, false);           //Swordsmanship
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10254, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044089, LabelColor, false, false);           //Musicianship
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10255, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044085, LabelColor, false, false);           //Magery
                yOffset += 1;
            }
            else if (menuCat == 11)  // == SKILL GROUP 2 ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10256, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044103, LabelColor, false, false);           //Wrestling
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10257, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044095, LabelColor, false, false);           //Animal Taming
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10258, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044092, LabelColor, false, false);           //Spirit Speak
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10259, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044087, LabelColor, false, false);           //Tactics
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10260, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044082, LabelColor, false, false);           //Provocation
                yOffset += 1;
            }
            else if (menuCat == 12)  // == SKILL GROUP 3 ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10261, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044110, LabelColor, false, false);           //Focus
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10262, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044065, LabelColor, false, false);           //Parrying
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10263, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044107, LabelColor, false, false);           //Stealth
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10264, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044106, LabelColor, false, false);           //Meditation
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10265, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044062, LabelColor, false, false);           //Animal Lore
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10266, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044075, LabelColor, false, false);           //Discordance
                yOffset += 1;
            }
            else if (menuCat == 13)  // == SKILL GROUP 4 ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10267, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044115, LabelColor, false, false);           //Mysticism
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10268, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044112, LabelColor, false, false);           //Bushido
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10269, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044109, LabelColor, false, false);           //Necromancy
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10270, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044099, LabelColor, false, false);           //Veterinary
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10271, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044093, LabelColor, false, false);           //Stealing
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10272, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044076, LabelColor, false, false);           //Eval Intelligence
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10273, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044061, LabelColor, false, false);           //Anatomy
                yOffset += 1;
            }
            else if (menuCat == 14)  // == SKILL GROUP 5 ==
            {
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10274, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044069, LabelColor, false, false);           //Peacemaking
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10275, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044113, LabelColor, false, false);           //Ninjitsu
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10276, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044111, LabelColor, false, false);           //Chivalary
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10277, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044091, LabelColor, false, false);           //Archery
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10278, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044086, LabelColor, false, false);           //Resist Spells
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10279, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044077, LabelColor, false, false);          //Healing
                yOffset += 1;
                AddButton(250, 90 + (yOffset * 22), 4005, 4007, 10280, GumpButtonType.Reply, 0);
                AddHtmlLocalized(295, 90 + (yOffset * 22), 150, 18, 1044117, LabelColor, false, false);          //Throwing
                yOffset += 1;
            }

            AddButton(15, 490, 4005, 4007, 10099, GumpButtonType.Reply, 0);
            AddHtmlLocalized(50, 490, 150, 20, 1011012, LabelColor, false, false); //Cancel
        }
Пример #3
0
        public override void OnResponse(NetState state, RelayInfo info)
        {
            Mobile       from = state.Mobile;
            PlayerMobile pm   = from as PlayerMobile;

            ImbuingContext context = Imbuing.GetContext(pm);

            int buttonNum = 0;

            if (info.ButtonID > 0 && info.ButtonID < 10000)
            {
                buttonNum = 1;
            }
            else if (info.ButtonID > 20004)
            {
                buttonNum = 30000;
            }
            else
            {
                buttonNum = info.ButtonID;
            }

            switch (buttonNum)
            {
            case 0:
            {
                //Close
                break;
            }

            case 1:
            {
                break;
            }

            case 10002:      // = Cancel button
            {
                break;
            }

            case 10005:      // = Imbue Item
            {
                if (!Imbuing.CheckSoulForge(from, 1))
                {
                    break;
                }

                from.SendLocalizedMessage(1079589);          //Target an item you wish to imbue.
                from.Target = new ImbueItemTarget();

                break;
            }

            case 10006:      // = ReImbue Last ( Mod & Item )
            {
                Item it     = context.LastImbued;
                int  mod    = context.Imbue_Mod;
                int  modint = context.Imbue_ModInt;

                if (!Imbuing.CheckSoulForge(from, 1))
                {
                    break;
                }

                if (it == null || mod < 0 || modint == 0)
                {
                    from.SendLocalizedMessage(1113572);         // You haven't imbued anything yet!
                    break;
                }

                if (Imbuing.CanImbueItem(pm, it) && Imbuing.OnBeforeImbue(from, it, mod, modint))
                {
                    Imbuing.ImbueItem(from, it, mod, modint);
                    from.SendGump(new ImbuingGump(from));
                }
                break;
            }

            case 10007:      // = Imbue Last ( Select Last imbued Item )
            {
                Item item   = context.LastImbued;
                int  mod    = context.Imbue_Mod;
                int  modint = context.Imbue_ModInt;

                if (!Imbuing.CheckSoulForge(from, 1))
                {
                    break;
                }

                if (context.LastImbued == null)
                {
                    from.SendLocalizedMessage(1113572);         // You haven't imbued anything yet!
                    break;
                }
                else
                {
                    ImbueStep1(from, item);
                }
                break;
            }

            case 10008:      // = Imbue Last Mod( To target Item )
            {
                context.LastImbued = null;
                int mod    = context.Imbue_Mod;
                int modint = context.Imbue_ModInt;

                if (modint < 0)
                {
                    modint = 0;
                }

                if (!Imbuing.CheckSoulForge(from, 1))
                {
                    break;
                }

                if (mod < 0)
                {
                    from.SendLocalizedMessage(1113572);         // You haven't imbued anything yet!
                    break;
                }
                else
                {
                    ImbuingGump.ImbueLastProp(from, mod, modint);
                }

                break;
            }

            case 10010:      // = Unravel Item
            {
                if (!Imbuing.CheckSoulForge(from, 1))
                {
                    break;
                }

                from.SendLocalizedMessage(1080422);         // What item do you wish to unravel?
                from.Target = new UnravelTarget();
                break;
            }

            case 10011:      // = Unravel Container
            {
                if (!Imbuing.CheckSoulForge(from, 1))
                {
                    break;
                }

                from.SendMessage("Which Container do you wish to unravel the contents of?");

                from.Target = new UnravelContainerTarget();
                break;
            }
            }
            return;
        }
Пример #4
0
        public override void OnResponse(NetState state, RelayInfo info)
        {
            Mobile from = state.Mobile;

            ImbuingContext context = Imbuing.GetContext(from);

            switch (info.ButtonID)
            {
            case 0:     // Close
            case 1:
            {
                from.EndAction(typeof(Imbuing));

                break;
            }

            case 10005:                             // Imbue Item
            {
                from.SendLocalizedMessage(1079589); //Target an item you wish to imbue.

                from.Target = new ImbueItemTarget();
                from.Target.BeginTimeout(from, TimeSpan.FromSeconds(10.0));

                break;
            }

            case 10006:      // Reimbue Last
            {
                Item it     = context.LastImbued;
                int  mod    = context.Imbue_Mod;
                int  modint = context.Imbue_ModInt;

                if (it == null || mod < 0 || modint == 0)
                {
                    from.SendLocalizedMessage(1113572);         // You haven't imbued anything yet!
                    from.EndAction(typeof(Imbuing));
                    break;
                }

                if (Imbuing.CanImbueItem(from, it) && Imbuing.OnBeforeImbue(from, it, mod, modint))
                {
                    Imbuing.ImbueItem(from, it, mod, modint);
                    from.SendGump(new ImbuingGump(from));
                }
                break;
            }

            case 10007:      // Imbue Last Item
            {
                Item item   = context.LastImbued;
                int  mod    = context.Imbue_Mod;
                int  modint = context.Imbue_ModInt;

                if (context.LastImbued == null)
                {
                    from.SendLocalizedMessage(1113572);         // You haven't imbued anything yet!
                    from.EndAction(typeof(Imbuing));
                    break;
                }
                else
                {
                    ImbueStep1(from, item);
                }
                break;
            }

            case 10008:      // Imbue Last Property
            {
                context.LastImbued = null;
                int mod    = context.Imbue_Mod;
                int modint = context.Imbue_ModInt;

                if (modint < 0)
                {
                    modint = 0;
                }

                if (mod < 0)
                {
                    from.SendLocalizedMessage(1113572);         // You haven't imbued anything yet!
                    from.EndAction(typeof(Imbuing));
                    break;
                }
                else
                {
                    ImbuingGump.ImbueLastProp(from, mod, modint);
                }

                break;
            }

            case 10010:                             // Unravel Item
            {
                from.SendLocalizedMessage(1080422); // Target an item you wish to magically unravel.

                from.Target = new UnravelTarget();
                from.Target.BeginTimeout(from, TimeSpan.FromSeconds(10.0));

                break;
            }

            case 10011:                             // Unravel Container
            {
                from.SendLocalizedMessage(1080422); // Target an item you wish to magically unravel.

                from.Target = new UnravelContainerTarget();
                from.Target.BeginTimeout(from, TimeSpan.FromSeconds(10.0));

                break;
            }
            }

            return;
        }