ModernUO/Projects/Scripts/Items/Misc/Blighted Grove/MelisandesHairDye.cs
2019-08-02 18:16:11 -07:00

95 lines
2.4 KiB
C#

using Server.Gumps;
namespace Server.Items
{
public class MelisandesHairDye : Item
{
[Constructible]
public MelisandesHairDye() : base(0xEFF)
{
Hue = Utility.RandomMinMax(0x47E, 0x499);
}
public MelisandesHairDye(Serial serial) : base(serial)
{
}
public override int LabelNumber => 1041088; // Hair Dye
public override void OnDoubleClick(Mobile from)
{
if (IsChildOf(from.Backpack))
{
if (MondainsLegacy.CheckML(from))
from.SendGump(new ConfirmGump(this));
}
else
{
from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it.
}
}
public override void GetProperties(ObjectPropertyList list)
{
base.GetProperties(list);
list.Add(1075085); // Requirement: Mondain's Legacy
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write(0); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
private class ConfirmGump : BaseConfirmGump
{
private Item m_Item;
public ConfirmGump(Item item)
{
m_Item = item;
}
public override int TitleNumber => 1074395; // <div align=right>Use Permanent Hair Dye</div>
public override int LabelNumber =>
1074396; // This special hair dye is made of a unique mixture of leaves, permanently changing one's hair color until another dye is used.
public override void Confirm(Mobile from)
{
if (m_Item?.Deleted == false && m_Item.IsChildOf(from.Backpack))
{
if (from.HairItemID != 0)
{
from.HairHue = m_Item.Hue;
from.PlaySound(0x240);
from.SendLocalizedMessage(502622); // You dye your hair.
m_Item.Delete();
}
else
{
from.SendLocalizedMessage(502623); // You have no hair to dye and you cannot use this.
}
}
else
{
from.SendLocalizedMessage(1073461); // You don't have enough dye.
}
}
public override void Refuse(Mobile from)
{
from.SendLocalizedMessage(502620); // You decide not to dye your hair.
}
}
}
}