Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
174
Scripts/Items/Consumables/AnniversaryPromotionalToken.cs
Normal file
174
Scripts/Items/Consumables/AnniversaryPromotionalToken.cs
Normal file
@@ -0,0 +1,174 @@
|
||||
using System;
|
||||
using Server.Gumps;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public enum AnniversaryType
|
||||
{
|
||||
ShadowItems,
|
||||
CrystalItems
|
||||
}
|
||||
|
||||
public class AnniversaryPromotionalToken : Item
|
||||
{
|
||||
public override int LabelNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
int cliloc = 0;
|
||||
|
||||
switch (Type)
|
||||
{
|
||||
case AnniversaryType.ShadowItems:
|
||||
cliloc = 1076594; // A Shadow Token
|
||||
break;
|
||||
case AnniversaryType.CrystalItems:
|
||||
cliloc = 1076592; // A Crystal Token
|
||||
break;
|
||||
}
|
||||
|
||||
return cliloc;
|
||||
}
|
||||
}
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public AnniversaryType Type { get; set; }
|
||||
|
||||
[Constructable]
|
||||
public AnniversaryPromotionalToken(AnniversaryType type)
|
||||
: base(0x2AAA)
|
||||
{
|
||||
Type = type;
|
||||
|
||||
if (type == AnniversaryType.CrystalItems)
|
||||
ItemID = 0x3678;
|
||||
else if (type == AnniversaryType.ShadowItems)
|
||||
ItemID = 0x3679;
|
||||
|
||||
LootType = LootType.Blessed;
|
||||
Light = LightType.Circle300;
|
||||
Weight = 5.0;
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
int cliloc = 0;
|
||||
|
||||
switch (Type)
|
||||
{
|
||||
case AnniversaryType.ShadowItems:
|
||||
cliloc = 1076717;
|
||||
break;
|
||||
case AnniversaryType.CrystalItems:
|
||||
cliloc = 1076716;
|
||||
break;
|
||||
}
|
||||
|
||||
list.Add(1070998, String.Format("#{0}", cliloc)); // Use this to redeem<br>your ~1_PROMO~
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if (!IsChildOf(from.Backpack))
|
||||
{
|
||||
from.SendLocalizedMessage(1062334); // This item must be in your backpack to be used.
|
||||
}
|
||||
else
|
||||
{
|
||||
from.CloseGump(typeof(AnniversaryRewardGump));
|
||||
from.SendGump(new AnniversaryRewardGump(this));
|
||||
}
|
||||
}
|
||||
|
||||
public AnniversaryPromotionalToken(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
|
||||
writer.Write((int)Type);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
|
||||
Type = (AnniversaryType)reader.ReadInt();
|
||||
}
|
||||
|
||||
private class AnniversaryRewardGump : Gump
|
||||
{
|
||||
private readonly AnniversaryPromotionalToken Token;
|
||||
|
||||
public AnniversaryRewardGump(AnniversaryPromotionalToken token)
|
||||
: base(200, 200)
|
||||
{
|
||||
Token = token;
|
||||
|
||||
AddHtmlLocalized(0, 0, 0, 0, 1015313, false, false); // <center></center>
|
||||
AddHtmlLocalized(0, 0, 0, 0, 1049004, false, false); // Confirm
|
||||
AddHtmlLocalized(0, 0, 0, 0, 1076597, false, false); // Clicking "OK" will create the items in your backpack if there is room. Otherwise it will be created in your bankbox.
|
||||
AddHtmlLocalized(0, 0, 0, 0, 1011036, false, false); // OKAY
|
||||
AddHtmlLocalized(0, 0, 0, 0, 1011012, false, false); // CANCEL
|
||||
|
||||
AddPage(0);
|
||||
|
||||
AddBackground(0, 0, 291, 159, 0x13BE);
|
||||
|
||||
AddImageTiled(5, 6, 280, 20, 0xA40);
|
||||
AddHtmlLocalized(9, 8, 280, 20, 1049004, 0x7FFF, false, false); // Confirm
|
||||
|
||||
AddImageTiled(5, 31, 280, 100, 0xA40);
|
||||
AddHtmlLocalized(9, 35, 272, 100, 1076597, 0x7FFF, false, false); // Clicking "OK" will create the items in your backpack if there is room. Otherwise it will be created in your bankbox.
|
||||
|
||||
AddButton(190, 133, 0xFB7, 0xFB8, 1, GumpButtonType.Reply, 0);
|
||||
AddHtmlLocalized(225, 135, 90, 20, 1006044, 0x7FFF, false, false); // OK
|
||||
|
||||
AddButton(5, 133, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0);
|
||||
AddHtmlLocalized(40, 135, 100, 20, 1060051, 0x7FFF, false, false); // CANCEL
|
||||
}
|
||||
|
||||
public override void OnResponse(NetState sender, RelayInfo info)
|
||||
{
|
||||
if (info.ButtonID == 1)
|
||||
{
|
||||
Mobile m = sender.Mobile;
|
||||
Item item = null;
|
||||
|
||||
switch (Token.Type)
|
||||
{
|
||||
case AnniversaryType.CrystalItems:
|
||||
{
|
||||
item = new BoxOfCrystalItems();
|
||||
break;
|
||||
}
|
||||
case AnniversaryType.ShadowItems:
|
||||
{
|
||||
item = new BoxOfShadowItems();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (item != null && Token != null)
|
||||
{
|
||||
if (!m.AddToBackpack(item))
|
||||
{
|
||||
if (m.BankBox.TryDropItem(m, item, false))
|
||||
item.MoveToWorld(m.Location, m.Map);
|
||||
}
|
||||
|
||||
Token.Delete();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user