diff --git a/Projects/UOContent/Items/Special/Rares/Containers/BaseWaterContainer.cs b/Projects/UOContent/Items/Special/Rares/Containers/BaseWaterContainer.cs index 6c427bb1c..a67b741cb 100644 --- a/Projects/UOContent/Items/Special/Rares/Containers/BaseWaterContainer.cs +++ b/Projects/UOContent/Items/Special/Rares/Containers/BaseWaterContainer.cs @@ -1,138 +1,103 @@ -namespace Server.Items +using System; +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public abstract partial class BaseWaterContainer : Container, IHasQuantity { - public abstract class BaseWaterContainer : Container, IHasQuantity + public BaseWaterContainer(int item_Id, bool filled) : base(item_Id) => + _quantity = filled ? MaxQuantity : 0; + + public abstract int EmptyItemId { get; } + public abstract int FullItemId { get; } + public abstract int MaxQuantity { get; } + + public override int DefaultGumpID => 0x3e; + + [CommandProperty(AccessLevel.GameMaster)] + public virtual bool IsEmpty => _quantity <= 0; + + [CommandProperty(AccessLevel.GameMaster)] + public virtual bool IsFull => _quantity >= MaxQuantity; + + [SerializableProperty(0)] + [CommandProperty(AccessLevel.GameMaster)] + public virtual int Quantity { - private int m_Quantity; - - public BaseWaterContainer(int item_Id, bool filled) - : base(item_Id) => - m_Quantity = filled ? MaxQuantity : 0; - - public BaseWaterContainer(Serial serial) - : base(serial) + get => _quantity; + set { - } - - public abstract int voidItem_ID { get; } - public abstract int fullItem_ID { get; } - public abstract int MaxQuantity { get; } - - public override int DefaultGumpID => 0x3e; - - [CommandProperty(AccessLevel.GameMaster)] - public virtual bool IsEmpty => m_Quantity <= 0; - - [CommandProperty(AccessLevel.GameMaster)] - public virtual bool IsFull => m_Quantity >= MaxQuantity; - - [CommandProperty(AccessLevel.GameMaster)] - public virtual int Quantity - { - get => m_Quantity; - set + if (value != _quantity) { - if (value != m_Quantity) + _quantity = Math.Clamp(value, 0, MaxQuantity); + + Movable = !IsLockedDown && IsEmpty; + ItemID = IsEmpty ? EmptyItemId : FullItemId; + + if (!IsEmpty) { - m_Quantity = value < 1 ? 0 : - value > MaxQuantity ? MaxQuantity : value; + var rootParent = RootParent; - Movable = !IsLockedDown ? IsEmpty : false; - - ItemID = IsEmpty ? voidItem_ID : fullItem_ID; - - if (!IsEmpty) + if (rootParent?.Map != null && rootParent.Map != Map.Internal) { - var rootParent = RootParent; - - if (rootParent?.Map != null && rootParent.Map != Map.Internal) - { - MoveToWorld(rootParent.Location, rootParent.Map); - } + MoveToWorld(rootParent.Location, rootParent.Map); } - - InvalidateProperties(); } + + InvalidateProperties(); + this.MarkDirty(); } } - - public override void OnDoubleClick(Mobile from) - { - if (IsEmpty) - { - base.OnDoubleClick(from); - } - } - - public override void OnSingleClick(Mobile from) - { - if (IsEmpty) - { - base.OnSingleClick(from); - } - else - { - if (Name == null) - { - LabelTo(from, LabelNumber); - } - else - { - LabelTo(from, Name); - } - } - } - - public override void OnAosSingleClick(Mobile from) - { - if (IsEmpty) - { - base.OnAosSingleClick(from); - } - else - { - if (Name == null) - { - LabelTo(from, LabelNumber); - } - else - { - LabelTo(from, Name); - } - } - } - - public override void GetProperties(IPropertyList list) - { - if (IsEmpty) - { - base.GetProperties(list); - } - } - - public override bool OnDragDropInto(Mobile from, Item item, Point3D p) - { - if (!IsEmpty) - { - return false; - } - - return base.OnDragDropInto(from, item, p); - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); // version - writer.Write(m_Quantity); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - m_Quantity = reader.ReadInt(); - } } + + public override void OnDoubleClick(Mobile from) + { + if (IsEmpty) + { + base.OnDoubleClick(from); + } + } + + public override void OnSingleClick(Mobile from) + { + if (IsEmpty) + { + base.OnSingleClick(from); + } + else if (Name == null) + { + LabelTo(from, LabelNumber); + } + else + { + LabelTo(from, Name); + } + } + + public override void OnAosSingleClick(Mobile from) + { + if (IsEmpty) + { + base.OnAosSingleClick(from); + } + else if (Name == null) + { + LabelTo(from, LabelNumber); + } + else + { + LabelTo(from, Name); + } + } + + public override void GetProperties(IPropertyList list) + { + if (IsEmpty) + { + base.GetProperties(list); + } + } + + public override bool OnDragDropInto(Mobile from, Item item, Point3D p) => IsEmpty && base.OnDragDropInto(from, item, p); } diff --git a/Projects/UOContent/Items/Special/Rares/Containers/Bucket.cs b/Projects/UOContent/Items/Special/Rares/Containers/Bucket.cs index c39416d39..821635dba 100644 --- a/Projects/UOContent/Items/Special/Rares/Containers/Bucket.cs +++ b/Projects/UOContent/Items/Special/Rares/Containers/Bucket.cs @@ -1,37 +1,19 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Bucket : BaseWaterContainer { - internal class Bucket : BaseWaterContainer + private const int _emptyItemId = 0x14e0; + private const int _fullItemId = 0x2004; + + [Constructible] + public Bucket(bool filled = false) : base(filled ? _fullItemId : _emptyItemId, filled) { - private static readonly int vItemID = 0x14e0; - private static readonly int fItemID = 0x2004; - - [Constructible] - public Bucket(bool filled = false) - : base(filled ? fItemID : vItemID, filled) - { - } - - public Bucket(Serial serial) - : base(serial) - { - } - - public override int voidItem_ID => vItemID; - public override int fullItem_ID => fItemID; - public override int MaxQuantity => 25; - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } } + + public override int EmptyItemId => _emptyItemId; + public override int FullItemId => _fullItemId; + public override int MaxQuantity => 25; } diff --git a/Projects/UOContent/Items/Special/Rares/Containers/ClosedBarrel.cs b/Projects/UOContent/Items/Special/Rares/Containers/ClosedBarrel.cs index 3f90eb9c5..09b8cef55 100644 --- a/Projects/UOContent/Items/Special/Rares/Containers/ClosedBarrel.cs +++ b/Projects/UOContent/Items/Special/Rares/Containers/ClosedBarrel.cs @@ -1,32 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class ClosedBarrel : TrappableContainer { - internal class ClosedBarrel : TrappableContainer + [Constructible] + public ClosedBarrel() : base(0x0FAE) { - [Constructible] - public ClosedBarrel() - : base(0x0FAE) - { - } - - public ClosedBarrel(Serial serial) - : base(serial) - { - } - - public override int DefaultGumpID => 0x3e; - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } } + + public override int DefaultGumpID => 0x3e; } diff --git a/Projects/UOContent/Items/Special/Rares/Containers/UnfinishedBarrel.cs b/Projects/UOContent/Items/Special/Rares/Containers/UnfinishedBarrel.cs index 975196416..435201ca9 100644 --- a/Projects/UOContent/Items/Special/Rares/Containers/UnfinishedBarrel.cs +++ b/Projects/UOContent/Items/Special/Rares/Containers/UnfinishedBarrel.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class UnfinishedBarrel : Item { - public class UnfinishedBarrel : Item + [Constructible] + public UnfinishedBarrel() : base(0x1EB5) { - [Constructible] - public UnfinishedBarrel() : base(0x1EB5) - { - Movable = true; - Stackable = false; - } - - public UnfinishedBarrel(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Containers/WaterBarrel.cs b/Projects/UOContent/Items/Special/Rares/Containers/WaterBarrel.cs index c24bbe39a..d13d6fe57 100644 --- a/Projects/UOContent/Items/Special/Rares/Containers/WaterBarrel.cs +++ b/Projects/UOContent/Items/Special/Rares/Containers/WaterBarrel.cs @@ -1,39 +1,21 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class WaterBarrel : BaseWaterContainer { - internal class WaterBarrel : BaseWaterContainer + private const int _emptyItemId = 0xe77; + private const int _fullItemId = 0x154d; + + [Constructible] + public WaterBarrel(bool filled = false) : base(filled ? _fullItemId : _emptyItemId, filled) { - private static readonly int vItemID = 0xe77; - private static readonly int fItemID = 0x154d; - - [Constructible] - public WaterBarrel(bool filled = false) - : base(filled ? fItemID : vItemID, filled) - { - } - - public WaterBarrel(Serial serial) - : base(serial) - { - } - - public override int LabelNumber => 1025453; /* water barrel */ - - public override int voidItem_ID => vItemID; - public override int fullItem_ID => fItemID; - public override int MaxQuantity => 100; - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } } + + public override int LabelNumber => 1025453; /* water barrel */ + + public override int EmptyItemId => _emptyItemId; + public override int FullItemId => _fullItemId; + public override int MaxQuantity => 100; } diff --git a/Projects/UOContent/Items/Special/Rares/Containers/WaterTub.cs b/Projects/UOContent/Items/Special/Rares/Containers/WaterTub.cs index 1ed6286eb..d93b3060b 100644 --- a/Projects/UOContent/Items/Special/Rares/Containers/WaterTub.cs +++ b/Projects/UOContent/Items/Special/Rares/Containers/WaterTub.cs @@ -1,37 +1,19 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Tub : BaseWaterContainer { - internal class Tub : BaseWaterContainer + private const int _emptyItemId = 0xe83; + private const int _fullItemId = 0xe7b; + + [Constructible] + public Tub(bool filled = false) : base(filled ? _fullItemId : _emptyItemId, filled) { - private static readonly int vItemID = 0xe83; - private static readonly int fItemID = 0xe7b; - - [Constructible] - public Tub(bool filled = false) - : base(filled ? fItemID : vItemID, filled) - { - } - - public Tub(Serial serial) - : base(serial) - { - } - - public override int voidItem_ID => vItemID; - public override int fullItem_ID => fItemID; - public override int MaxQuantity => 50; - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } } + + public override int EmptyItemId => _emptyItemId; + public override int FullItemId => _fullItemId; + public override int MaxQuantity => 50; } diff --git a/Projects/UOContent/Items/Special/Rares/Daily/DecoRock.cs b/Projects/UOContent/Items/Special/Rares/Daily/DecoRock.cs index 8e4e24da6..d2f59e4f2 100644 --- a/Projects/UOContent/Items/Special/Rares/Daily/DecoRock.cs +++ b/Projects/UOContent/Items/Special/Rares/Daily/DecoRock.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoRock : Item { - public class DecoRock : Item + [Constructible] + public DecoRock() : base(0x1778) { - [Constructible] - public DecoRock() : base(0x1778) - { - Movable = true; - Stackable = false; - } - - public DecoRock(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Daily/DecoRock2.cs b/Projects/UOContent/Items/Special/Rares/Daily/DecoRock2.cs index 10ab65782..856dfe665 100644 --- a/Projects/UOContent/Items/Special/Rares/Daily/DecoRock2.cs +++ b/Projects/UOContent/Items/Special/Rares/Daily/DecoRock2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoRock2 : Item { - public class DecoRock2 : Item + [Constructible] + public DecoRock2() : base(0x1363) { - [Constructible] - public DecoRock2() : base(0x1363) - { - Movable = true; - Stackable = false; - } - - public DecoRock2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks.cs b/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks.cs index d1ed1fa22..3d4e59bc7 100644 --- a/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks.cs +++ b/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoRocks : Item { - public class DecoRocks : Item + [Constructible] + public DecoRocks() : base(0x1367) { - [Constructible] - public DecoRocks() : base(0x1367) - { - Movable = true; - Stackable = false; - } - - public DecoRocks(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks2.cs b/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks2.cs index 37d112fab..6c3109397 100644 --- a/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks2.cs +++ b/Projects/UOContent/Items/Special/Rares/Daily/DecoRocks2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoRocks2 : Item { - public class DecoRocks2 : Item + [Constructible] + public DecoRocks2() : base(0x136D) { - [Constructible] - public DecoRocks2() : base(0x136D) - { - Movable = true; - Stackable = false; - } - - public DecoRocks2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower.cs b/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower.cs index d7224ec47..dddbbce9d 100644 --- a/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower.cs +++ b/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoFlower : Item { - public class DecoFlower : Item + [Constructible] + public DecoFlower() : base(0x18DA) { - [Constructible] - public DecoFlower() : base(0x18DA) - { - Movable = true; - Stackable = false; - } - - public DecoFlower(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower2.cs b/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower2.cs index 3ec6f0e6d..54bbf648d 100644 --- a/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower2.cs +++ b/Projects/UOContent/Items/Special/Rares/Flowers/DecoFlower2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoFlower2 : Item { - public class DecoFlower2 : Item + [Constructible] + public DecoFlower2() : base(0x18D9) { - [Constructible] - public DecoFlower2() : base(0x18D9) - { - Movable = true; - Stackable = false; - } - - public DecoFlower2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic.cs b/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic.cs index 12da0db1d..a067b27b6 100644 --- a/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic.cs +++ b/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoRoseOfTrinsic : Item { - public class DecoRoseOfTrinsic : Item + [Constructible] + public DecoRoseOfTrinsic() : base(0x234C) { - [Constructible] - public DecoRoseOfTrinsic() : base(0x234C) - { - Movable = true; - Stackable = false; - } - - public DecoRoseOfTrinsic(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic2.cs b/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic2.cs index 77a20b0f2..485ff9822 100644 --- a/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic2.cs +++ b/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoRoseOfTrinsic2 : Item { - public class DecoRoseOfTrinsic2 : Item + [Constructible] + public DecoRoseOfTrinsic2() : base(0x234D) { - [Constructible] - public DecoRoseOfTrinsic2() : base(0x234D) - { - Movable = true; - Stackable = false; - } - - public DecoRoseOfTrinsic2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic3.cs b/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic3.cs index 8a48db446..bad854fb5 100644 --- a/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic3.cs +++ b/Projects/UOContent/Items/Special/Rares/Flowers/DecoRoseOfTrinsic3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoRoseOfTrinsic3 : Item { - public class DecoRoseOfTrinsic3 : Item + [Constructible] + public DecoRoseOfTrinsic3() : base(0x234B) { - [Constructible] - public DecoRoseOfTrinsic3() : base(0x234B) - { - Movable = true; - Stackable = false; - } - - public DecoRoseOfTrinsic3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Food/BottlesOfLiquor.cs b/Projects/UOContent/Items/Special/Rares/Food/BottlesOfLiquor.cs index dfb23c4d1..6c5a3eb6a 100644 --- a/Projects/UOContent/Items/Special/Rares/Food/BottlesOfLiquor.cs +++ b/Projects/UOContent/Items/Special/Rares/Food/BottlesOfLiquor.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoBottlesOfLiquor : Item { - public class DecoBottlesOfLiquor : Item + [Constructible] + public DecoBottlesOfLiquor() : base(0x99E) { - [Constructible] - public DecoBottlesOfLiquor() : base(0x99E) - { - Movable = true; - Stackable = false; - } - - public DecoBottlesOfLiquor(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Food/Tray2.cs b/Projects/UOContent/Items/Special/Rares/Food/Tray2.cs index f68935acf..b24d9f716 100644 --- a/Projects/UOContent/Items/Special/Rares/Food/Tray2.cs +++ b/Projects/UOContent/Items/Special/Rares/Food/Tray2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTray2 : Item { - public class DecoTray2 : Item + [Constructible] + public DecoTray2() : base(0x991) { - [Constructible] - public DecoTray2() : base(0x991) - { - Movable = true; - Stackable = false; - } - - public DecoTray2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Food/Trays.cs b/Projects/UOContent/Items/Special/Rares/Food/Trays.cs index 97da135a4..a8aa6c7df 100644 --- a/Projects/UOContent/Items/Special/Rares/Food/Trays.cs +++ b/Projects/UOContent/Items/Special/Rares/Food/Trays.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTray : Item { - public class DecoTray : Item + [Constructible] + public DecoTray() : base(Utility.Random(2) + 0x991) { - [Constructible] - public DecoTray() : base(Utility.Random(2) + 0x991) - { - Movable = true; - Stackable = false; - } - - public DecoTray(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Furniture/BrokenChair.cs b/Projects/UOContent/Items/Special/Rares/Furniture/BrokenChair.cs index 30aa8acb3..bcc79a4a5 100644 --- a/Projects/UOContent/Items/Special/Rares/Furniture/BrokenChair.cs +++ b/Projects/UOContent/Items/Special/Rares/Furniture/BrokenChair.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class BrokenChair : Item { - public class BrokenChair : Item + [Constructible] + public BrokenChair() : base(Utility.Random(2) + 0xC19) { - [Constructible] - public BrokenChair() : base(Utility.Random(2) + 0xC19) - { - Movable = true; - Stackable = false; - } - - public BrokenChair(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers.cs b/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers.cs index a648139fb..912899fce 100644 --- a/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers.cs +++ b/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Checkers : Item { - public class Checkers : Item + [Constructible] + public Checkers() : base(0xE1A) { - [Constructible] - public Checkers() : base(0xE1A) - { - Movable = true; - Stackable = false; - } - - public Checkers(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers2.cs b/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers2.cs index ae950fdfe..0e94adcd1 100644 --- a/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers2.cs +++ b/Projects/UOContent/Items/Special/Rares/GamePieces/Checkers2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Checkers2 : Item { - public class Checkers2 : Item + [Constructible] + public Checkers2() : base(0xE1B) { - [Constructible] - public Checkers2() : base(0xE1B) - { - Movable = true; - Stackable = false; - } - - public Checkers2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen.cs b/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen.cs index b1f089cb9..2b8aec83a 100644 --- a/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen.cs +++ b/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Chessmen : Item { - public class Chessmen : Item + [Constructible] + public Chessmen() : base(0xE13) { - [Constructible] - public Chessmen() : base(0xE13) - { - Movable = true; - Stackable = false; - } - - public Chessmen(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen2.cs b/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen2.cs index 7a2e772f0..9d2b4f95f 100644 --- a/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen2.cs +++ b/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Chessmen2 : Item { - public class Chessmen2 : Item + [Constructible] + public Chessmen2() : base(0xE12) { - [Constructible] - public Chessmen2() : base(0xE12) - { - Movable = true; - Stackable = false; - } - - public Chessmen2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen3.cs b/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen3.cs index ec6a3f3b2..1cb3f5ab6 100644 --- a/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen3.cs +++ b/Projects/UOContent/Items/Special/Rares/GamePieces/Chessmen3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Chessmen3 : Item { - public class Chessmen3 : Item + [Constructible] + public Chessmen3() : base(0xE14) { - [Constructible] - public Chessmen3() : base(0xE14) - { - Movable = true; - Stackable = false; - } - - public Chessmen3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot.cs index c9eed7157..b5f1ec538 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGoldIngot : Item { - public class DecoGoldIngot : Item + [Constructible] + public DecoGoldIngot() : base(0x1BE9) { - [Constructible] - public DecoGoldIngot() : base(0x1BE9) - { - Movable = true; - Stackable = true; - } - - public DecoGoldIngot(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = true; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot2.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot2.cs index 021a84bf9..3936804bf 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot2.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngot2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGoldIngot2 : Item { - public class DecoGoldIngot2 : Item + [Constructible] + public DecoGoldIngot2() : base(0x1BEC) { - [Constructible] - public DecoGoldIngot2() : base(0x1BEC) - { - Movable = true; - Stackable = false; - } - - public DecoGoldIngot2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots.cs index 8ab1b91a2..530f28112 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGoldIngots : Item { - public class DecoGoldIngots : Item + [Constructible] + public DecoGoldIngots() : base(0x1BEA) { - [Constructible] - public DecoGoldIngots() : base(0x1BEA) - { - Movable = true; - Stackable = false; - } - - public DecoGoldIngots(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots2.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots2.cs index 0827ab01f..6b7d860da 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots2.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGoldIngots2 : Item { - public class DecoGoldIngots2 : Item + [Constructible] + public DecoGoldIngots2() : base(0x1BEB) { - [Constructible] - public DecoGoldIngots2() : base(0x1BEB) - { - Movable = true; - Stackable = false; - } - - public DecoGoldIngots2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots3.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots3.cs index 8b971a48f..beff2deab 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots3.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGoldIngots3 : Item { - public class DecoGoldIngots3 : Item + [Constructible] + public DecoGoldIngots3() : base(0x1BED) { - [Constructible] - public DecoGoldIngots3() : base(0x1BED) - { - Movable = true; - Stackable = false; - } - - public DecoGoldIngots3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots4.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots4.cs index 59097f68e..5b5d853c9 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots4.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoGoldIngots4.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGoldIngots4 : Item { - public class DecoGoldIngots4 : Item + [Constructible] + public DecoGoldIngots4() : base(0x1BEE) { - [Constructible] - public DecoGoldIngots4() : base(0x1BEE) - { - Movable = true; - Stackable = false; - } - - public DecoGoldIngots4(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot.cs index 7b97348bb..063e07f60 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngot : Item { - public class DecoIronIngot : Item + [Constructible] + public DecoIronIngot() : base(0x1BEF) { - [Constructible] - public DecoIronIngot() : base(0x1BEF) - { - Movable = true; - Stackable = true; - } - - public DecoIronIngot(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = true; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot2.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot2.cs index d6395a818..476af83a9 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot2.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngot2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngot2 : Item { - public class DecoIronIngot2 : Item + [Constructible] + public DecoIronIngot2() : base(0x1BEF) { - [Constructible] - public DecoIronIngot2() : base(0x1BEF) - { - Movable = true; - Stackable = false; - } - - public DecoIronIngot2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots.cs index df480bb37..ff45633ad 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngots : Item { - public class DecoIronIngots : Item + [Constructible] + public DecoIronIngots() : base(0x1BF1) { - [Constructible] - public DecoIronIngots() : base(0x1BF1) - { - Movable = true; - Stackable = false; - } - - public DecoIronIngots(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots2.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots2.cs index 8d81aff46..ca58ff9ed 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots2.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngots2 : Item { - public class DecoIronIngots2 : Item + [Constructible] + public DecoIronIngots2() : base(0x1BF0) { - [Constructible] - public DecoIronIngots2() : base(0x1BF0) - { - Movable = true; - Stackable = false; - } - - public DecoIronIngots2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots3.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots3.cs index 7a214992b..167b15144 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots3.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngots3 : Item { - public class DecoIronIngots3 : Item + [Constructible] + public DecoIronIngots3() : base(0x1BF0) { - [Constructible] - public DecoIronIngots3() : base(0x1BF0) - { - Movable = true; - Stackable = false; - } - - public DecoIronIngots3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots4.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots4.cs index 69c3b22df..3fc350082 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots4.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots4.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngots4 : Item { - public class DecoIronIngots4 : Item + [Constructible] + public DecoIronIngots4() : base(0x1BF1) { - [Constructible] - public DecoIronIngots4() : base(0x1BF1) - { - Movable = true; - Stackable = false; - } - - public DecoIronIngots4(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots5.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots5.cs index 84c0f80dd..cef24c14d 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots5.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots5.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngots5 : Item { - public class DecoIronIngots5 : Item + [Constructible] + public DecoIronIngots5() : base(0x1BF3) { - [Constructible] - public DecoIronIngots5() : base(0x1BF3) - { - Movable = true; - Stackable = false; - } - - public DecoIronIngots5(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots6.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots6.cs index 93b2045c3..574686213 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots6.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoIronIngots6.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoIronIngots6 : Item { - public class DecoIronIngots6 : Item + [Constructible] + public DecoIronIngots6() : base(0x1BF4) { - [Constructible] - public DecoIronIngots6() : base(0x1BF4) - { - Movable = true; - Stackable = false; - } - - public DecoIronIngots6(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot.cs index aa64d768b..3b6038db8 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSilverIngot : Item { - public class DecoSilverIngot : Item + [Constructible] + public DecoSilverIngot() : base(0x1BF5) { - [Constructible] - public DecoSilverIngot() : base(0x1BF5) - { - Movable = true; - Stackable = true; - } - - public DecoSilverIngot(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = true; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot2.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot2.cs index c3a428a4a..d5bf09240 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot2.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngot2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSilverIngot2 : Item { - public class DecoSilverIngot2 : Item + [Constructible] + public DecoSilverIngot2() : base(0x1BF8) { - [Constructible] - public DecoSilverIngot2() : base(0x1BF8) - { - Movable = true; - Stackable = false; - } - - public DecoSilverIngot2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots.cs index bba7879c3..4b5a819fb 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSilverIngots : Item { - public class DecoSilverIngots : Item + [Constructible] + public DecoSilverIngots() : base(0x1BFA) { - [Constructible] - public DecoSilverIngots() : base(0x1BFA) - { - Movable = true; - Stackable = false; - } - - public DecoSilverIngots(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots2.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots2.cs index 923a189f1..aa1a8d45b 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots2.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSilverIngots2 : Item { - public class DecoSilverIngots2 : Item + [Constructible] + public DecoSilverIngots2() : base(0x1BF6) { - [Constructible] - public DecoSilverIngots2() : base(0x1BF6) - { - Movable = true; - Stackable = false; - } - - public DecoSilverIngots2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots3.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots3.cs index df089aac2..a938b4437 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots3.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSilverIngots3 : Item { - public class DecoSilverIngots3 : Item + [Constructible] + public DecoSilverIngots3() : base(0x1BF7) { - [Constructible] - public DecoSilverIngots3() : base(0x1BF7) - { - Movable = true; - Stackable = false; - } - - public DecoSilverIngots3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots4.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots4.cs index 3fd0baead..3c70afcae 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots4.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots4.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSilverIngots4 : Item { - public class DecoSilverIngots4 : Item + [Constructible] + public DecoSilverIngots4() : base(0x1BF9) { - [Constructible] - public DecoSilverIngots4() : base(0x1BF9) - { - Movable = true; - Stackable = false; - } - - public DecoSilverIngots4(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots5.cs b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots5.cs index 4c1233465..83e0e378b 100644 --- a/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots5.cs +++ b/Projects/UOContent/Items/Special/Rares/Ingots/DecoSilverIngots5.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSilverIngots5 : Item { - public class DecoSilverIngots5 : Item + [Constructible] + public DecoSilverIngots5() : base(0x1BFA) { - [Constructible] - public DecoSilverIngots5() : base(0x1BFA) - { - Movable = true; - Stackable = false; - } - - public DecoSilverIngots5(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Jars/EmptyJars.cs b/Projects/UOContent/Items/Special/Rares/Jars/EmptyJars.cs index 690c3abad..5fede095d 100644 --- a/Projects/UOContent/Items/Special/Rares/Jars/EmptyJars.cs +++ b/Projects/UOContent/Items/Special/Rares/Jars/EmptyJars.cs @@ -1,152 +1,58 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class EmptyJar : Item { - public class EmptyJar : Item + [Constructible] + public EmptyJar() : base(0x1005) { - [Constructible] - public EmptyJar() - : base(0x1005) - { - Movable = true; - Stackable = false; - } - - public EmptyJar(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class EmptyJars : Item - { - [Constructible] - public EmptyJars() - : base(0xe44) - { - Movable = true; - Stackable = false; - } - - public EmptyJars(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class EmptyJars2 : Item - { - [Constructible] - public EmptyJars2() - : base(0xe45) - { - Movable = true; - Stackable = false; - } - - public EmptyJars2(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class EmptyJars3 : Item - { - [Constructible] - public EmptyJars3() - : base(0xe46) - { - Movable = true; - Stackable = false; - } - - public EmptyJars3(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class EmptyJars4 : Item - { - [Constructible] - public EmptyJars4() - : base(0xe47) - { - Movable = true; - Stackable = false; - } - - public EmptyJars4(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class EmptyJars : Item +{ + [Constructible] + public EmptyJars() : base(0xe44) + { + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class EmptyJars2 : Item +{ + [Constructible] + public EmptyJars2() : base(0xe45) + { + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class EmptyJars3 : Item +{ + [Constructible] + public EmptyJars3() : base(0xe46) + { + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class EmptyJars4 : Item +{ + [Constructible] + public EmptyJars4() : base(0xe47) + { + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Jars/FullJars.cs b/Projects/UOContent/Items/Special/Rares/Jars/FullJars.cs index 448eb7838..7ce8ad72e 100644 --- a/Projects/UOContent/Items/Special/Rares/Jars/FullJars.cs +++ b/Projects/UOContent/Items/Special/Rares/Jars/FullJars.cs @@ -1,92 +1,36 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoFullJar : Item { - public class DecoFullJar : Item + [Constructible] + public DecoFullJar() : base(0x1006) { - [Constructible] - public DecoFullJar() - : base(0x1006) - { - Movable = true; - Stackable = false; - } - - public DecoFullJar(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class DecoFullJars3 : Item - { - [Constructible] - public DecoFullJars3() - : base(0xE4a) - { - Movable = true; - Stackable = false; - } - - public DecoFullJars3(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class DecoFullJars4 : Item - { - [Constructible] - public DecoFullJars4() - : base(0xE4b) - { - Movable = true; - Stackable = false; - } - - public DecoFullJars4(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class DecoFullJars3 : Item +{ + [Constructible] + public DecoFullJars3() : base(0xE4a) + { + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class DecoFullJars4 : Item +{ + [Constructible] + public DecoFullJars4() : base(0xE4b) + { + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Jars/HalfEmptyJars.cs b/Projects/UOContent/Items/Special/Rares/Jars/HalfEmptyJars.cs index d61254c67..9391b159b 100644 --- a/Projects/UOContent/Items/Special/Rares/Jars/HalfEmptyJars.cs +++ b/Projects/UOContent/Items/Special/Rares/Jars/HalfEmptyJars.cs @@ -1,152 +1,58 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class HalfEmptyJar : Item { - public class HalfEmptyJar : Item + [Constructible] + public HalfEmptyJar() : base(0x1007) { - [Constructible] - public HalfEmptyJar() - : base(0x1007) - { - Movable = true; - Stackable = false; - } - - public HalfEmptyJar(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class HalfEmptyJars : Item - { - [Constructible] - public HalfEmptyJars() - : base(0xe4c) - { - Movable = true; - Stackable = false; - } - - public HalfEmptyJars(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class Jars2 : Item - { - [Constructible] - public Jars2() - : base(0xE4d) - { - Movable = true; - Stackable = false; - } - - public Jars2(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class Jars3 : Item - { - [Constructible] - public Jars3() - : base(0xE4e) - { - Movable = true; - Stackable = false; - } - - public Jars3(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } - } - - public class Jars4 : Item - { - [Constructible] - public Jars4() - : base(0xE4f) - { - Movable = true; - Stackable = false; - } - - public Jars4(Serial serial) - : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class HalfEmptyJars : Item +{ + [Constructible] + public HalfEmptyJars() : base(0xe4c) + { + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class Jars2 : Item +{ + [Constructible] + public Jars2() : base(0xE4d) + { + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class Jars3 : Item +{ + [Constructible] + public Jars3() : base(0xE4e) + { + Movable = true; + Stackable = false; + } +} + +[SerializationGenerator(0, false)] +public partial class Jars4 : Item +{ + [Constructible] + public Jars4() : base(0xE4f) + { + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Magic/DecoCrystalBall.cs b/Projects/UOContent/Items/Special/Rares/Magic/DecoCrystalBall.cs index 241240438..291d16980 100644 --- a/Projects/UOContent/Items/Special/Rares/Magic/DecoCrystalBall.cs +++ b/Projects/UOContent/Items/Special/Rares/Magic/DecoCrystalBall.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoCrystalBall : Item { - public class DecoCrystalBall : Item + [Constructible] + public DecoCrystalBall() : base(0xE2E) { - [Constructible] - public DecoCrystalBall() : base(0xE2E) - { - Movable = true; - Stackable = false; - } - - public DecoCrystalBall(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Magic/DecoMagicalCrystal.cs b/Projects/UOContent/Items/Special/Rares/Magic/DecoMagicalCrystal.cs index 878f37828..719d58726 100644 --- a/Projects/UOContent/Items/Special/Rares/Magic/DecoMagicalCrystal.cs +++ b/Projects/UOContent/Items/Special/Rares/Magic/DecoMagicalCrystal.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoMagicalCrystal : Item { - public class DecoMagicalCrystal : Item + [Constructible] + public DecoMagicalCrystal() : base(0x1F19) { - [Constructible] - public DecoMagicalCrystal() : base(0x1F19) - { - Movable = true; - Stackable = false; - } - - public DecoMagicalCrystal(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Misc/DecoSpittoon.cs b/Projects/UOContent/Items/Special/Rares/Misc/DecoSpittoon.cs index 2474a0a8c..68b9d7681 100644 --- a/Projects/UOContent/Items/Special/Rares/Misc/DecoSpittoon.cs +++ b/Projects/UOContent/Items/Special/Rares/Misc/DecoSpittoon.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoSpittoon : Item { - public class DecoSpittoon : Item + [Constructible] + public DecoSpittoon() : base(0x1003) { - [Constructible] - public DecoSpittoon() : base(0x1003) - { - Movable = true; - Stackable = false; - } - - public DecoSpittoon(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBlackmoor.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBlackmoor.cs index bf4ae6708..b151fb433 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBlackmoor.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBlackmoor.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoBlackmoor : Item { - public class DecoBlackmoor : Item + [Constructible] + public DecoBlackmoor() : base(0xF79) { - [Constructible] - public DecoBlackmoor() : base(0xF79) - { - Movable = true; - Stackable = false; - } - - public DecoBlackmoor(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBloodspawn.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBloodspawn.cs index e131849ab..e6566d0bd 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBloodspawn.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBloodspawn.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoBloodspawn : Item { - public class DecoBloodspawn : Item + [Constructible] + public DecoBloodspawn() : base(0xF7C) { - [Constructible] - public DecoBloodspawn() : base(0xF7C) - { - Movable = true; - Stackable = false; - } - - public DecoBloodspawn(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBrimstone.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBrimstone.cs index fdda36752..4b95a628f 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBrimstone.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoBrimstone.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoBrimstone : Item { - public class DecoBrimstone : Item + [Constructible] + public DecoBrimstone() : base(0xF7F) { - [Constructible] - public DecoBrimstone() : base(0xF7F) - { - Movable = true; - Stackable = false; - } - - public DecoBrimstone(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood.cs index 7ff1c3cd9..91a857bd5 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoDragonsBlood : Item { - public class DecoDragonsBlood : Item + [Constructible] + public DecoDragonsBlood() : base(0x4077) { - [Constructible] - public DecoDragonsBlood() : base(0x4077) - { - Movable = true; - Stackable = false; - } - - public DecoDragonsBlood(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood2.cs index 4983bedf7..5a2effdd1 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoDragonsBlood2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoDragonsBlood2 : Item { - public class DecoDragonsBlood2 : Item + [Constructible] + public DecoDragonsBlood2() : base(0xF82) { - [Constructible] - public DecoDragonsBlood2() : base(0xF82) - { - Movable = true; - Stackable = false; - } - - public DecoDragonsBlood2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoEyeOfNewt.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoEyeOfNewt.cs index 47bad726c..dad6adf91 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoEyeOfNewt.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoEyeOfNewt.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoEyeOfNewt : Item { - public class DecoEyeOfNewt : Item + [Constructible] + public DecoEyeOfNewt() : base(0xF87) { - [Constructible] - public DecoEyeOfNewt() : base(0xF87) - { - Movable = true; - Stackable = false; - } - - public DecoEyeOfNewt(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic.cs index 47924a230..95104f150 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGarlic : Item { - public class DecoGarlic : Item + [Constructible] + public DecoGarlic() : base(0x18E1) { - [Constructible] - public DecoGarlic() : base(0x18E1) - { - Movable = true; - Stackable = false; - } - - public DecoGarlic(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic2.cs index 2eccb8a97..4cdc77411 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlic2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGarlic2 : Item { - public class DecoGarlic2 : Item + [Constructible] + public DecoGarlic2() : base(0x18E2) { - [Constructible] - public DecoGarlic2() : base(0x18E2) - { - Movable = true; - Stackable = false; - } - - public DecoGarlic2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb.cs index 0d0a9b8db..08cf0a166 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGarlicBulb : Item { - public class DecoGarlicBulb : Item + [Constructible] + public DecoGarlicBulb() : base(0x18E3) { - [Constructible] - public DecoGarlicBulb() : base(0x18E3) - { - Movable = true; - Stackable = false; - } - - public DecoGarlicBulb(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb2.cs index de66835eb..cfb05827e 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGarlicBulb2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGarlicBulb2 : Item { - public class DecoGarlicBulb2 : Item + [Constructible] + public DecoGarlicBulb2() : base(0x18E4) { - [Constructible] - public DecoGarlicBulb2() : base(0x18E4) - { - Movable = true; - Stackable = false; - } - - public DecoGarlicBulb2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng.cs index 51930f23e..148f32c09 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGinseng : Item { - public class DecoGinseng : Item + [Constructible] + public DecoGinseng() : base(0x18E9) { - [Constructible] - public DecoGinseng() : base(0x18E9) - { - Movable = true; - Stackable = false; - } - - public DecoGinseng(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng2.cs index 1871dfe74..302508d9c 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinseng2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGinseng2 : Item { - public class DecoGinseng2 : Item + [Constructible] + public DecoGinseng2() : base(0x18EA) { - [Constructible] - public DecoGinseng2() : base(0x18EA) - { - Movable = true; - Stackable = false; - } - - public DecoGinseng2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot.cs index c23e1970a..fc76da46c 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGinsengRoot : Item { - public class DecoGinsengRoot : Item + [Constructible] + public DecoGinsengRoot() : base(0x18EB) { - [Constructible] - public DecoGinsengRoot() : base(0x18EB) - { - Movable = true; - Stackable = false; - } - - public DecoGinsengRoot(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot2.cs index e0a423c42..7dfbf09db 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoGinsengRoot2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoGinsengRoot2 : Item { - public class DecoGinsengRoot2 : Item + [Constructible] + public DecoGinsengRoot2() : base(0x18EC) { - [Constructible] - public DecoGinsengRoot2() : base(0x18EC) - { - Movable = true; - Stackable = false; - } - - public DecoGinsengRoot2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake.cs index eed57bbe0..c7cbc1763 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoMandrake : Item { - public class DecoMandrake : Item + [Constructible] + public DecoMandrake() : base(0x18DF) { - [Constructible] - public DecoMandrake() : base(0x18DF) - { - Movable = true; - Stackable = false; - } - - public DecoMandrake(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake2.cs index 932eadc92..89a5da72b 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoMandrake2 : Item { - public class DecoMandrake2 : Item + [Constructible] + public DecoMandrake2() : base(0x18E0) { - [Constructible] - public DecoMandrake2() : base(0x18E0) - { - Movable = true; - Stackable = false; - } - - public DecoMandrake2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake3.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake3.cs index 0880a994e..fe2d70097 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake3.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrake3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoMandrake3 : Item { - public class DecoMandrake3 : Item + [Constructible] + public DecoMandrake3() : base(0x18DF) { - [Constructible] - public DecoMandrake3() : base(0x18DF) - { - Movable = true; - Stackable = false; - } - - public DecoMandrake3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot.cs index 5ef477854..20935d4b6 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoMandrakeRoot : Item { - public class DecoMandrakeRoot : Item + [Constructible] + public DecoMandrakeRoot() : base(0x18DE) { - [Constructible] - public DecoMandrakeRoot() : base(0x18DE) - { - Movable = true; - Stackable = false; - } - - public DecoMandrakeRoot(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot2.cs index 9dc5e5404..3cf727f81 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoMandrakeRoot2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoMandrakeRoot2 : Item { - public class DecoMandrakeRoot2 : Item + [Constructible] + public DecoMandrakeRoot2() : base(0x18DD) { - [Constructible] - public DecoMandrakeRoot2() : base(0x18DD) - { - Movable = true; - Stackable = false; - } - - public DecoMandrakeRoot2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade.cs index 3e269fd80..064b88d8f 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoNightshade : Item { - public class DecoNightshade : Item + [Constructible] + public DecoNightshade() : base(0x18E7) { - [Constructible] - public DecoNightshade() : base(0x18E7) - { - Movable = true; - Stackable = false; - } - - public DecoNightshade(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade2.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade2.cs index 2ac9f2e0d..3d14ab392 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade2.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoNightshade2 : Item { - public class DecoNightshade2 : Item + [Constructible] + public DecoNightshade2() : base(0x18E5) { - [Constructible] - public DecoNightshade2() : base(0x18E5) - { - Movable = true; - Stackable = false; - } - - public DecoNightshade2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade3.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade3.cs index 18f8a30fd..c37fbc03c 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade3.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoNightshade3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoNightshade3 : Item { - public class DecoNightshade3 : Item + [Constructible] + public DecoNightshade3() : base(0x18E6) { - [Constructible] - public DecoNightshade3() : base(0x18E6) - { - Movable = true; - Stackable = false; - } - - public DecoNightshade3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoObsidian.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoObsidian.cs index 9411e5bdf..7e5965fe5 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoObsidian.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoObsidian.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoObsidian : Item { - public class DecoObsidian : Item + [Constructible] + public DecoObsidian() : base(0xF89) { - [Constructible] - public DecoObsidian() : base(0xF89) - { - Movable = true; - Stackable = false; - } - - public DecoObsidian(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoPumice.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoPumice.cs index aea4661cd..c7fc9c720 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoPumice.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoPumice.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoPumice : Item { - public class DecoPumice : Item + [Constructible] + public DecoPumice() : base(0xF8B) { - [Constructible] - public DecoPumice() : base(0xF8B) - { - Movable = true; - Stackable = false; - } - - public DecoPumice(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoWyrmsHeart.cs b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoWyrmsHeart.cs index 60760c1e5..56c2a3496 100644 --- a/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoWyrmsHeart.cs +++ b/Projects/UOContent/Items/Special/Rares/PaganReagents/DecoWyrmsHeart.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoWyrmsHeart : Item { - public class DecoWyrmsHeart : Item + [Constructible] + public DecoWyrmsHeart() : base(0xF91) { - [Constructible] - public DecoWyrmsHeart() : base(0xF91) - { - Movable = true; - Stackable = false; - } - - public DecoWyrmsHeart(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards.cs b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards.cs index c680aa73b..ffe8b2919 100644 --- a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards.cs +++ b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Cards : Item { - public class Cards : Item + [Constructible] + public Cards() : base(0xE19) { - [Constructible] - public Cards() : base(0xE19) - { - Movable = true; - Stackable = false; - } - - public Cards(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards2.cs b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards2.cs index 855cc6ae4..080b952f1 100644 --- a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards2.cs +++ b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Cards2 : Item { - public class Cards2 : Item + [Constructible] + public Cards2() : base(0xE16) { - [Constructible] - public Cards2() : base(0xE16) - { - Movable = true; - Stackable = false; - } - - public Cards2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards3.cs b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards3.cs index 580706ac2..416235244 100644 --- a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards3.cs +++ b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Cards3 : Item { - public class Cards3 : Item + [Constructible] + public Cards3() : base(0xE15) { - [Constructible] - public Cards3() : base(0xE15) - { - Movable = true; - Stackable = false; - } - - public Cards3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards4.cs b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards4.cs index f90dc3a09..946d39419 100644 --- a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards4.cs +++ b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards4.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Cards4 : Item { - public class Cards4 : Item + [Constructible] + public Cards4() : base(0xE17) { - [Constructible] - public Cards4() : base(0xE17) - { - Movable = true; - Stackable = false; - } - - public Cards4(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards5.cs b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards5.cs index 4ce618b6f..752ce5144 100644 --- a/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards5.cs +++ b/Projects/UOContent/Items/Special/Rares/PlayingCards/Cards5.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoCards5 : Item { - public class DecoCards5 : Item + [Constructible] + public DecoCards5() : base(0xE18) { - [Constructible] - public DecoCards5() : base(0xE18) - { - Movable = true; - Stackable = false; - } - - public DecoCards5(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards.cs b/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards.cs index c6b5dcd29..b571d1e93 100644 --- a/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards.cs +++ b/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class PlayingCards : Item { - public class PlayingCards : Item + [Constructible] + public PlayingCards() : base(0xFA3) { - [Constructible] - public PlayingCards() : base(0xFA3) - { - Movable = true; - Stackable = false; - } - - public PlayingCards(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards2.cs b/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards2.cs index 81eedcd1c..443be4fb6 100644 --- a/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards2.cs +++ b/Projects/UOContent/Items/Special/Rares/PlayingCards/PlayingCards2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class PlayingCards2 : Item { - public class PlayingCards2 : Item + [Constructible] + public PlayingCards2() : base(0xFA2) { - [Constructible] - public PlayingCards2() : base(0xFA2) - { - Movable = true; - Stackable = false; - } - - public PlayingCards2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Stables/Bridle.cs b/Projects/UOContent/Items/Special/Rares/Stables/Bridle.cs index 17d67e58e..5ea7c695d 100644 --- a/Projects/UOContent/Items/Special/Rares/Stables/Bridle.cs +++ b/Projects/UOContent/Items/Special/Rares/Stables/Bridle.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoBridle : Item { - public class DecoBridle : Item + [Constructible] + public DecoBridle() : base(0x1374) { - [Constructible] - public DecoBridle() : base(0x1374) - { - Movable = true; - Stackable = false; - } - - public DecoBridle(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Stables/Bridle2.cs b/Projects/UOContent/Items/Special/Rares/Stables/Bridle2.cs index 2b81e4ad1..565106516 100644 --- a/Projects/UOContent/Items/Special/Rares/Stables/Bridle2.cs +++ b/Projects/UOContent/Items/Special/Rares/Stables/Bridle2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoBridle2 : Item { - public class DecoBridle2 : Item + [Constructible] + public DecoBridle2() : base(0x1375) { - [Constructible] - public DecoBridle2() : base(0x1375) - { - Movable = true; - Stackable = false; - } - - public DecoBridle2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Stables/DecoHay.cs b/Projects/UOContent/Items/Special/Rares/Stables/DecoHay.cs index 1004f2027..72b25e2de 100644 --- a/Projects/UOContent/Items/Special/Rares/Stables/DecoHay.cs +++ b/Projects/UOContent/Items/Special/Rares/Stables/DecoHay.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoHay : Item { - public class DecoHay : Item + [Constructible] + public DecoHay() : base(0xF35) { - [Constructible] - public DecoHay() : base(0xF35) - { - Movable = true; - Stackable = false; - } - - public DecoHay(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Stables/DecoHay2.cs b/Projects/UOContent/Items/Special/Rares/Stables/DecoHay2.cs index b101f6786..0678e5d5e 100644 --- a/Projects/UOContent/Items/Special/Rares/Stables/DecoHay2.cs +++ b/Projects/UOContent/Items/Special/Rares/Stables/DecoHay2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoHay2 : Item { - public class DecoHay2 : Item + [Constructible] + public DecoHay2() : base(0xF34) { - [Constructible] - public DecoHay2() : base(0xF34) - { - Movable = true; - Stackable = false; - } - - public DecoHay2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Stables/DecoHorseDung.cs b/Projects/UOContent/Items/Special/Rares/Stables/DecoHorseDung.cs index a50eb7af2..a476aa175 100644 --- a/Projects/UOContent/Items/Special/Rares/Stables/DecoHorseDung.cs +++ b/Projects/UOContent/Items/Special/Rares/Stables/DecoHorseDung.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoHorseDung : Item { - public class DecoHorseDung : Item + [Constructible] + public DecoHorseDung() : base(0xF3B) { - [Constructible] - public DecoHorseDung() : base(0xF3B) - { - Movable = true; - Stackable = false; - } - - public DecoHorseDung(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot.cs index 77e29fe64..f07973c31 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoDeckOfTarot : Item { - public class DecoDeckOfTarot : Item + [Constructible] + public DecoDeckOfTarot() : base(0x12AB) { - [Constructible] - public DecoDeckOfTarot() : base(0x12AB) - { - Movable = true; - Stackable = false; - } - - public DecoDeckOfTarot(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot2.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot2.cs index cbf7fe0f2..18e39c616 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot2.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoDeckOfTarot2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoDeckOfTarot2 : Item { - public class DecoDeckOfTarot2 : Item + [Constructible] + public DecoDeckOfTarot2() : base(0x12Ac) { - [Constructible] - public DecoDeckOfTarot2() : base(0x12Ac) - { - Movable = true; - Stackable = false; - } - - public DecoDeckOfTarot2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot.cs index ab972c1a4..2c51f7f03 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTarot : Item { - public class DecoTarot : Item + [Constructible] + public DecoTarot() : base(0x12A5) { - [Constructible] - public DecoTarot() : base(0x12A5) - { - Movable = true; - Stackable = false; - } - - public DecoTarot(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot2.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot2.cs index c27b65765..de591a11b 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot2.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTarot2 : Item { - public class DecoTarot2 : Item + [Constructible] + public DecoTarot2() : base(0x12A6) { - [Constructible] - public DecoTarot2() : base(0x12A6) - { - Movable = true; - Stackable = false; - } - - public DecoTarot2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot3.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot3.cs index 7514975b2..9b4dcad2a 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot3.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot3.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTarot3 : Item { - public class DecoTarot3 : Item + [Constructible] + public DecoTarot3() : base(0x12A7) { - [Constructible] - public DecoTarot3() : base(0x12A7) - { - Movable = true; - Stackable = false; - } - - public DecoTarot3(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot4.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot4.cs index 23ea244fc..86a88e234 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot4.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot4.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTarot4 : Item { - public class DecoTarot4 : Item + [Constructible] + public DecoTarot4() : base(0x12A8) { - [Constructible] - public DecoTarot4() : base(0x12A8) - { - Movable = true; - Stackable = false; - } - - public DecoTarot4(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot5.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot5.cs index 8c88a95b4..019f82a18 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot5.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot5.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTarot5 : Item { - public class DecoTarot5 : Item + [Constructible] + public DecoTarot5() : base(0x12A9) { - [Constructible] - public DecoTarot5() : base(0x12A9) - { - Movable = true; - Stackable = false; - } - - public DecoTarot5(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot6.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot6.cs index 0759fe0ad..c43029b09 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot6.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot6.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTarot6 : Item { - public class DecoTarot6 : Item + [Constructible] + public DecoTarot6() : base(0x12AA) { - [Constructible] - public DecoTarot6() : base(0x12AA) - { - Movable = true; - Stackable = false; - } - - public DecoTarot6(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot7.cs b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot7.cs index 4416782c6..36255e05b 100644 --- a/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot7.cs +++ b/Projects/UOContent/Items/Special/Rares/TarotCards/DecoTarot7.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoTarot7 : Item { - public class DecoTarot7 : Item + [Constructible] + public DecoTarot7() : base(0x12A5) { - [Constructible] - public DecoTarot7() : base(0x12A5) - { - Movable = true; - Stackable = false; - } - - public DecoTarot7(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Tinker/ArrowShafts.cs b/Projects/UOContent/Items/Special/Rares/Tinker/ArrowShafts.cs index be8360cab..cdbb0b024 100644 --- a/Projects/UOContent/Items/Special/Rares/Tinker/ArrowShafts.cs +++ b/Projects/UOContent/Items/Special/Rares/Tinker/ArrowShafts.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class DecoArrowShafts : Item { - public class DecoArrowShafts : Item + [Constructible] + public DecoArrowShafts() : base(Utility.Random(2) + 0x1024) { - [Constructible] - public DecoArrowShafts() : base(Utility.Random(2) + 0x1024) - { - Movable = true; - Stackable = false; - } - - public DecoArrowShafts(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Tinker/CrossbowBolts.cs b/Projects/UOContent/Items/Special/Rares/Tinker/CrossbowBolts.cs index 35ffd866e..017849d59 100644 --- a/Projects/UOContent/Items/Special/Rares/Tinker/CrossbowBolts.cs +++ b/Projects/UOContent/Items/Special/Rares/Tinker/CrossbowBolts.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class CrossbowBolts : Item { - public class CrossbowBolts : Item + [Constructible] + public CrossbowBolts() : base(0x1BFC) { - [Constructible] - public CrossbowBolts() : base(0x1BFC) - { - Movable = true; - Stackable = false; - } - - public CrossbowBolts(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit.cs b/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit.cs index bc352d571..b08146e9a 100644 --- a/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit.cs +++ b/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class EmptyToolKit : Item { - public class EmptyToolKit : Item + [Constructible] + public EmptyToolKit() : base(0x1EB6) { - [Constructible] - public EmptyToolKit() : base(0x1EB6) - { - Movable = true; - Stackable = false; - } - - public EmptyToolKit(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit2.cs b/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit2.cs index 69c93a46d..f3da86619 100644 --- a/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit2.cs +++ b/Projects/UOContent/Items/Special/Rares/Tinker/EmptyToolKit2.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class EmptyToolKit2 : Item { - public class EmptyToolKit2 : Item + [Constructible] + public EmptyToolKit2() : base(0x1EB7) { - [Constructible] - public EmptyToolKit2() : base(0x1EB7) - { - Movable = true; - Stackable = false; - } - - public EmptyToolKit2(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Tinker/Lockpicks.cs b/Projects/UOContent/Items/Special/Rares/Tinker/Lockpicks.cs index abfb0dd6b..266c992cc 100644 --- a/Projects/UOContent/Items/Special/Rares/Tinker/Lockpicks.cs +++ b/Projects/UOContent/Items/Special/Rares/Tinker/Lockpicks.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class Lockpicks : Item { - public class Lockpicks : Item + [Constructible] + public Lockpicks() : base(Utility.Random(2) + 0x14FD) { - [Constructible] - public Lockpicks() : base(Utility.Random(2) + 0x14FD) - { - Movable = true; - Stackable = false; - } - - public Lockpicks(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Rares/Tinker/ToolKit.cs b/Projects/UOContent/Items/Special/Rares/Tinker/ToolKit.cs index fab40ff82..a16e1ec98 100644 --- a/Projects/UOContent/Items/Special/Rares/Tinker/ToolKit.cs +++ b/Projects/UOContent/Items/Special/Rares/Tinker/ToolKit.cs @@ -1,30 +1,14 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0, false)] +public partial class ToolKit : Item { - public class ToolKit : Item + [Constructible] + public ToolKit() : base(Utility.Random(2) + 0x1EBA) { - [Constructible] - public ToolKit() : base(Utility.Random(2) + 0x1EBA) - { - Movable = true; - Stackable = false; - } - - public ToolKit(Serial serial) : base(serial) - { - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - } + Movable = true; + Stackable = false; } } diff --git a/Projects/UOContent/Items/Special/Solen Items/BagOfSending.cs b/Projects/UOContent/Items/Special/Solen Items/BagOfSending.cs index faf151f2d..7d643650f 100644 --- a/Projects/UOContent/Items/Special/Solen Items/BagOfSending.cs +++ b/Projects/UOContent/Items/Special/Solen Items/BagOfSending.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using ModernUO.Serialization; using Server.ContextMenus; using Server.Engines.Quests; using Server.Network; @@ -7,313 +8,259 @@ using Server.Regions; using Server.Spells; using Server.Targeting; -namespace Server.Items +namespace Server.Items; + +public enum BagOfSendingHue { - public enum BagOfSendingHue + Yellow, + Blue, + Red +} + +[SerializationGenerator(2, false)] +public partial class BagOfSending : Item, TranslocationItem +{ + [Constructible] + public BagOfSending() : this(RandomHue()) { - Yellow, - Blue, - Red } - public class BagOfSending : Item, TranslocationItem + [Constructible] + public BagOfSending(BagOfSendingHue hue) : base(0xE76) { - private BagOfSendingHue m_BagOfSendingHue; + Weight = 2.0; - private int m_Charges; - private int m_Recharges; + _bagOfSendingHue = hue; + _charges = Utility.RandomMinMax(3, 9); + } - [Constructible] - public BagOfSending() : this(RandomHue()) + public override int LabelNumber => 1054104; // a bag of sending + + [SerializableProperty(0)] + [CommandProperty(AccessLevel.GameMaster)] + public BagOfSendingHue BagOfSendingHue + { + get => _bagOfSendingHue; + set { - } + _bagOfSendingHue = value; - [Constructible] - public BagOfSending(BagOfSendingHue hue) : base(0xE76) - { - Weight = 2.0; - - BagOfSendingHue = hue; - - m_Charges = Utility.RandomMinMax(3, 9); - } - - public BagOfSending(Serial serial) : base(serial) - { - } - - public override int LabelNumber => 1054104; // a bag of sending - - [CommandProperty(AccessLevel.GameMaster)] - public BagOfSendingHue BagOfSendingHue - { - get => m_BagOfSendingHue; - set + Hue = value switch { - m_BagOfSendingHue = value; - - Hue = value switch - { - BagOfSendingHue.Yellow => 0x8A5, - BagOfSendingHue.Blue => 0x8AD, - BagOfSendingHue.Red => 0x89B, - _ => Hue - }; - } - } - - [CommandProperty(AccessLevel.GameMaster)] - public int Charges - { - get => m_Charges; - set - { - m_Charges = Math.Clamp(value, 0, MaxCharges); - InvalidateProperties(); - } - } - - [CommandProperty(AccessLevel.GameMaster)] - public int Recharges - { - get => m_Recharges; - set - { - m_Recharges = Math.Clamp(value, 0, MaxRecharges); - InvalidateProperties(); - } - } - - [CommandProperty(AccessLevel.GameMaster)] - public int MaxCharges => 30; - - [CommandProperty(AccessLevel.GameMaster)] - public int MaxRecharges => 255; - - public string TranslocationItemName => "bag of sending"; - - public static BagOfSendingHue RandomHue() - { - return Utility.Random(3) switch - { - 0 => BagOfSendingHue.Yellow, - 1 => BagOfSendingHue.Blue, - _ => BagOfSendingHue.Red + BagOfSendingHue.Yellow => 0x8A5, + BagOfSendingHue.Blue => 0x8AD, + BagOfSendingHue.Red => 0x89B, + _ => Hue }; + this.MarkDirty(); } + } - public override void GetProperties(IPropertyList list) + [SerializableProperty(1)] + [CommandProperty(AccessLevel.GameMaster)] + public int Charges + { + get => _charges; + set { - base.GetProperties(list); - - list.Add(1060741, m_Charges); // charges: ~1_val~ + _charges = Math.Clamp(value, 0, MaxCharges); + InvalidateProperties(); + this.MarkDirty(); } + } - public override void OnSingleClick(Mobile from) + [SerializableProperty(2)] + [CommandProperty(AccessLevel.GameMaster)] + public int Recharges + { + get => _recharges; + set { - base.OnSingleClick(from); - - LabelTo(from, 1060741, m_Charges.ToString()); // charges: ~1_val~ + _recharges = Math.Clamp(value, 0, MaxRecharges); + InvalidateProperties(); + this.MarkDirty(); } + } - public override void GetContextMenuEntries(Mobile from, List list) + [CommandProperty(AccessLevel.GameMaster)] + public int MaxCharges => 30; + + [CommandProperty(AccessLevel.GameMaster)] + public int MaxRecharges => 255; + + + private static TextDefinition _translocationItemName = 1150423; // bag of sending + public TextDefinition TranslocationItemName => _translocationItemName; + + public static BagOfSendingHue RandomHue() + { + return Utility.Random(3) switch { - base.GetContextMenuEntries(from, list); + 0 => BagOfSendingHue.Yellow, + 1 => BagOfSendingHue.Blue, + _ => BagOfSendingHue.Red + }; + } - if (from.Alive) + public override void GetProperties(IPropertyList list) + { + base.GetProperties(list); + + list.Add(1060741, _charges); // charges: ~1_val~ + } + + public override void OnSingleClick(Mobile from) + { + base.OnSingleClick(from); + + LabelTo(from, 1060741, _charges.ToString()); // charges: ~1_val~ + } + + public override void GetContextMenuEntries(Mobile from, List list) + { + base.GetContextMenuEntries(from, list); + + if (from.Alive) + { + list.Add(new UseBagEntry(this, Charges > 0 && IsChildOf(from.Backpack))); + } + } + + public override void OnDoubleClick(Mobile from) + { + if (from.Region.IsPartOf()) + { + from.SendMessage("You may not do that in jail."); + } + else if (!IsChildOf(from.Backpack)) + { + // The bag of sending must be in your backpack. + this.SendLocalizedMessageTo(from, 1062334, 0x59); + } + else if (Charges == 0) + { + this.SendLocalizedMessageTo(from, 1042544, 0x59); // This item is out of charges. + } + else + { + from.Target = new SendTarget(this); + } + } + + private void Deserialize(IGenericReader reader, int version) + { + _recharges = reader.ReadEncodedInt(); + _charges = reader.ReadEncodedInt(); + _bagOfSendingHue = (BagOfSendingHue)reader.ReadEncodedInt(); + } + + private class UseBagEntry : ContextMenuEntry + { + private readonly BagOfSending _bag; + + public UseBagEntry(BagOfSending bag, bool enabled) : base(6189) + { + _bag = bag; + + if (!enabled) { - list.Add(new UseBagEntry(this, Charges > 0 && IsChildOf(from.Backpack))); + Flags |= CMEFlags.Disabled; } } - public override void OnDoubleClick(Mobile from) + public override void OnClick() { + if (_bag.Deleted) + { + return; + } + + var from = Owner.From; + + if (from.CheckAlive()) + { + _bag.OnDoubleClick(from); + } + } + } + + private class SendTarget : Target + { + private readonly BagOfSending _bag; + + public SendTarget(BagOfSending bag) : base(-1, false, TargetFlags.None) => _bag = bag; + + protected override void OnTarget(Mobile from, object targeted) + { + if (_bag.Deleted) + { + return; + } + + if (targeted is not Item item) + { + return; + } + if (from.Region.IsPartOf()) { from.SendMessage("You may not do that in jail."); + return; } - else if (!IsChildOf(from.Backpack)) + + if (!_bag.IsChildOf(from.Backpack)) { - MessageHelper.SendLocalizedMessageTo( - this, - from, - 1062334, - 0x59 - ); // The bag of sending must be in your backpack. + // The bag of sending must be in your backpack. 1054107 is gone from client, using generic response + _bag.SendLocalizedMessageTo(from, 1062334, 0x59); + return; } - else if (Charges == 0) + + if (_bag.Charges == 0) { - MessageHelper.SendLocalizedMessageTo(this, from, 1042544, 0x59); // This item is out of charges. + _bag.SendLocalizedMessageTo(from, 1042544, 0x59); // This item is out of charges. + return; + } + + var reqCharges = (int)Math.Max(1, Math.Ceiling(item.TotalWeight / 10.0)); + + if (!item.IsChildOf(from.Backpack)) + { + // You may only send items from your backpack to your bank box. + _bag.SendLocalizedMessageTo(from, 1054152, 0x59); + } + else if (item is BagOfSending or Container) + { + // You cannot send a container through the bag of sending + _bag.SendLocalizedMessageTo(from, 1079428, 0x59); + } + else if (item.LootType == LootType.Cursed) + { + // The bag of sending rejects the cursed item. + _bag.SendLocalizedMessageTo(from, 1054108, 0x59); + } + else if (!item.VerifyMove(from) || item is QuestItem || item.Nontransferable) + { + // The bag of sending rejects that item. + _bag.SendLocalizedMessageTo(from, 1054109, 0x59); + } + else if (SpellHelper.IsDoomGauntlet(from.Map, from.Location)) + { + from.SendLocalizedMessage(1062089); // You cannot use that here. + } + else if (Core.ML && reqCharges > _bag.Charges) + { + from.SendLocalizedMessage(1079932); // You don't have enough charges to send that much weight + } + else if (!from.BankBox.TryDropItem(from, item, false)) + { + _bag.SendLocalizedMessageTo(from, 1054110, 0x59); // Your bank box is full. } else { - from.Target = new SendTarget(this); - } - } + _bag.Charges -= Core.ML ? reqCharges : 1; - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.WriteEncodedInt(1); // version - - writer.WriteEncodedInt(m_Recharges); - - writer.WriteEncodedInt(m_Charges); - writer.WriteEncodedInt((int)m_BagOfSendingHue); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadEncodedInt(); - - switch (version) - { - case 1: - { - m_Recharges = reader.ReadEncodedInt(); - goto case 0; - } - case 0: - { - m_Charges = Math.Min(reader.ReadEncodedInt(), MaxCharges); - m_BagOfSendingHue = (BagOfSendingHue)reader.ReadEncodedInt(); - break; - } - } - } - - private class UseBagEntry : ContextMenuEntry - { - private readonly BagOfSending m_Bag; - - public UseBagEntry(BagOfSending bag, bool enabled) : base(6189) - { - m_Bag = bag; - - if (!enabled) - { - Flags |= CMEFlags.Disabled; - } - } - - public override void OnClick() - { - if (m_Bag.Deleted) - { - return; - } - - var from = Owner.From; - - if (from.CheckAlive()) - { - m_Bag.OnDoubleClick(from); - } - } - } - - private class SendTarget : Target - { - private readonly BagOfSending m_Bag; - - public SendTarget(BagOfSending bag) : base(-1, false, TargetFlags.None) => m_Bag = bag; - - protected override void OnTarget(Mobile from, object targeted) - { - if (m_Bag.Deleted) - { - return; - } - - if (from.Region.IsPartOf()) - { - from.SendMessage("You may not do that in jail."); - } - else if (!m_Bag.IsChildOf(from.Backpack)) - { - MessageHelper.SendLocalizedMessageTo( - m_Bag, - from, - 1062334, - 0x59 - ); // The bag of sending must be in your backpack. 1054107 is gone from client, using generic response - } - else if (m_Bag.Charges == 0) - { - MessageHelper.SendLocalizedMessageTo(m_Bag, from, 1042544, 0x59); // This item is out of charges. - } - else if (targeted is Item item) - { - var reqCharges = (int)Math.Max(1, Math.Ceiling(item.TotalWeight / 10.0)); - - if (!item.IsChildOf(from.Backpack)) - { - MessageHelper.SendLocalizedMessageTo( - m_Bag, - from, - 1054152, - 0x59 - ); // You may only send items from your backpack to your bank box. - } - else if (item is BagOfSending or Container) - { - from.NetState.SendMessage( - m_Bag.Serial, - m_Bag.ItemID, - MessageType.Regular, - 0x3B2, - 3, - true, - null, - "", - "You cannot send a container through the bag of sending." - ); - } - else if (item.LootType == LootType.Cursed) - { - MessageHelper.SendLocalizedMessageTo( - m_Bag, - from, - 1054108, - 0x59 - ); // The bag of sending rejects the cursed item. - } - else if (!item.VerifyMove(from) || item is QuestItem || item.Nontransferable) - { - MessageHelper.SendLocalizedMessageTo( - m_Bag, - from, - 1054109, - 0x59 - ); // The bag of sending rejects that item. - } - else if (SpellHelper.IsDoomGauntlet(from.Map, from.Location)) - { - from.SendLocalizedMessage(1062089); // You cannot use that here. - } - else if (!from.BankBox.TryDropItem(from, item, false)) - { - MessageHelper.SendLocalizedMessageTo(m_Bag, from, 1054110, 0x59); // Your bank box is full. - } - else if (Core.ML && reqCharges > m_Bag.Charges) - { - from.SendLocalizedMessage(1079932); // You don't have enough charges to send that much weight - } - else - { - m_Bag.Charges -= Core.ML ? reqCharges : 1; - - MessageHelper.SendLocalizedMessageTo( - m_Bag, - from, - 1054150, - 0x59 - ); // The item was placed in your bank box. - } - } + // The item was placed in your bank box. + _bag.SendLocalizedMessageTo(from, 1054150, 0x59); } } } diff --git a/Projects/UOContent/Items/Special/Solen Items/BallOfSummoning.cs b/Projects/UOContent/Items/Special/Solen Items/BallOfSummoning.cs index ecc6bf688..fcb6a1293 100644 --- a/Projects/UOContent/Items/Special/Solen Items/BallOfSummoning.cs +++ b/Projects/UOContent/Items/Special/Solen Items/BallOfSummoning.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using ModernUO.Serialization; using Server.ContextMenus; using Server.Engines.ConPVP; using Server.Mobiles; @@ -9,525 +10,431 @@ using Server.Spells; using Server.Spells.Ninjitsu; using Server.Targeting; -namespace Server.Items +namespace Server.Items; + +[SerializationGenerator(2)] +public partial class BallOfSummoning : Item, TranslocationItem { - public class BallOfSummoning : Item, TranslocationItem + [SerializableField(3, setter: "private")] + [SerializedCommandProperty(AccessLevel.GameMaster)] + private string _petName; + + [Constructible] + public BallOfSummoning() : base(0xE2E) { - private int m_Charges; - private BaseCreature m_Pet; - private int m_Recharges; + Weight = 10.0; + Light = LightType.Circle150; - [Constructible] - public BallOfSummoning() : base(0xE2E) + _charges = Utility.RandomMinMax(3, 9); + _petName = null; + } + + [SerializableProperty(0)] + [CommandProperty(AccessLevel.GameMaster)] + public int Recharges + { + get => _recharges; + set { - Weight = 10.0; - Light = LightType.Circle150; - - m_Charges = Utility.RandomMinMax(3, 9); - - PetName = ""; + _recharges = Math.Clamp(value, 0, MaxRecharges); + InvalidateProperties(); + this.MarkDirty(); } + } - public BallOfSummoning(Serial serial) : base(serial) + [SerializableProperty(1)] + [CommandProperty(AccessLevel.GameMaster)] + public int Charges + { + get => _charges; + set { + _charges = Math.Clamp(value, 0, MaxCharges); + InvalidateProperties(); + this.MarkDirty(); } + } - [CommandProperty(AccessLevel.GameMaster)] - public BaseCreature Pet + [SerializableProperty(2)] + [CommandProperty(AccessLevel.GameMaster)] + public BaseCreature Pet + { + get { - get + if (_pet?.Deleted == true) { - if (m_Pet?.Deleted == true) - { - m_Pet = null; - InternalUpdatePetName(); - } - - return m_Pet; - } - set - { - m_Pet = value; + _pet = null; InternalUpdatePetName(); } + + return _pet; } - - [CommandProperty(AccessLevel.GameMaster)] - public string PetName { get; private set; } - - [CommandProperty(AccessLevel.GameMaster)] - public int Charges - { - get => m_Charges; - set - { - m_Charges = Math.Clamp(value, 0, MaxCharges); - InvalidateProperties(); - } - } - - [CommandProperty(AccessLevel.GameMaster)] - public int Recharges - { - get => m_Recharges; - set - { - m_Recharges = Math.Clamp(value, 0, MaxRecharges); - InvalidateProperties(); - } - } - - [CommandProperty(AccessLevel.GameMaster)] - public int MaxCharges => 20; - - [CommandProperty(AccessLevel.GameMaster)] - public int MaxRecharges => 255; - - public string TranslocationItemName => "crystal ball of pet summoning"; - - public override void AddNameProperty(IPropertyList list) - { - list.Add( - 1054131, - $"{m_Charges}\t{PetName.DefaultIfNullOrEmpty(" ")}" - ); // a crystal ball of pet summoning: [charges: ~1_charges~] : [linked pet: ~2_petName~] - } - - public override void OnSingleClick(Mobile from) - { - LabelTo( - from, - 1054131, - $"{m_Charges}\t{PetName.DefaultIfNullOrEmpty(" ")}" - ); // a crystal ball of pet summoning: [charges: ~1_charges~] : [linked pet: ~2_petName~] - } - - public override void GetContextMenuEntries(Mobile from, List list) - { - base.GetContextMenuEntries(from, list); - - if (from.Alive && RootParent == from) - { - if (Pet == null) - { - list.Add(new BallEntry(LinkPet, 6180)); - } - else - { - list.Add(new BallEntry(CastSummonPet, 6181)); - list.Add(new BallEntry(UpdatePetName, 6183)); - list.Add(new BallEntry(UnlinkPet, 6182)); - } - } - } - - public override void OnDoubleClick(Mobile from) - { - if (RootParent != from - ) // TODO: Previous implementation allowed use on ground, without house protection checks. What is the correct behavior? - { - from.LocalOverheadMessage( - MessageType.Regular, - 0x3B2, - 1042001 - ); // That must be in your pack for you to use it. - return; - } - - var animalContext = AnimalForm.GetContext(from); - - if (Core.ML && animalContext != null) - { - from.LocalOverheadMessage( - MessageType.Regular, - 0x3B2, - 1080073 - ); // You cannot use a Crystal Ball of Pet Summoning while in animal form. - return; - } - - if (Pet == null) - { - LinkPet(from); - } - else - { - CastSummonPet(from); - } - } - - public void LinkPet(Mobile from) - { - var pet = Pet; - - if (Deleted || pet != null || RootParent != from) - { - return; - } - - from.SendLocalizedMessage( - 1054114 - ); // Target your pet that you wish to link to this Crystal Ball of Pet Summoning. - from.Target = new PetLinkTarget(this); - } - - public void CastSummonPet(Mobile from) - { - var pet = Pet; - - if (Deleted || pet == null || RootParent != from) - { - return; - } - - if (Charges == 0) - { - SendLocalizedMessageTo( - from, - 1054122 - ); // The Crystal Ball darkens. It must be charged before it can be used again. - } - else if (pet is BaseMount mount && mount.Rider == from) - { - MessageHelper.SendLocalizedMessageTo( - this, - from, - 1054124, - 0x36 - ); // The Crystal Ball fills with a yellow mist. Why would you summon your pet while riding it? - } - else if (pet.Map == Map.Internal && (!pet.IsStabled || from.Followers + pet.ControlSlots > from.FollowersMax)) - { - MessageHelper.SendLocalizedMessageTo( - this, - from, - 1054125, - 0x5 - ); // The Crystal Ball fills with a blue mist. Your pet is not responding to the summons. - } - else if ((!pet.Controlled || pet.ControlMaster != from) && !from.Stabled.Contains(pet)) - { - MessageHelper.SendLocalizedMessageTo( - this, - from, - 1054126, - 0x8FD - ); // The Crystal Ball fills with a grey mist. You are not the owner of the pet you are attempting to summon. - } - else if (!pet.IsBonded) - { - MessageHelper.SendLocalizedMessageTo( - this, - from, - 1054127, - 0x22 - ); // The Crystal Ball fills with a red mist. You appear to have let your bond to your pet deteriorate. - } - else if (from.Map == Map.Ilshenar || from.Region.IsPartOf() || - from.Region.IsPartOf() || from.Region.IsPartOf()) - { - from.NetState.SendMessage( - Serial, - ItemID, - MessageType.Regular, - 0x22, - 3, - true, - null, - "", - "You cannot summon your pet to this location." - ); - } - else if (Core.ML && from is PlayerMobile mobile && Core.Now < mobile.LastPetBallTime.AddSeconds(15.0)) - { - MessageHelper.SendLocalizedMessageTo( - this, - mobile, - 1080072, - 0x22 - ); // You must wait a few seconds before you can summon your pet. - } - else - { - if (Core.ML) - { - new PetSummoningSpell(this, from).Cast(); - } - else - { - SummonPet(from); - } - } - } - - public void SummonPet(Mobile from) - { - var pet = Pet; - - if (pet == null) - { - return; - } - - Charges--; - - if (pet.IsStabled) - { - pet.SetControlMaster(from); - - if (pet.Summoned) - { - pet.SummonMaster = from; - } - - pet.ControlTarget = from; - pet.ControlOrder = OrderType.Follow; - - pet.IsStabled = false; - pet.StabledBy = null; - from.Stabled.Remove(pet); - - if (from is PlayerMobile mobile) - { - mobile.AutoStabled.Remove(pet); - } - } - - pet.MoveToWorld(from.Location, from.Map); - - MessageHelper.SendLocalizedMessageTo( - this, - from, - 1054128, - 0x43 - ); // The Crystal Ball fills with a green mist. Your pet has been summoned. - - if (from is PlayerMobile playerMobile) - { - playerMobile.LastPetBallTime = Core.Now; - } - } - - public void UnlinkPet(Mobile from) - { - if (!Deleted && Pet != null && RootParent == from) - { - Pet = null; - - SendLocalizedMessageTo(from, 1054120); // This crystal ball is no longer linked to a pet. - } - } - - public void UpdatePetName(Mobile from) + set { + _pet = value; InternalUpdatePetName(); + this.MarkDirty(); + } + } + + [CommandProperty(AccessLevel.GameMaster)] + public int MaxCharges => 20; + + [CommandProperty(AccessLevel.GameMaster)] + public int MaxRecharges => 255; + + private static TextDefinition _translocationItemName = 1054129; // crystal ball of pet summoning + public TextDefinition TranslocationItemName => _translocationItemName; + + public override void AddNameProperty(IPropertyList list) + { + // a crystal ball of pet summoning: [charges: ~1_charges~] : [linked pet: ~2_petName~] + list.Add(1054131, $"{_charges}\t{_petName.DefaultIfNullOrEmpty(" ")}"); + } + + public override void OnSingleClick(Mobile from) + { + // a crystal ball of pet summoning: [charges: ~1_charges~] : [linked pet: ~2_petName~] + LabelTo(from, 1054131, $"{_charges}\t{_petName.DefaultIfNullOrEmpty(" ")}"); + } + + public override void GetContextMenuEntries(Mobile from, List list) + { + base.GetContextMenuEntries(from, list); + + if (!from.Alive || RootParent != from) + { + return; } - private void InternalUpdatePetName() + if (Pet == null) { - PetName = Pet?.Name ?? ""; - InvalidateProperties(); + list.Add(new BallEntry(LinkPet, 6180)); + } + else + { + list.Add(new BallEntry(CastSummonPet, 6181)); + list.Add(new BallEntry(UpdatePetName, 6183)); + list.Add(new BallEntry(UnlinkPet, 6182)); + } + } + + public override void OnDoubleClick(Mobile from) + { + // TODO: Previous implementation allowed use on ground, without house protection checks. What is the correct behavior? + if (RootParent != from) + { + // That must be in your pack for you to use it. + from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1042001); + return; } - public override void Serialize(IGenericWriter writer) + var animalContext = AnimalForm.GetContext(from); + + if (Core.ML && animalContext != null) { - base.Serialize(writer); - - writer.WriteEncodedInt(1); // version - - writer.WriteEncodedInt(m_Recharges); - - writer.WriteEncodedInt(m_Charges); - writer.Write(Pet); - writer.Write(PetName); + // You cannot use a Crystal Ball of Pet Summoning while in animal form. + from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1080073); + return; } - public override void Deserialize(IGenericReader reader) + if (Pet == null) { - base.Deserialize(reader); + LinkPet(from); + } + else + { + CastSummonPet(from); + } + } - var version = reader.ReadEncodedInt(); + public void LinkPet(Mobile from) + { + var pet = Pet; - switch (version) + if (Deleted || pet != null || RootParent != from) + { + return; + } + + // Target your pet that you wish to link to this Crystal Ball of Pet Summoning. + from.SendLocalizedMessage(1054114); + from.Target = new PetLinkTarget(this); + } + + public void CastSummonPet(Mobile from) + { + var pet = Pet; + + if (Deleted || pet == null || RootParent != from) + { + return; + } + + if (Charges == 0) + { + // The Crystal Ball darkens. It must be charged before it can be used again. + SendLocalizedMessageTo(from, 1054122); + } + else if (pet is BaseMount mount && mount.Rider == from) + { + // The Crystal Ball fills with a yellow mist. Why would you summon your pet while riding it? + this.SendLocalizedMessageTo(from, 1054124, 0x36); + } + else if (pet.Map == Map.Internal && (!pet.IsStabled || from.Followers + pet.ControlSlots > from.FollowersMax)) + { + // The Crystal Ball fills with a blue mist. Your pet is not responding to the summons. + this.SendLocalizedMessageTo(from, 1054125, 0x5); + } + else if ((!pet.Controlled || pet.ControlMaster != from) && !from.Stabled.Contains(pet)) + { + // The Crystal Ball fills with a grey mist. You are not the owner of the pet you are attempting to summon. + this.SendLocalizedMessageTo(from, 1054126, 0x8FD); + } + else if (!pet.IsBonded) + { + // The Crystal Ball fills with a red mist. You appear to have let your bond to your pet deteriorate. + this.SendLocalizedMessageTo(from, 1054127, 0x22); + } + else if (from.Map == Map.Ilshenar || from.Region.IsPartOf() || + from.Region.IsPartOf() || from.Region.IsPartOf()) + { + // You cannot summon your pet to this location. + this.SendLocalizedMessageTo(from, 1080049, 0x22); + } + else if (Core.ML && from is PlayerMobile mobile && Core.Now < mobile.LastPetBallTime.AddSeconds(15.0)) + { + // You must wait a few seconds before you can summon your pet. + this.SendLocalizedMessageTo(mobile, 1080072, 0x22); + } + else if (Core.ML) + { + new PetSummoningSpell(this, from).Cast(); + } + else + { + SummonPet(from); + } + } + + public void SummonPet(Mobile from) + { + var pet = Pet; + + if (pet == null) + { + return; + } + + Charges--; + + if (pet.IsStabled) + { + pet.SetControlMaster(from); + + if (pet.Summoned) { - case 1: - { - m_Recharges = reader.ReadEncodedInt(); - goto case 0; - } - case 0: - { - m_Charges = Math.Min(reader.ReadEncodedInt(), MaxCharges); - Pet = (BaseCreature)reader.ReadEntity(); - PetName = reader.ReadString(); - break; - } + pet.SummonMaster = from; + } + + pet.ControlTarget = from; + pet.ControlOrder = OrderType.Follow; + + pet.IsStabled = false; + pet.StabledBy = null; + from.Stabled.Remove(pet); + + if (from is PlayerMobile mobile) + { + mobile.AutoStabled.Remove(pet); } } - private delegate void BallCallback(Mobile from); + pet.MoveToWorld(from.Location, from.Map); - private class BallEntry : ContextMenuEntry + // The Crystal Ball fills with a green mist. Your pet has been summoned. + this.SendLocalizedMessageTo(from, 1054128, 0x43); + + if (from is PlayerMobile playerMobile) { - private readonly BallCallback m_Callback; - - public BallEntry(BallCallback callback, int number) : base(number, 2) => m_Callback = callback; - - public override void OnClick() - { - var from = Owner.From; - - if (from.CheckAlive()) - { - m_Callback(from); - } - } + playerMobile.LastPetBallTime = Core.Now; } + } - private class PetLinkTarget : Target + public void UnlinkPet(Mobile from) + { + if (!Deleted && Pet != null && RootParent == from) { - private readonly BallOfSummoning m_Ball; + Pet = null; - public PetLinkTarget(BallOfSummoning ball) : base(-1, false, TargetFlags.None) => m_Ball = ball; - - protected override void OnTarget(Mobile from, object targeted) - { - if (m_Ball.Deleted || m_Ball.Pet != null) - { - return; - } - - if (m_Ball.RootParent != from) - { - from.LocalOverheadMessage( - MessageType.Regular, - 0x3B2, - 1042001 - ); // That must be in your pack for you to use it. - } - else if (targeted is BaseCreature creature) - { - if (!creature.Controlled || creature.ControlMaster != from) - { - MessageHelper.SendLocalizedMessageTo( - m_Ball, - from, - 1054117, - 0x59 - ); // You may only link your own pets to a Crystal Ball of Pet Summoning. - } - else if (!creature.IsBonded) - { - MessageHelper.SendLocalizedMessageTo( - m_Ball, - from, - 1054118, - 0x59 - ); // You must bond with your pet before it can be linked to a Crystal Ball of Pet Summoning. - } - else - { - MessageHelper.SendLocalizedMessageTo( - m_Ball, - from, - 1054119, - 0x59 - ); // Your pet is now linked to this Crystal Ball of Pet Summoning. - - m_Ball.Pet = creature; - } - } - else if (targeted == m_Ball) - { - MessageHelper.SendLocalizedMessageTo( - m_Ball, - from, - 1054115, - 0x59 - ); // The Crystal Ball of Pet Summoning cannot summon itself. - } - else - { - MessageHelper.SendLocalizedMessageTo( - m_Ball, - from, - 1054116, - 0x59 - ); // Only pets can be linked to this Crystal Ball of Pet Summoning. - } - } + SendLocalizedMessageTo(from, 1054120); // This crystal ball is no longer linked to a pet. } + } - private class PetSummoningSpell : Spell + public void UpdatePetName(Mobile from) + { + InternalUpdatePetName(); + } + + private void InternalUpdatePetName() + { + PetName = Pet?.Name ?? ""; + InvalidateProperties(); + } + + private void Deserialize(IGenericReader reader, int version) + { + _recharges = reader.ReadEncodedInt(); + _charges = reader.ReadEncodedInt(); + _pet = (BaseCreature)reader.ReadEntity(); + _petName = reader.ReadString(); + } + + [AfterDeserialization(false)] + private void AfterDeserialization() + { + InternalUpdatePetName(); + } + + private delegate void BallCallback(Mobile from); + + private class BallEntry : ContextMenuEntry + { + private readonly BallCallback _callback; + + public BallEntry(BallCallback callback, int number) : base(number, 2) => _callback = callback; + + public override void OnClick() { - private static readonly SpellInfo m_Info = new("Ball Of Summoning", "", 230); + var from = Owner.From; - private readonly BallOfSummoning m_Ball; - private readonly Mobile m_Caster; - - private bool m_Stop; - - public PetSummoningSpell(BallOfSummoning ball, Mobile caster) - : base(caster, null, m_Info) + if (from.CheckAlive()) { - m_Caster = caster; - m_Ball = ball; - } - - public override bool ClearHandsOnCast => false; - public override bool RevealOnCast => true; - - public override double CastDelayFastScalar => 0; - - public override TimeSpan CastDelayBase => TimeSpan.FromSeconds(2.0); - - public override TimeSpan GetCastRecovery() => TimeSpan.Zero; - - public override int GetMana() => 0; - - public override bool ConsumeReagents() => true; - - public override bool CheckFizzle() => true; - - public void Stop() - { - m_Stop = true; - Disturb(DisturbType.Hurt, false); - } - - public override bool CheckDisturb(DisturbType type, bool checkFirst, bool resistable) => - type != DisturbType.EquipRequest && type != DisturbType.UseRequest; - - public override void DoHurtFizzle() - { - if (!m_Stop) - { - base.DoHurtFizzle(); - } - } - - public override void DoFizzle() - { - if (!m_Stop) - { - base.DoFizzle(); - } - } - - public override void OnDisturb(DisturbType type, bool message) - { - if (message && !m_Stop) - { - Caster.SendLocalizedMessage(1080074); // You have been disrupted while attempting to summon your pet! - } - } - - public override void OnCast() - { - m_Ball.SummonPet(m_Caster); - - FinishSequence(); + _callback(from); } } } + + private class PetLinkTarget : Target + { + private readonly BallOfSummoning _ball; + + public PetLinkTarget(BallOfSummoning ball) : base(-1, false, TargetFlags.None) => _ball = ball; + + protected override void OnTarget(Mobile from, object targeted) + { + if (_ball.Deleted || _ball.Pet != null) + { + return; + } + + if (_ball.RootParent != from) + { + // That must be in your pack for you to use it. + from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1042001); + return; + } + + if (targeted is BaseCreature creature) + { + if (!creature.Controlled || creature.ControlMaster != from) + { + // You may only link your own pets to a Crystal Ball of Pet Summoning. + _ball.SendLocalizedMessageTo(from, 1054117, 0x59); + } + else if (!creature.IsBonded) + { + // You must bond with your pet before it can be linked to a Crystal Ball of Pet Summoning. + _ball.SendLocalizedMessageTo(from, 1054118, 0x59); + } + else + { + // Your pet is now linked to this Crystal Ball of Pet Summoning. + _ball.SendLocalizedMessageTo(from, 1054119, 0x59); + _ball.Pet = creature; + } + } + else if (targeted == _ball) + { + // The Crystal Ball of Pet Summoning cannot summon itself. + _ball.SendLocalizedMessageTo(from, 1054115, 0x59); + } + else + { + // Only pets can be linked to this Crystal Ball of Pet Summoning. + _ball.SendLocalizedMessageTo(from, 1054116, 0x59); + } + } + } + + private class PetSummoningSpell : Spell + { + private static readonly SpellInfo _info = new("Ball Of Summoning", "", 230); + + private readonly BallOfSummoning _ball; + private readonly Mobile _caster; + + private bool _stop; + + public PetSummoningSpell(BallOfSummoning ball, Mobile caster) : base(caster, null, _info) + { + _caster = caster; + _ball = ball; + } + + public override bool ClearHandsOnCast => false; + public override bool RevealOnCast => true; + + public override double CastDelayFastScalar => 0; + + public override TimeSpan CastDelayBase => TimeSpan.FromSeconds(2.0); + + public override TimeSpan GetCastRecovery() => TimeSpan.Zero; + + public override int GetMana() => 0; + + public override bool ConsumeReagents() => true; + + public override bool CheckFizzle() => true; + + public void Stop() + { + _stop = true; + Disturb(DisturbType.Hurt, false); + } + + public override bool CheckDisturb(DisturbType type, bool checkFirst, bool resistable) => + type != DisturbType.EquipRequest && type != DisturbType.UseRequest; + + public override void DoHurtFizzle() + { + if (!_stop) + { + base.DoHurtFizzle(); + } + } + + public override void DoFizzle() + { + if (!_stop) + { + base.DoFizzle(); + } + } + + public override void OnDisturb(DisturbType type, bool message) + { + if (message && !_stop) + { + Caster.SendLocalizedMessage(1080074); // You have been disrupted while attempting to summon your pet! + } + } + + public override void OnCast() + { + _ball.SummonPet(_caster); + + FinishSequence(); + } + } } diff --git a/Projects/UOContent/Items/Special/Solen Items/BraceletOfBinding.cs b/Projects/UOContent/Items/Special/Solen Items/BraceletOfBinding.cs index 6ab02460e..5b820f404 100644 --- a/Projects/UOContent/Items/Special/Solen Items/BraceletOfBinding.cs +++ b/Projects/UOContent/Items/Special/Solen Items/BraceletOfBinding.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using ModernUO.Serialization; using Server.ContextMenus; using Server.Factions; using Server.Misc; @@ -10,495 +11,442 @@ using Server.Regions; using Server.Spells; using Server.Targeting; -namespace Server.Items +namespace Server.Items; + +[SerializationGenerator(2)] +public partial class BraceletOfBinding : BaseBracelet, TranslocationItem { - public class BraceletOfBinding : BaseBracelet, TranslocationItem + [InvalidateProperties] + [SerializableField(2)] + [SerializedCommandProperty(AccessLevel.GameMaster)] + private string _inscription; + + private TransportTimer _timer; + + [Constructible] + public BraceletOfBinding() : base(0x1086) { - private BraceletOfBinding m_Bound; - private int m_Charges; - private string m_Inscription; - private int m_Recharges; - private TransportTimer m_Timer; + Hue = 0x489; + Weight = 1.0; + } - [Constructible] - public BraceletOfBinding() : base(0x1086) + [SerializableProperty(0)] + [CommandProperty(AccessLevel.GameMaster)] + public int Recharges + { + get => _recharges; + set { - Hue = 0x489; - Weight = 1.0; - - m_Inscription = ""; + _recharges = Math.Clamp(value, 0, MaxRecharges); + InvalidateProperties(); + this.MarkDirty(); } + } - public BraceletOfBinding(Serial serial) : base(serial) + [SerializableProperty(1)] + [CommandProperty(AccessLevel.GameMaster)] + public int Charges + { + get => _charges; + set { + _charges = Math.Clamp(value, 0, MaxCharges); + InvalidateProperties(); + this.MarkDirty(); } + } - [CommandProperty(AccessLevel.GameMaster)] - public string Inscription + [SerializableProperty(3)] + [CommandProperty(AccessLevel.GameMaster)] + public BraceletOfBinding Bound + { + get { - get => m_Inscription; - set + if (_bound?.Deleted == true) { - m_Inscription = value; - InvalidateProperties(); + _bound = null; } + + return _bound; } + set => _bound = value; + } - [CommandProperty(AccessLevel.GameMaster)] - public BraceletOfBinding Bound - { - get - { - if (m_Bound?.Deleted == true) - { - m_Bound = null; - } + [CommandProperty(AccessLevel.GameMaster)] + public int MaxCharges => 20; - return m_Bound; - } - set => m_Bound = value; - } + [CommandProperty(AccessLevel.GameMaster)] + public int MaxRecharges => 255; - [CommandProperty(AccessLevel.GameMaster)] - public int Charges - { - get => m_Charges; - set - { - m_Charges = Math.Clamp(value, 0, MaxCharges); - InvalidateProperties(); - } - } + private static TextDefinition _translocationItemName = "bracelet of binding"; + public TextDefinition TranslocationItemName => _translocationItemName; - [CommandProperty(AccessLevel.GameMaster)] - public int Recharges - { - get => m_Recharges; - set - { - m_Recharges = Math.Clamp(value, 0, MaxRecharges); - InvalidateProperties(); - } - } + public override void AddNameProperty(IPropertyList list) + { + // a bracelet of binding : ~1_val~ ~2_val~ + list.Add(1054000, $"{_charges}\t{_inscription.DefaultIfNullOrEmpty(" ")}"); + } - [CommandProperty(AccessLevel.GameMaster)] - public int MaxCharges => 20; + public override void OnSingleClick(Mobile from) + { + // a bracelet of binding : ~1_val~ ~2_val~ + LabelTo(from, 1054000, $"{_charges}\t{_inscription.DefaultIfNullOrEmpty(" ")}"); + } - [CommandProperty(AccessLevel.GameMaster)] - public int MaxRecharges => 255; + public override void GetContextMenuEntries(Mobile from, List list) + { + base.GetContextMenuEntries(from, list); - public string TranslocationItemName => "bracelet of binding"; - - public override void AddNameProperty(IPropertyList list) - { - // a bracelet of binding : ~1_val~ ~2_val~ - list.Add(1054000, $"{m_Charges}\t{m_Inscription.DefaultIfNullOrEmpty(" ")}"); - } - - public override void OnSingleClick(Mobile from) - { - LabelTo( - from, - 1054000, // a bracelet of binding : ~1_val~ ~2_val~ - $"{m_Charges}\t{m_Inscription.DefaultIfNullOrEmpty(" ")}" - ); - } - - public override void GetContextMenuEntries(Mobile from, List list) - { - base.GetContextMenuEntries(from, list); - - if (from.Alive && IsChildOf(from)) - { - var bound = Bound; - - list.Add(new BraceletEntry(Activate, 6170, bound != null)); - list.Add(new BraceletEntry(Search, 6171, bound != null)); - list.Add(new BraceletEntry(Bind, bound == null ? 6173 : 6174, true)); - list.Add(new BraceletEntry(Inscribe, 6175, true)); - } - } - - public override void OnDoubleClick(Mobile from) + if (from.Alive && IsChildOf(from)) { var bound = Bound; - if (Bound == null) + list.Add(new BraceletEntry(Activate, 6170, bound != null)); + list.Add(new BraceletEntry(Search, 6171, bound != null)); + list.Add(new BraceletEntry(Bind, bound == null ? 6173 : 6174, true)); + list.Add(new BraceletEntry(Inscribe, 6175, true)); + } + } + + public override void OnDoubleClick(Mobile from) + { + if (Bound == null) + { + Bind(from); + } + else + { + Activate(from); + } + } + + public void Activate(Mobile from) + { + if (Deleted || Bound == null) + { + return; + } + + if (!IsChildOf(from)) + { + from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. + } + else if (_timer != null) + { + // The bracelet is already attempting contact. You decide to wait a moment. + from.SendLocalizedMessage(1054013); + } + else + { + from.PlaySound(0xF9); + // * You concentrate on the bracelet to summon its power * + from.LocalOverheadMessage(MessageType.Regular, 0x5D, 1151783); + + from.Frozen = true; + + _timer = new TransportTimer(this, from); + _timer.Start(); + } + } + + public void Search(Mobile from) + { + var bound = Bound; + + if (Deleted || bound == null) + { + return; + } + + if (!IsChildOf(from)) + { + from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. + } + else + { + CheckUse(from, true); + } + } + + private bool CheckUse(Mobile from, bool successMessage) + { + var bound = Bound; + + if (bound == null) + { + return false; + } + + var boundRoot = bound.RootParent as Mobile; + + if (Charges == 0) + { + // The bracelet glows black. It must be charged before it can be used again. + from.SendLocalizedMessage(1054005); + return false; + } + + if (from.FindItemOnLayer(Layer.Bracelet) != this) + { + from.SendLocalizedMessage(1054004); // You must equip the bracelet in order to use its power. + return false; + } + + if (boundRoot?.NetState == null || boundRoot.FindItemOnLayer(Layer.Bracelet) != bound) + { + // The bracelet emits a red glow. The bracelet's twin is not available for transport. + from.SendLocalizedMessage(1054006); + return false; + } + + if (!Core.AOS && from.Map != boundRoot.Map) + { + from.SendLocalizedMessage(1054014); // The bracelet glows black. The bracelet's target is on another facet. + return false; + } + + if (Sigil.ExistsOn(from)) + { + from.SendLocalizedMessage(1061632); // You can't do that while carrying the sigil. + return false; + } + + if (!SpellHelper.CheckTravel(from, TravelCheckType.RecallFrom, out var failureMessage)) + { + failureMessage.SendMessageTo(from); + return false; + } + + if (!SpellHelper.CheckTravel(from, boundRoot.Map, boundRoot.Location, TravelCheckType.RecallTo, out failureMessage)) + { + failureMessage.SendMessageTo(from); + return false; + } + + if (boundRoot.Map == Map.Felucca && from is PlayerMobile mobile && mobile.Young) + { + mobile.SendLocalizedMessage(1049543); // You decide against traveling to Felucca while you are still young. + return false; + } + + if (from.Kills >= 5 && boundRoot.Map != Map.Felucca) + { + from.SendLocalizedMessage(1019004); // You are not allowed to travel there. + return false; + } + + if (from.Criminal) + { + from.SendLocalizedMessage(1005561, "", 0x22); // Thou'rt a criminal and cannot escape so easily. + return false; + } + + if (SpellHelper.CheckCombat(from)) + { + from.SendLocalizedMessage(1005564, "", 0x22); // Wouldst thou flee during the heat of battle?? + return false; + } + + if (WeightOverloading.IsOverloaded(from)) + { + from.SendLocalizedMessage(502359, "", 0x22); // Thou art too encumbered to move. + return false; + } + + if (from.Region.IsPartOf()) + { + from.SendLocalizedMessage(1114345, "", 0x35); // You'll need a better jailbreak plan than that! + return false; + } + + if (boundRoot.Region.IsPartOf()) + { + from.SendLocalizedMessage(1019004); // You are not allowed to travel there. + return false; + } + + if (successMessage) + { + from.SendLocalizedMessage(1054015); // The bracelet's twin is available for transport. + } + + return true; + } + + public void Bind(Mobile from) + { + if (Deleted) + { + return; + } + + if (!IsChildOf(from)) + { + from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. + } + else + { + from.SendLocalizedMessage(1054001); // Target the bracelet of binding you wish to bind this bracelet to. + from.Target = new BindTarget(this); + } + } + + public void Inscribe(Mobile from) + { + if (Deleted) + { + return; + } + + if (!IsChildOf(from)) + { + from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. + } + else + { + from.SendLocalizedMessage(1054009); // Enter the text to inscribe upon the bracelet : + from.Prompt = new InscribePrompt(this); + } + } + + private void Deserialize(IGenericReader reader, int version) + { + _recharges = reader.ReadEncodedInt(); + _charges = Math.Min(reader.ReadEncodedInt(), MaxCharges); + _inscription = reader.ReadString(); + _bound = (BraceletOfBinding)reader.ReadEntity(); + } + + private delegate void BraceletCallback(Mobile from); + + private class BraceletEntry : ContextMenuEntry + { + private readonly BraceletCallback _callback; + + public BraceletEntry(BraceletCallback callback, int number, bool enabled) : base(number) + { + _callback = callback; + + if (!enabled) { - Bind(from); - } - else - { - Activate(from); + Flags |= CMEFlags.Disabled; } } - public void Activate(Mobile from) + public override void OnClick() { - var bound = Bound; + var from = Owner.From; - if (Deleted || bound == null) + if (from.CheckAlive()) { - return; - } - - if (!IsChildOf(from)) - { - from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. - } - else if (m_Timer != null) - { - from.SendLocalizedMessage( - 1054013 - ); // The bracelet is already attempting contact. You decide to wait a moment. - } - else - { - from.PlaySound(0xF9); - from.LocalOverheadMessage( - MessageType.Regular, - 0x5D, - true, - "* You concentrate on the bracelet to summon its power *" - ); - - from.Frozen = true; - - m_Timer = new TransportTimer(this, from); - m_Timer.Start(); - } - } - - public void Search(Mobile from) - { - var bound = Bound; - - if (Deleted || bound == null) - { - return; - } - - if (!IsChildOf(from)) - { - from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. - } - else - { - CheckUse(from, true); - } - } - - private bool CheckUse(Mobile from, bool successMessage) - { - var bound = Bound; - - if (bound == null) - { - return false; - } - - var boundRoot = bound.RootParent as Mobile; - - if (Charges == 0) - { - from.SendLocalizedMessage( - 1054005 - ); // The bracelet glows black. It must be charged before it can be used again. - return false; - } - - if (from.FindItemOnLayer(Layer.Bracelet) != this) - { - from.SendLocalizedMessage(1054004); // You must equip the bracelet in order to use its power. - return false; - } - - if (boundRoot?.NetState == null || boundRoot.FindItemOnLayer(Layer.Bracelet) != bound) - { - from.SendLocalizedMessage( - 1054006 - ); // The bracelet emits a red glow. The bracelet's twin is not available for transport. - return false; - } - - if (!Core.AOS && from.Map != boundRoot.Map) - { - from.SendLocalizedMessage(1054014); // The bracelet glows black. The bracelet's target is on another facet. - return false; - } - - if (Sigil.ExistsOn(from)) - { - from.SendLocalizedMessage(1061632); // You can't do that while carrying the sigil. - return false; - } - - if (!SpellHelper.CheckTravel(from, TravelCheckType.RecallFrom, out var failureMessage)) - { - failureMessage.SendMessageTo(from); - return false; - } - - if (!SpellHelper.CheckTravel(from, boundRoot.Map, boundRoot.Location, TravelCheckType.RecallTo, out failureMessage)) - { - failureMessage.SendMessageTo(from); - return false; - } - - if (boundRoot.Map == Map.Felucca && from is PlayerMobile mobile && mobile.Young) - { - mobile.SendLocalizedMessage(1049543); // You decide against traveling to Felucca while you are still young. - return false; - } - - if (from.Kills >= 5 && boundRoot.Map != Map.Felucca) - { - from.SendLocalizedMessage(1019004); // You are not allowed to travel there. - return false; - } - - if (from.Criminal) - { - from.SendLocalizedMessage(1005561, "", 0x22); // Thou'rt a criminal and cannot escape so easily. - return false; - } - - if (SpellHelper.CheckCombat(from)) - { - from.SendLocalizedMessage(1005564, "", 0x22); // Wouldst thou flee during the heat of battle?? - return false; - } - - if (WeightOverloading.IsOverloaded(from)) - { - from.SendLocalizedMessage(502359, "", 0x22); // Thou art too encumbered to move. - return false; - } - - if (from.Region.IsPartOf()) - { - from.SendLocalizedMessage(1114345, "", 0x35); // You'll need a better jailbreak plan than that! - return false; - } - - if (boundRoot.Region.IsPartOf()) - { - from.SendLocalizedMessage(1019004); // You are not allowed to travel there. - return false; - } - - if (successMessage) - { - from.SendLocalizedMessage(1054015); // The bracelet's twin is available for transport. - } - - return true; - } - - public void Bind(Mobile from) - { - if (Deleted) - { - return; - } - - if (!IsChildOf(from)) - { - from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. - } - else - { - from.SendLocalizedMessage(1054001); // Target the bracelet of binding you wish to bind this bracelet to. - from.Target = new BindTarget(this); - } - } - - public void Inscribe(Mobile from) - { - if (Deleted) - { - return; - } - - if (!IsChildOf(from)) - { - from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. - } - else - { - from.SendLocalizedMessage(1054009); // Enter the text to inscribe upon the bracelet : - from.Prompt = new InscribePrompt(this); - } - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.WriteEncodedInt(1); // version - - writer.WriteEncodedInt(m_Recharges); - - writer.WriteEncodedInt(m_Charges); - writer.Write(m_Inscription); - writer.Write(Bound); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadEncodedInt(); - - switch (version) - { - case 1: - { - m_Recharges = reader.ReadEncodedInt(); - goto case 0; - } - case 0: - { - m_Charges = Math.Min(reader.ReadEncodedInt(), MaxCharges); - m_Inscription = reader.ReadString(); - Bound = (BraceletOfBinding)reader.ReadEntity(); - break; - } - } - } - - private delegate void BraceletCallback(Mobile from); - - private class BraceletEntry : ContextMenuEntry - { - private readonly BraceletCallback m_Callback; - - public BraceletEntry(BraceletCallback callback, int number, bool enabled) : base(number) - { - m_Callback = callback; - - if (!enabled) - { - Flags |= CMEFlags.Disabled; - } - } - - public override void OnClick() - { - var from = Owner.From; - - if (from.CheckAlive()) - { - m_Callback(from); - } - } - } - - private class TransportTimer : Timer - { - private readonly BraceletOfBinding m_Bracelet; - private readonly Mobile m_From; - - public TransportTimer(BraceletOfBinding bracelet, Mobile from) : base(TimeSpan.FromSeconds(2.0)) - { - m_Bracelet = bracelet; - m_From = from; - } - - protected override void OnTick() - { - m_Bracelet.m_Timer = null; - m_From.Frozen = false; - - if (m_Bracelet.Deleted || m_From.Deleted || - !m_Bracelet.CheckUse(m_From, false) || - m_Bracelet.Bound.RootParent is not Mobile boundRoot) - { - return; - } - - m_Bracelet.Charges--; - - BaseCreature.TeleportPets(m_From, boundRoot.Location, boundRoot.Map, true); - - m_From.PlaySound(0x1FC); - m_From.MoveToWorld(boundRoot.Location, boundRoot.Map); - m_From.PlaySound(0x1FC); - } - } - - private class BindTarget : Target - { - private readonly BraceletOfBinding m_Bracelet; - - public BindTarget(BraceletOfBinding bracelet) : base(-1, false, TargetFlags.None) => m_Bracelet = bracelet; - - protected override void OnTarget(Mobile from, object targeted) - { - if (m_Bracelet.Deleted) - { - return; - } - - if (!m_Bracelet.IsChildOf(from)) - { - from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. - } - else if (targeted is BraceletOfBinding bindBracelet) - { - if (bindBracelet == m_Bracelet) - { - from.SendLocalizedMessage(1054012); // You cannot bind a bracelet of binding to itself! - } - else if (!bindBracelet.IsChildOf(from)) - { - from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. - } - else - { - from.SendLocalizedMessage( - 1054003 - ); // You bind the bracelet to its counterpart. The bracelets glow with power. - from.PlaySound(0x1FA); - - m_Bracelet.Bound = bindBracelet; - } - } - else - { - from.SendLocalizedMessage(1054002); // You can only bind this bracelet to another bracelet of binding! - } - } - } - - private class InscribePrompt : Prompt - { - private readonly BraceletOfBinding m_Bracelet; - - public InscribePrompt(BraceletOfBinding bracelet) => m_Bracelet = bracelet; - - public override void OnResponse(Mobile from, string text) - { - if (m_Bracelet.Deleted) - { - return; - } - - if (!m_Bracelet.IsChildOf(from)) - { - from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. - } - else - { - from.SendLocalizedMessage(1054011); // You mark the bracelet with your inscription. - m_Bracelet.Inscription = text; - } - } - - public override void OnCancel(Mobile from) - { - from.SendLocalizedMessage(1054010); // You decide not to inscribe the bracelet at this time. + _callback(from); } } } + + private class TransportTimer : Timer + { + private readonly BraceletOfBinding _bracelet; + private readonly Mobile _from; + + public TransportTimer(BraceletOfBinding bracelet, Mobile from) : base(TimeSpan.FromSeconds(2.0)) + { + _bracelet = bracelet; + _from = from; + } + + protected override void OnTick() + { + _bracelet._timer = null; + _from.Frozen = false; + + if (_bracelet.Deleted || _from.Deleted || + !_bracelet.CheckUse(_from, false) || + _bracelet.Bound.RootParent is not Mobile boundRoot) + { + return; + } + + _bracelet.Charges--; + + BaseCreature.TeleportPets(_from, boundRoot.Location, boundRoot.Map, true); + + _from.PlaySound(0x1FC); + _from.MoveToWorld(boundRoot.Location, boundRoot.Map); + _from.PlaySound(0x1FC); + } + } + + private class BindTarget : Target + { + private readonly BraceletOfBinding _bracelet; + + public BindTarget(BraceletOfBinding bracelet) : base(-1, false, TargetFlags.None) => _bracelet = bracelet; + + protected override void OnTarget(Mobile from, object targeted) + { + if (_bracelet.Deleted) + { + return; + } + + if (!_bracelet.IsChildOf(from)) + { + from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. + } + else if (targeted is BraceletOfBinding bindBracelet) + { + if (bindBracelet == _bracelet) + { + from.SendLocalizedMessage(1054012); // You cannot bind a bracelet of binding to itself! + } + else if (!bindBracelet.IsChildOf(from)) + { + from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. + } + else + { + // You bind the bracelet to its counterpart. The bracelets glow with power. + from.SendLocalizedMessage(1054003); + from.PlaySound(0x1FA); + + _bracelet.Bound = bindBracelet; + } + } + else + { + from.SendLocalizedMessage(1054002); // You can only bind this bracelet to another bracelet of binding! + } + } + } + + private class InscribePrompt : Prompt + { + private readonly BraceletOfBinding _bracelet; + + public InscribePrompt(BraceletOfBinding bracelet) => _bracelet = bracelet; + + public override void OnResponse(Mobile from, string text) + { + if (_bracelet.Deleted) + { + return; + } + + if (!_bracelet.IsChildOf(from)) + { + from.SendLocalizedMessage(1042664); // You must have the object in your backpack to use it. + } + else + { + from.SendLocalizedMessage(1054011); // You mark the bracelet with your inscription. + _bracelet.Inscription = text; + } + } + + public override void OnCancel(Mobile from) + { + from.SendLocalizedMessage(1054010); // You decide not to inscribe the bracelet at this time. + } + } } diff --git a/Projects/UOContent/Items/Special/Solen Items/MessageHelper.cs b/Projects/UOContent/Items/Special/Solen Items/MessageHelper.cs deleted file mode 100644 index 21bb8170c..000000000 --- a/Projects/UOContent/Items/Special/Solen Items/MessageHelper.cs +++ /dev/null @@ -1,22 +0,0 @@ -using Server.Network; - -namespace Server -{ - public static class MessageHelper - { - public static void SendLocalizedMessageTo(Item from, Mobile to, int number, int hue) - { - SendLocalizedMessageTo(from, to, number, "", hue); - } - - public static void SendLocalizedMessageTo(Item from, Mobile to, int number, string args, int hue) - { - to.NetState.SendMessageLocalized(from.Serial, from.ItemID, MessageType.Regular, hue, 3, number, "", args); - } - - public static void SendMessageTo(Item from, Mobile to, string text, int hue) - { - to.NetState.SendMessage(from.Serial, from.ItemID, MessageType.Regular, hue, 3, false, "ENU", "", text); - } - } -} diff --git a/Projects/UOContent/Items/Special/Solen Items/PowderOfTranslocation.cs b/Projects/UOContent/Items/Special/Solen Items/PowderOfTranslocation.cs index 6a73c4b02..47618e53d 100644 --- a/Projects/UOContent/Items/Special/Solen Items/PowderOfTranslocation.cs +++ b/Projects/UOContent/Items/Special/Solen Items/PowderOfTranslocation.cs @@ -1,126 +1,106 @@ +using ModernUO.Serialization; using Server.Targeting; -namespace Server.Items +namespace Server.Items; + +public interface TranslocationItem { - public interface TranslocationItem + int Charges { get; set; } + int Recharges { get; set; } + int MaxCharges { get; } + int MaxRecharges { get; } + TextDefinition TranslocationItemName { get; } +} + +[SerializationGenerator(0)] +public partial class PowderOfTranslocation : Item +{ + [Constructible] + public PowderOfTranslocation(int amount = 1) : base(0x26B8) { - int Charges { get; set; } - int Recharges { get; set; } - int MaxCharges { get; } - int MaxRecharges { get; } - string TranslocationItemName { get; } + Stackable = true; + Weight = 0.1; + Amount = amount; } - public class PowderOfTranslocation : Item + public override void OnDoubleClick(Mobile from) { - [Constructible] - public PowderOfTranslocation(int amount = 1) : base(0x26B8) + if (from.InRange(GetWorldLocation(), 2)) { - Stackable = true; - Weight = 0.1; - Amount = amount; + from.Target = new InternalTarget(this); } - - public PowderOfTranslocation(Serial serial) : base(serial) + else { + from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that. } + } - public override void OnDoubleClick(Mobile from) + private class InternalTarget : Target + { + private readonly PowderOfTranslocation _powder; + + public InternalTarget(PowderOfTranslocation powder) : base(-1, false, TargetFlags.None) => _powder = powder; + + protected override void OnTarget(Mobile from, object targeted) { - if (from.InRange(GetWorldLocation(), 2)) + if (_powder.Deleted) { - from.Target = new InternalTarget(this); + return; } - else + + if (!from.InRange(_powder.GetWorldLocation(), 2)) { from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that. } - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.WriteEncodedInt(0); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadEncodedInt(); - } - - private class InternalTarget : Target - { - private readonly PowderOfTranslocation m_Powder; - - public InternalTarget(PowderOfTranslocation powder) : base(-1, false, TargetFlags.None) => m_Powder = powder; - - protected override void OnTarget(Mobile from, object targeted) + else if (targeted is TranslocationItem transItem) { - if (m_Powder.Deleted) + if (transItem.Charges >= transItem.MaxCharges) { - return; + // This item cannot absorb any more powder of translocation. + _powder.SendLocalizedMessageTo(from, 1054137, 0x59); } - - if (!from.InRange(m_Powder.GetWorldLocation(), 2)) + else if (transItem.Recharges >= transItem.MaxRecharges) { - from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that. - } - else if (targeted is TranslocationItem transItem) - { - if (transItem.Charges >= transItem.MaxCharges) - { - MessageHelper.SendLocalizedMessageTo( - m_Powder, - from, - 1054137, - 0x59 - ); // This item cannot absorb any more powder of translocation. - } - else if (transItem.Recharges >= transItem.MaxRecharges) - { - MessageHelper.SendLocalizedMessageTo( - m_Powder, - from, - 1054138, - 0x59 - ); // This item has been oversaturated with powder of translocation and can no longer be recharged. - } - else - { - if (transItem.Charges + m_Powder.Amount > transItem.MaxCharges) - { - var delta = transItem.MaxCharges - transItem.Charges; - - m_Powder.Amount -= delta; - transItem.Charges = transItem.MaxCharges; - transItem.Recharges += delta; - } - else - { - transItem.Charges += m_Powder.Amount; - transItem.Recharges += m_Powder.Amount; - m_Powder.Delete(); - } - - if (transItem is Item item) - { - MessageHelper.SendLocalizedMessageTo(item, from, 1054139, transItem.TranslocationItemName, 0x43); - } - } + // This item has been oversaturated with powder of translocation and can no longer be recharged. + _powder.SendLocalizedMessageTo(from, 1054138, 0x59); } else { - MessageHelper.SendLocalizedMessageTo( - m_Powder, - from, - 1054140, - 0x59 - ); // Powder of translocation has no effect on this item. + if (transItem.Charges + _powder.Amount > transItem.MaxCharges) + { + var delta = transItem.MaxCharges - transItem.Charges; + + _powder.Amount -= delta; + transItem.Charges = transItem.MaxCharges; + transItem.Recharges += delta; + } + else + { + transItem.Charges += _powder.Amount; + transItem.Recharges += _powder.Amount; + _powder.Delete(); + } + + if (transItem is Item item) + { + var _transItemName = transItem.TranslocationItemName; + // The ~1_translocationItem~ glows with green energy and absorbs magical power from the powder. + if (_transItemName.Number > 0) + { + item.SendLocalizedMessageTo(from, 1054139, $"#{_transItemName.Number}", 0x43); + } + else if (_transItemName.String != null) + { + item.SendLocalizedMessageTo(from, 1054139, _transItemName.String, 0x43); + } + } } } + else + { + // Powder of translocation has no effect on this item. + _powder.SendLocalizedMessageTo(from, 1054140, 0x59); + } } } } diff --git a/Projects/UOContent/Items/Special/Solen Items/ZoogiFungus.cs b/Projects/UOContent/Items/Special/Solen Items/ZoogiFungus.cs index ebaaf2d1e..d01c22198 100644 --- a/Projects/UOContent/Items/Special/Solen Items/ZoogiFungus.cs +++ b/Projects/UOContent/Items/Special/Solen Items/ZoogiFungus.cs @@ -1,34 +1,18 @@ -namespace Server.Items +using ModernUO.Serialization; + +namespace Server.Items; + +[SerializationGenerator(0)] +public partial class ZoogiFungus : Item, ICommodity { - public class ZoogiFungus : Item, ICommodity + [Constructible] + public ZoogiFungus(int amount = 1) : base(0x26B7) { - [Constructible] - public ZoogiFungus(int amount = 1) : base(0x26B7) - { - Stackable = true; - Weight = 0.1; - Amount = amount; - } - - public ZoogiFungus(Serial serial) : base(serial) - { - } - - int ICommodity.DescriptionNumber => LabelNumber; - bool ICommodity.IsDeedable => Core.ML; - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.WriteEncodedInt(0); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadEncodedInt(); - } + Stackable = true; + Weight = 0.1; + Amount = amount; } + + int ICommodity.DescriptionNumber => LabelNumber; + bool ICommodity.IsDeedable => Core.ML; } diff --git a/Projects/UOContent/Migrations/Server.Items.BagOfSending.v2.json b/Projects/UOContent/Migrations/Server.Items.BagOfSending.v2.json new file mode 100644 index 000000000..b875d1443 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.BagOfSending.v2.json @@ -0,0 +1,27 @@ +{ + "version": 2, + "type": "Server.Items.BagOfSending", + "properties": [ + { + "name": "BagOfSendingHue", + "type": "Server.Items.BagOfSendingHue", + "rule": "EnumMigrationRule" + }, + { + "name": "Charges", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + }, + { + "name": "Recharges", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + } + ] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.BallOfSummoning.v2.json b/Projects/UOContent/Migrations/Server.Items.BallOfSummoning.v2.json new file mode 100644 index 000000000..a5b7de1ec --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.BallOfSummoning.v2.json @@ -0,0 +1,35 @@ +{ + "version": 2, + "type": "Server.Items.BallOfSummoning", + "properties": [ + { + "name": "Recharges", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + }, + { + "name": "Charges", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + }, + { + "name": "Pet", + "type": "Server.Mobiles.BaseCreature", + "rule": "SerializableInterfaceMigrationRule" + }, + { + "name": "PetName", + "type": "string", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + } + ] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.BaseWaterContainer.v0.json b/Projects/UOContent/Migrations/Server.Items.BaseWaterContainer.v0.json new file mode 100644 index 000000000..e4867ced0 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.BaseWaterContainer.v0.json @@ -0,0 +1,14 @@ +{ + "version": 0, + "type": "Server.Items.BaseWaterContainer", + "properties": [ + { + "name": "Quantity", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + } + ] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.BraceletOfBinding.v2.json b/Projects/UOContent/Migrations/Server.Items.BraceletOfBinding.v2.json new file mode 100644 index 000000000..6c0af1a21 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.BraceletOfBinding.v2.json @@ -0,0 +1,35 @@ +{ + "version": 2, + "type": "Server.Items.BraceletOfBinding", + "properties": [ + { + "name": "Recharges", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + }, + { + "name": "Charges", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + }, + { + "name": "Inscription", + "type": "string", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [ + "" + ] + }, + { + "name": "Bound", + "type": "Server.Items.BraceletOfBinding", + "rule": "SerializableInterfaceMigrationRule" + } + ] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.BrokenChair.v0.json b/Projects/UOContent/Migrations/Server.Items.BrokenChair.v0.json new file mode 100644 index 000000000..97e4e363c --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.BrokenChair.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.BrokenChair" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Bucket.v0.json b/Projects/UOContent/Migrations/Server.Items.Bucket.v0.json new file mode 100644 index 000000000..4f40d0885 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Bucket.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Bucket" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Cards.v0.json b/Projects/UOContent/Migrations/Server.Items.Cards.v0.json new file mode 100644 index 000000000..8c69097b1 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Cards.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Cards" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Cards2.v0.json b/Projects/UOContent/Migrations/Server.Items.Cards2.v0.json new file mode 100644 index 000000000..92b1a6e89 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Cards2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Cards2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Cards3.v0.json b/Projects/UOContent/Migrations/Server.Items.Cards3.v0.json new file mode 100644 index 000000000..552c5aaee --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Cards3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Cards3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Cards4.v0.json b/Projects/UOContent/Migrations/Server.Items.Cards4.v0.json new file mode 100644 index 000000000..70ba4fcc6 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Cards4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Cards4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Checkers.v0.json b/Projects/UOContent/Migrations/Server.Items.Checkers.v0.json new file mode 100644 index 000000000..ad89cad1b --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Checkers.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Checkers" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Checkers2.v0.json b/Projects/UOContent/Migrations/Server.Items.Checkers2.v0.json new file mode 100644 index 000000000..869c758e4 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Checkers2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Checkers2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Chessmen.v0.json b/Projects/UOContent/Migrations/Server.Items.Chessmen.v0.json new file mode 100644 index 000000000..2e36dd68a --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Chessmen.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Chessmen" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Chessmen2.v0.json b/Projects/UOContent/Migrations/Server.Items.Chessmen2.v0.json new file mode 100644 index 000000000..0b6a7ccd4 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Chessmen2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Chessmen2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Chessmen3.v0.json b/Projects/UOContent/Migrations/Server.Items.Chessmen3.v0.json new file mode 100644 index 000000000..da1140d6a --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Chessmen3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Chessmen3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ClosedBarrel.v0.json b/Projects/UOContent/Migrations/Server.Items.ClosedBarrel.v0.json new file mode 100644 index 000000000..38d052267 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ClosedBarrel.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.ClosedBarrel" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.CrossbowBolts.v0.json b/Projects/UOContent/Migrations/Server.Items.CrossbowBolts.v0.json new file mode 100644 index 000000000..a6988421e --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.CrossbowBolts.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.CrossbowBolts" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoArrowShafts.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoArrowShafts.v0.json new file mode 100644 index 000000000..4b70ce8e5 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoArrowShafts.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoArrowShafts" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoBlackmoor.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoBlackmoor.v0.json new file mode 100644 index 000000000..fa6a36cf9 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoBlackmoor.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoBlackmoor" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoBloodspawn.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoBloodspawn.v0.json new file mode 100644 index 000000000..cfc9a6bb2 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoBloodspawn.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoBloodspawn" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoBottlesOfLiquor.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoBottlesOfLiquor.v0.json new file mode 100644 index 000000000..0f29b8478 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoBottlesOfLiquor.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoBottlesOfLiquor" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoBridle.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoBridle.v0.json new file mode 100644 index 000000000..68052132e --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoBridle.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoBridle" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoBridle2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoBridle2.v0.json new file mode 100644 index 000000000..dc9af519c --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoBridle2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoBridle2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoBrimstone.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoBrimstone.v0.json new file mode 100644 index 000000000..80f5590f4 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoBrimstone.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoBrimstone" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoCards5.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoCards5.v0.json new file mode 100644 index 000000000..1c7d35f3e --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoCards5.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoCards5" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoCrystalBall.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoCrystalBall.v0.json new file mode 100644 index 000000000..d552e9916 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoCrystalBall.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoCrystalBall" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoDeckOfTarot.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoDeckOfTarot.v0.json new file mode 100644 index 000000000..ac89f9bfd --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoDeckOfTarot.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoDeckOfTarot" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoDeckOfTarot2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoDeckOfTarot2.v0.json new file mode 100644 index 000000000..fe99be115 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoDeckOfTarot2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoDeckOfTarot2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoDragonsBlood.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoDragonsBlood.v0.json new file mode 100644 index 000000000..29f8f7948 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoDragonsBlood.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoDragonsBlood" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoDragonsBlood2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoDragonsBlood2.v0.json new file mode 100644 index 000000000..25dfe2b86 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoDragonsBlood2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoDragonsBlood2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoEyeOfNewt.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoEyeOfNewt.v0.json new file mode 100644 index 000000000..9f78661a5 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoEyeOfNewt.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoEyeOfNewt" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoFlower.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoFlower.v0.json new file mode 100644 index 000000000..50f7f6bc5 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoFlower.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoFlower" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoFlower2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoFlower2.v0.json new file mode 100644 index 000000000..eb820cb15 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoFlower2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoFlower2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoFullJar.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoFullJar.v0.json new file mode 100644 index 000000000..eeafdd8ec --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoFullJar.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoFullJar" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoFullJars3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoFullJars3.v0.json new file mode 100644 index 000000000..50863fff9 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoFullJars3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoFullJars3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoFullJars4.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoFullJars4.v0.json new file mode 100644 index 000000000..2ecfadde6 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoFullJars4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoFullJars4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGarlic.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGarlic.v0.json new file mode 100644 index 000000000..d827d0c17 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGarlic.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGarlic" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGarlic2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGarlic2.v0.json new file mode 100644 index 000000000..709705469 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGarlic2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGarlic2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGarlicBulb.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGarlicBulb.v0.json new file mode 100644 index 000000000..df29ece36 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGarlicBulb.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGarlicBulb" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGarlicBulb2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGarlicBulb2.v0.json new file mode 100644 index 000000000..c0da6984c --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGarlicBulb2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGarlicBulb2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGinseng.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGinseng.v0.json new file mode 100644 index 000000000..4fc8582ef --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGinseng.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGinseng" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGinseng2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGinseng2.v0.json new file mode 100644 index 000000000..ccacdff1d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGinseng2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGinseng2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGinsengRoot.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGinsengRoot.v0.json new file mode 100644 index 000000000..f29c555cd --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGinsengRoot.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGinsengRoot" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGinsengRoot2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGinsengRoot2.v0.json new file mode 100644 index 000000000..e8243b923 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGinsengRoot2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGinsengRoot2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGoldIngot.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngot.v0.json new file mode 100644 index 000000000..aabb59994 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngot.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGoldIngot" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGoldIngot2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngot2.v0.json new file mode 100644 index 000000000..372771d47 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngot2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGoldIngot2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots.v0.json new file mode 100644 index 000000000..bece09b4d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGoldIngots" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots2.v0.json new file mode 100644 index 000000000..c16e66b78 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGoldIngots2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots3.v0.json new file mode 100644 index 000000000..0bd870771 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGoldIngots3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots4.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots4.v0.json new file mode 100644 index 000000000..7cb655bf9 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoGoldIngots4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoGoldIngots4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoHay.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoHay.v0.json new file mode 100644 index 000000000..449ffe094 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoHay.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoHay" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoHay2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoHay2.v0.json new file mode 100644 index 000000000..267a6be95 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoHay2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoHay2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoHorseDung.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoHorseDung.v0.json new file mode 100644 index 000000000..53571fe4a --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoHorseDung.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoHorseDung" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngot.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngot.v0.json new file mode 100644 index 000000000..d52c338bf --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngot.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngot" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngot2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngot2.v0.json new file mode 100644 index 000000000..a4d478bb5 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngot2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngot2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngots.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots.v0.json new file mode 100644 index 000000000..45478dd68 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngots" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngots2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots2.v0.json new file mode 100644 index 000000000..f30111df5 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngots2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngots3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots3.v0.json new file mode 100644 index 000000000..362427903 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngots3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngots4.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots4.v0.json new file mode 100644 index 000000000..99d782bb0 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngots4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngots5.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots5.v0.json new file mode 100644 index 000000000..fc721a2fe --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots5.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngots5" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoIronIngots6.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots6.v0.json new file mode 100644 index 000000000..769c84ac8 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoIronIngots6.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoIronIngots6" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoMagicalCrystal.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoMagicalCrystal.v0.json new file mode 100644 index 000000000..339ed396c --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoMagicalCrystal.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoMagicalCrystal" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoMandrake.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoMandrake.v0.json new file mode 100644 index 000000000..b9786f0fd --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoMandrake.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoMandrake" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoMandrake2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoMandrake2.v0.json new file mode 100644 index 000000000..acf94e81d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoMandrake2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoMandrake2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoMandrake3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoMandrake3.v0.json new file mode 100644 index 000000000..621168d68 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoMandrake3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoMandrake3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoMandrakeRoot.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoMandrakeRoot.v0.json new file mode 100644 index 000000000..c79e696bc --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoMandrakeRoot.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoMandrakeRoot" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoMandrakeRoot2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoMandrakeRoot2.v0.json new file mode 100644 index 000000000..0fb5e83e1 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoMandrakeRoot2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoMandrakeRoot2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoNightshade.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoNightshade.v0.json new file mode 100644 index 000000000..83b0540c9 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoNightshade.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoNightshade" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoNightshade2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoNightshade2.v0.json new file mode 100644 index 000000000..19390c22a --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoNightshade2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoNightshade2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoNightshade3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoNightshade3.v0.json new file mode 100644 index 000000000..c47dbcc7a --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoNightshade3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoNightshade3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoObsidian.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoObsidian.v0.json new file mode 100644 index 000000000..52029a4f0 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoObsidian.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoObsidian" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoPumice.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoPumice.v0.json new file mode 100644 index 000000000..bf0664280 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoPumice.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoPumice" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoRock.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoRock.v0.json new file mode 100644 index 000000000..61e742a26 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoRock.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoRock" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoRock2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoRock2.v0.json new file mode 100644 index 000000000..113fa259d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoRock2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoRock2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoRocks.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoRocks.v0.json new file mode 100644 index 000000000..9bb8cb444 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoRocks.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoRocks" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoRocks2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoRocks2.v0.json new file mode 100644 index 000000000..81ac08242 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoRocks2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoRocks2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic.v0.json new file mode 100644 index 000000000..3a6d30021 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoRoseOfTrinsic" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic2.v0.json new file mode 100644 index 000000000..767adf564 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoRoseOfTrinsic2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic3.v0.json new file mode 100644 index 000000000..2336eb643 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoRoseOfTrinsic3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoRoseOfTrinsic3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSilverIngot.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngot.v0.json new file mode 100644 index 000000000..a01f17374 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngot.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSilverIngot" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSilverIngot2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngot2.v0.json new file mode 100644 index 000000000..31eedcd4b --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngot2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSilverIngot2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots.v0.json new file mode 100644 index 000000000..01c3c40a3 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSilverIngots" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots2.v0.json new file mode 100644 index 000000000..44cf50183 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSilverIngots2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots3.v0.json new file mode 100644 index 000000000..52295a137 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSilverIngots3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots4.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots4.v0.json new file mode 100644 index 000000000..4f3a86b68 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSilverIngots4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots5.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots5.v0.json new file mode 100644 index 000000000..3bbca4261 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSilverIngots5.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSilverIngots5" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoSpittoon.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoSpittoon.v0.json new file mode 100644 index 000000000..3328533ab --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoSpittoon.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoSpittoon" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTarot.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTarot.v0.json new file mode 100644 index 000000000..3cec8dc21 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTarot.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTarot" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTarot2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTarot2.v0.json new file mode 100644 index 000000000..82307eea1 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTarot2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTarot2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTarot3.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTarot3.v0.json new file mode 100644 index 000000000..14e5ed30f --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTarot3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTarot3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTarot4.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTarot4.v0.json new file mode 100644 index 000000000..9903e1391 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTarot4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTarot4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTarot5.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTarot5.v0.json new file mode 100644 index 000000000..c7568d39b --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTarot5.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTarot5" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTarot6.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTarot6.v0.json new file mode 100644 index 000000000..71c41eab2 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTarot6.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTarot6" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTarot7.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTarot7.v0.json new file mode 100644 index 000000000..77ba295f1 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTarot7.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTarot7" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTray.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTray.v0.json new file mode 100644 index 000000000..eff0e6f4c --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTray.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTray" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoTray2.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoTray2.v0.json new file mode 100644 index 000000000..26f3b6b16 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoTray2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoTray2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.DecoWyrmsHeart.v0.json b/Projects/UOContent/Migrations/Server.Items.DecoWyrmsHeart.v0.json new file mode 100644 index 000000000..842a48fa5 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.DecoWyrmsHeart.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.DecoWyrmsHeart" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.EmptyJar.v0.json b/Projects/UOContent/Migrations/Server.Items.EmptyJar.v0.json new file mode 100644 index 000000000..f41cf8c8d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.EmptyJar.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.EmptyJar" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.EmptyJars.v0.json b/Projects/UOContent/Migrations/Server.Items.EmptyJars.v0.json new file mode 100644 index 000000000..4f57a9429 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.EmptyJars.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.EmptyJars" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.EmptyJars2.v0.json b/Projects/UOContent/Migrations/Server.Items.EmptyJars2.v0.json new file mode 100644 index 000000000..4daabc77f --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.EmptyJars2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.EmptyJars2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.EmptyJars3.v0.json b/Projects/UOContent/Migrations/Server.Items.EmptyJars3.v0.json new file mode 100644 index 000000000..4ac2b611f --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.EmptyJars3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.EmptyJars3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.EmptyJars4.v0.json b/Projects/UOContent/Migrations/Server.Items.EmptyJars4.v0.json new file mode 100644 index 000000000..cfccabc22 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.EmptyJars4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.EmptyJars4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.EmptyToolKit.v0.json b/Projects/UOContent/Migrations/Server.Items.EmptyToolKit.v0.json new file mode 100644 index 000000000..45824e07c --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.EmptyToolKit.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.EmptyToolKit" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.EmptyToolKit2.v0.json b/Projects/UOContent/Migrations/Server.Items.EmptyToolKit2.v0.json new file mode 100644 index 000000000..ea15a34f7 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.EmptyToolKit2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.EmptyToolKit2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.HalfEmptyJar.v0.json b/Projects/UOContent/Migrations/Server.Items.HalfEmptyJar.v0.json new file mode 100644 index 000000000..b5d4ecf20 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.HalfEmptyJar.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.HalfEmptyJar" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.HalfEmptyJars.v0.json b/Projects/UOContent/Migrations/Server.Items.HalfEmptyJars.v0.json new file mode 100644 index 000000000..c28a58792 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.HalfEmptyJars.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.HalfEmptyJars" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Jars2.v0.json b/Projects/UOContent/Migrations/Server.Items.Jars2.v0.json new file mode 100644 index 000000000..65eb90f24 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Jars2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Jars2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Jars3.v0.json b/Projects/UOContent/Migrations/Server.Items.Jars3.v0.json new file mode 100644 index 000000000..9e15b6017 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Jars3.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Jars3" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Jars4.v0.json b/Projects/UOContent/Migrations/Server.Items.Jars4.v0.json new file mode 100644 index 000000000..f2ce63d5e --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Jars4.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Jars4" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Lockpicks.v0.json b/Projects/UOContent/Migrations/Server.Items.Lockpicks.v0.json new file mode 100644 index 000000000..a8aa29b5d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Lockpicks.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Lockpicks" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.PlayingCards.v0.json b/Projects/UOContent/Migrations/Server.Items.PlayingCards.v0.json new file mode 100644 index 000000000..82d9fd1a6 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.PlayingCards.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.PlayingCards" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.PlayingCards2.v0.json b/Projects/UOContent/Migrations/Server.Items.PlayingCards2.v0.json new file mode 100644 index 000000000..a366f96f2 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.PlayingCards2.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.PlayingCards2" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.PowderOfTranslocation.v0.json b/Projects/UOContent/Migrations/Server.Items.PowderOfTranslocation.v0.json new file mode 100644 index 000000000..9798395bf --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.PowderOfTranslocation.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.PowderOfTranslocation" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ToolKit.v0.json b/Projects/UOContent/Migrations/Server.Items.ToolKit.v0.json new file mode 100644 index 000000000..0e6e26d32 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ToolKit.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.ToolKit" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.Tub.v0.json b/Projects/UOContent/Migrations/Server.Items.Tub.v0.json new file mode 100644 index 000000000..fe07e72c4 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.Tub.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.Tub" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.UnfinishedBarrel.v0.json b/Projects/UOContent/Migrations/Server.Items.UnfinishedBarrel.v0.json new file mode 100644 index 000000000..dc3fd71dc --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.UnfinishedBarrel.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.UnfinishedBarrel" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.WaterBarrel.v0.json b/Projects/UOContent/Migrations/Server.Items.WaterBarrel.v0.json new file mode 100644 index 000000000..bc5f42b99 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.WaterBarrel.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.WaterBarrel" +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ZoogiFungus.v0.json b/Projects/UOContent/Migrations/Server.Items.ZoogiFungus.v0.json new file mode 100644 index 000000000..cd29e51a9 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ZoogiFungus.v0.json @@ -0,0 +1,4 @@ +{ + "version": 0, + "type": "Server.Items.ZoogiFungus" +} \ No newline at end of file diff --git a/Projects/UOContent/Misc/MessageHelper.cs b/Projects/UOContent/Misc/MessageHelper.cs new file mode 100644 index 000000000..82eabc37f --- /dev/null +++ b/Projects/UOContent/Misc/MessageHelper.cs @@ -0,0 +1,21 @@ +using Server.Network; + +namespace Server; + +public static class MessageHelper +{ + public static void SendLocalizedMessageTo(this Item from, Mobile to, int number, int hue) + { + SendLocalizedMessageTo(from, to, number, "", hue); + } + + public static void SendLocalizedMessageTo(this Item from, Mobile to, int number, string args, int hue) + { + to?.NetState.SendMessageLocalized(from.Serial, from.ItemID, MessageType.Regular, hue, 3, number, "", args); + } + + public static void SendMessageTo(this Item from, Mobile to, string text, int hue) + { + to?.NetState.SendMessage(from.Serial, from.ItemID, MessageType.Regular, hue, 3, false, "ENU", "", text); + } +}