ModernUO/Projects/Scripts/Engines/ConPVP/DuelTeleporterAddon.cs
2019-08-02 18:16:11 -07:00

89 lines
2.7 KiB
C#

using Server.Items;
namespace Server.Engines.ConPVP
{
public enum DuelTeleporterType
{
Squares = 6095,
Buds = 6104,
Flowers = 6113,
Spikes = 6122,
Arrows = 6140,
Links = 6149
}
public class DuelTeleporterAddon : BaseAddon
{
[Constructible]
public DuelTeleporterAddon(DuelTeleporterType type = DuelTeleporterType.Squares)
{
int itemID = (int)type;
AddComponent(new AddonComponent(itemID + 0), -1, -1, 5);
AddComponent(new AddonComponent(itemID + 1), -1, 0, 5);
AddComponent(new AddonComponent(itemID + 2), 0, -1, 5);
AddComponent(new AddonComponent(itemID + 3), -1, +1, 5);
AddComponent(new AddonComponent(itemID + 4), 0, 0, 5);
AddComponent(new AddonComponent(itemID + 5), +1, -1, 5);
AddComponent(new AddonComponent(itemID + 6), 0, +1, 5);
AddComponent(new AddonComponent(itemID + 7), +1, 0, 5);
AddComponent(new AddonComponent(itemID + 8), +1, +1, 5);
AddComponent(new AddonComponent(0x759), -2, -2, 0);
AddComponent(new AddonComponent(0x75A), +2, +2, 0);
AddComponent(new AddonComponent(0x75B), -2, +2, 0);
AddComponent(new AddonComponent(0x75C), +2, -2, 0);
AddComponent(new AddonComponent(0x751), -1, +2, 0);
AddComponent(new AddonComponent(0x751), 0, +2, 0);
AddComponent(new AddonComponent(0x751), +1, +2, 0);
AddComponent(new AddonComponent(0x752), +2, -1, 0);
AddComponent(new AddonComponent(0x752), +2, 0, 0);
AddComponent(new AddonComponent(0x752), +2, +1, 0);
AddComponent(new AddonComponent(0x753), -1, -2, 0);
AddComponent(new AddonComponent(0x753), 0, -2, 0);
AddComponent(new AddonComponent(0x753), +1, -2, 0);
AddComponent(new AddonComponent(0x754), -2, -1, 0);
AddComponent(new AddonComponent(0x754), -2, 0, 0);
AddComponent(new AddonComponent(0x754), -2, +1, 0);
}
public DuelTeleporterAddon(Serial serial) : base(serial)
{
}
[CommandProperty(AccessLevel.GameMaster)]
public DuelTeleporterType Type
{
get
{
if (Components.Count > 0)
return (DuelTeleporterType)Components[0].ItemID;
return DuelTeleporterType.Squares;
}
set
{
for (int i = 0; i < Components.Count && i < 9; ++i)
Components[i].ItemID = i + (int)value;
}
}
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();
}
}
}