Inheritance: DyeTub, Engines.VeteranRewards.IRewardItem
            public virtual void SetTubHue(Mobile from, object state, int hue)
            {
                if (state is RunebookDyeTub)
                {
                    RunebookDyeTub runebookDyeTub = state as RunebookDyeTub;

                    runebookDyeTub.DyeColor = hue;
                }

                if (state is DyeTub)
                {
                    DyeTub tub = state as DyeTub;

                    tub.DyedHue = hue;
                }
            }
Exemple #2
0
 public InternalTarget(RunebookDyeTub runebookDyeTub) : base(1, false, TargetFlags.None)
 {
     m_RunebookDyeTub = runebookDyeTub;
 }
 public InternalRunebookPicker(RunebookDyeTub runebookDyeTub)
     : base(runebookDyeTub.ItemID)
 {
     m_RunebookDyeTub = runebookDyeTub;
 }
            protected override void OnTarget(Mobile from, object targeted)
            {
                if (targeted is RunebookDyeTub)
                {
                    RunebookDyeTub runebookDyeTub = targeted as RunebookDyeTub;

                    if (runebookDyeTub.Redyable)
                    {
                        if (runebookDyeTub.CustomHuePicker != null)
                        {
                            from.SendGump(new CustomHuePickerGump(from, runebookDyeTub.CustomHuePicker, new CustomHuePickerCallback(SetTubHue), runebookDyeTub));
                        }

                        else
                        {
                            from.SendHuePicker(new InternalRunebookPicker(runebookDyeTub));
                        }
                    }

                    else
                    {
                        from.SendMessage("That dye tub cannot be redyed.");
                    }
                }

                else if (targeted is DyeTub)
                {
                    DyeTub tub = (DyeTub)targeted;

                    if (tub.Redyable)
                    {
                        if (tub.MetallicHues)
                        {
                            from.SendGump(new MetallicHuePicker(from, new MetallicHuePicker.MetallicHuePickerCallback(SetTubHue), tub));
                        }

                        else if (tub.CustomHuePicker != null)
                        {
                            from.SendGump(new CustomHuePickerGump(from, tub.CustomHuePicker, new CustomHuePickerCallback(SetTubHue), tub));
                        }

                        else
                        {
                            from.SendHuePicker(new InternalPicker(tub));
                        }
                    }

                    else if (tub is BlackDyeTub)
                    {
                        from.SendLocalizedMessage(1010092); // You can not use this on a black dye tub.
                    }
                    else
                    {
                        from.SendMessage("That dye tub may not be redyed.");
                    }
                }

                else
                {
                    from.SendLocalizedMessage(500857); // Use this on a dye tub.
                }
            }