From 2de47173901cc68f46c97ab442af748aa6534748 Mon Sep 17 00:00:00 2001 From: Kamron Batman <3953314+kamronbatman@users.noreply.github.com> Date: Sat, 14 Aug 2021 16:53:18 -0700 Subject: [PATCH] fix(content): Adds addons to code gen (#624) * Codegens more addons. * Fixes up some source generation issues. --- ...rializationMethodSignatureMigrationRule.cs | 2 +- .../UOContent/Items/Addons/AbbatoirAddon.cs | 42 +---- .../UOContent/Items/Addons/AddonComponent.cs | 170 ++++-------------- .../Items/Addons/AddonContainerComponent.cs | 122 ++++--------- .../Items/Addons/AlchemistTableEastAddon.cs | 42 +---- .../Items/Addons/AlchemistTableSouthAddon.cs | 42 +---- .../UOContent/Items/Addons/AnvilEastAddon.cs | 42 +---- .../UOContent/Items/Addons/AnvilSouthAddon.cs | 42 +---- .../Items/Addons/ArcaneBookshelfEastAddon.cs | 42 +---- .../Items/Addons/ArcaneBookshelfSouthAddon.cs | 42 +---- .../Items/Addons/ArcaneCircleAddon.cs | 41 +---- .../Items/Addons/ArcanistStatueEastAddon.cs | 42 +---- .../Items/Addons/ArcanistStatueSouthAddon.cs | 42 +---- .../Items/Addons/ArcheryButteAddon.cs | 127 ++++--------- .../Server.Items.AbbatoirAddon.v0.json | 5 + .../Server.Items.AbbatoirDeed.v0.json | 5 + .../Server.Items.AddonComponent.v1.json | 20 +++ ...rver.Items.AddonContainerComponent.v0.json | 20 +++ ...rver.Items.AlchemistTableEastAddon.v0.json | 5 + ...erver.Items.AlchemistTableEastDeed.v0.json | 5 + ...ver.Items.AlchemistTableSouthAddon.v0.json | 5 + ...rver.Items.AlchemistTableSouthDeed.v0.json | 5 + .../Server.Items.AnvilComponent.v0.json | 5 + .../Server.Items.AnvilEastAddon.v0.json | 5 + .../Server.Items.AnvilEastDeed.v0.json | 5 + .../Server.Items.AnvilSouthAddon.v0.json | 5 + .../Server.Items.AnvilSouthDeed.v0.json | 5 + ...ver.Items.ArcaneBookshelfEastAddon.v0.json | 5 + ...rver.Items.ArcaneBookshelfEastDeed.v0.json | 5 + ...er.Items.ArcaneBookshelfSouthAddon.v0.json | 5 + ...ver.Items.ArcaneBookshelfSouthDeed.v0.json | 5 + .../Server.Items.ArcaneCircleAddon.v1.json | 5 + .../Server.Items.ArcaneCircleDeed.v0.json | 5 + ...rver.Items.ArcanistStatueEastAddon.v0.json | 5 + ...erver.Items.ArcanistStatueEastDeed.v0.json | 5 + ...ver.Items.ArcanistStatueSouthAddon.v0.json | 5 + ...rver.Items.ArcanistStatueSouthDeed.v0.json | 5 + .../Server.Items.ArcheryButte.v0.json | 30 ++++ .../Server.Items.ArcheryButteAddon.v0.json | 5 + .../Server.Items.ArcheryButteDeed.v0.json | 5 + .../Server.Items.ForgeComponent.v0.json | 5 + ...rver.Items.LocalizedAddonComponent.v0.json | 12 ++ 42 files changed, 345 insertions(+), 697 deletions(-) create mode 100644 Projects/UOContent/Migrations/Server.Items.AbbatoirAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AbbatoirDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AddonComponent.v1.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AddonContainerComponent.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AlchemistTableEastAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AlchemistTableEastDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AnvilComponent.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AnvilEastAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AnvilEastDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AnvilSouthAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.AnvilSouthDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcaneCircleAddon.v1.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcaneCircleDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcheryButte.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcheryButteAddon.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ArcheryButteDeed.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.ForgeComponent.v0.json create mode 100644 Projects/UOContent/Migrations/Server.Items.LocalizedAddonComponent.v0.json diff --git a/Projects/SerializationGenerator/SerializableMigration/Rules/SerializationMethodSignatureMigrationRule.cs b/Projects/SerializationGenerator/SerializableMigration/Rules/SerializationMethodSignatureMigrationRule.cs index 91e92baed..e8b1c4525 100644 --- a/Projects/SerializationGenerator/SerializableMigration/Rules/SerializationMethodSignatureMigrationRule.cs +++ b/Projects/SerializationGenerator/SerializableMigration/Rules/SerializationMethodSignatureMigrationRule.cs @@ -47,7 +47,7 @@ namespace SerializableMigration return false; } - ruleArguments = requiresParent ? new[] { "DeserializationRequiresParent" } : Array.Empty(); + ruleArguments = new[] { requiresParent ? "DeserializationRequiresParent" : "" }; return true; } diff --git a/Projects/UOContent/Items/Addons/AbbatoirAddon.cs b/Projects/UOContent/Items/Addons/AbbatoirAddon.cs index 112de07db..19db8af81 100644 --- a/Projects/UOContent/Items/Addons/AbbatoirAddon.cs +++ b/Projects/UOContent/Items/Addons/AbbatoirAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class AbbatoirAddon : BaseAddon + [Serializable(0, false)] + public partial class AbbatoirAddon : BaseAddon { [Constructible] public AbbatoirAddon() @@ -16,53 +17,18 @@ namespace Server.Items AddComponent(new AddonComponent(0x1212), 1, 1, 0); } - public AbbatoirAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new AbbatoirDeed(); - - 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 class AbbatoirDeed : BaseAddonDeed + [Serializable(0, false)] + public partial class AbbatoirDeed : BaseAddonDeed { [Constructible] public AbbatoirDeed() { } - public AbbatoirDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new AbbatoirAddon(); public override int LabelNumber => 1044329; // abbatoir - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/AddonComponent.cs b/Projects/UOContent/Items/Addons/AddonComponent.cs index 42815cd2c..c63154870 100644 --- a/Projects/UOContent/Items/Addons/AddonComponent.cs +++ b/Projects/UOContent/Items/Addons/AddonComponent.cs @@ -3,110 +3,41 @@ using Server.Engines.Craft; namespace Server.Items { [Anvil] - public class AnvilComponent : AddonComponent + [Serializable(0, false)] + public partial class AnvilComponent : AddonComponent { [Constructible] public AnvilComponent(int itemID) : base(itemID) { } - - public AnvilComponent(Serial serial) : base(serial) - { - } - - 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(); - } } [Forge] - public class ForgeComponent : AddonComponent + [Serializable(0, false)] + public partial class ForgeComponent : AddonComponent { [Constructible] public ForgeComponent(int itemID) : base(itemID) { } - - public ForgeComponent(Serial serial) : base(serial) - { - } - - 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 class LocalizedAddonComponent : AddonComponent + [Serializable(0, false)] + public partial class LocalizedAddonComponent : AddonComponent { - private int m_LabelNumber; + [InvalidateProperties] + [SerializableField(0)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + private int _number; [Constructible] - public LocalizedAddonComponent(int itemID, int labelNumber) : base(itemID) => m_LabelNumber = labelNumber; + public LocalizedAddonComponent(int itemID, int labelNumber) : base(itemID) => _number = labelNumber; - public LocalizedAddonComponent(Serial serial) : base(serial) - { - } - - [CommandProperty(AccessLevel.GameMaster)] - public int Number - { - get => m_LabelNumber; - set - { - m_LabelNumber = value; - InvalidateProperties(); - } - } - - public override int LabelNumber => m_LabelNumber; - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); // version - - writer.Write(m_LabelNumber); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - - switch (version) - { - case 0: - { - m_LabelNumber = reader.ReadInt(); - break; - } - } - } + public override int LabelNumber => _number; } - public class AddonComponent : Item, IChoppable + [Serializable(1, false)] + public partial class AddonComponent : Item, IChoppable { private static readonly LightEntry[] m_Entries = { @@ -171,15 +102,13 @@ namespace Server.Items ApplyLightTo(this); } - public AddonComponent(Serial serial) : base(serial) - { - } + [SerializableField(0)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + public BaseAddon _addon; - [CommandProperty(AccessLevel.GameMaster)] - public BaseAddon Addon { get; set; } - - [CommandProperty(AccessLevel.GameMaster)] - public Point3D Offset { get; set; } + [SerializableField(1)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + public Point3D _offset; [Hue, CommandProperty(AccessLevel.GameMaster)] public override int Hue @@ -189,9 +118,9 @@ namespace Server.Items { base.Hue = value; - if (Addon?.ShareHue == true) + if (_addon?.ShareHue == true) { - Addon.Hue = value; + _addon.Hue = value; } } } @@ -201,9 +130,9 @@ namespace Server.Items public void OnChop(Mobile from) { - if (Addon != null && from.InRange(GetWorldLocation(), 3)) + if (_addon != null && from.InRange(GetWorldLocation(), 3)) { - Addon.OnChop(from); + _addon.OnChop(from); } else { @@ -213,22 +142,22 @@ namespace Server.Items public override void OnDoubleClick(Mobile from) { - Addon?.OnComponentUsed(this, from); + _addon?.OnComponentUsed(this, from); } public override void OnLocationChange(Point3D old) { - if (Addon != null) + if (_addon != null) { - Addon.Location = new Point3D(X - Offset.X, Y - Offset.Y, Z - Offset.Z); + _addon.Location = new Point3D(X - _offset.X, Y - _offset.Y, Z - _offset.Z); } } public override void OnMapChange() { - if (Addon != null) + if (_addon != null) { - Addon.Map = Map; + _addon.Map = Map; } } @@ -236,47 +165,24 @@ namespace Server.Items { base.OnAfterDelete(); - Addon?.Delete(); + _addon?.Delete(); } - public override void Serialize(IGenericWriter writer) + private void Deserialize(IGenericReader reader, int version) { - base.Serialize(writer); - - writer.Write(1); // version - - writer.Write(Addon); - writer.Write(Offset); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - - switch (version) - { - case 1: - case 0: - { - Addon = reader.ReadEntity(); - Offset = reader.ReadPoint3D(); - - Addon?.OnComponentLoaded(this); - - ApplyLightTo(this); - - break; - } - } - if (version < 1 && Weight == 0) { Weight = -1; } } + [AfterDeserialization] + private void AfterDeserialization() + { + _addon?.OnComponentLoaded(this); + ApplyLightTo(this); + } + public static void ApplyLightTo(Item item) { if ((item.ItemData.Flags & TileFlag.LightSource) == 0) diff --git a/Projects/UOContent/Items/Addons/AddonContainerComponent.cs b/Projects/UOContent/Items/Addons/AddonContainerComponent.cs index 35a829cd4..5b690e8ff 100644 --- a/Projects/UOContent/Items/Addons/AddonContainerComponent.cs +++ b/Projects/UOContent/Items/Addons/AddonContainerComponent.cs @@ -3,7 +3,8 @@ using Server.ContextMenus; namespace Server.Items { - public class AddonContainerComponent : Item, IChoppable + [Serializable(0, false)] + public partial class AddonContainerComponent : Item, IChoppable { [Constructible] public AddonContainerComponent(int itemID) : base(itemID) @@ -13,18 +14,16 @@ namespace Server.Items AddonComponent.ApplyLightTo(this); } - public AddonContainerComponent(Serial serial) : base(serial) - { - } - public virtual bool NeedsWall => false; public virtual Point3D WallPosition => Point3D.Zero; - [CommandProperty(AccessLevel.GameMaster)] - public BaseAddonContainer Addon { get; set; } + [SerializableField(0)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + public BaseAddonContainer _addon; - [CommandProperty(AccessLevel.GameMaster)] - public Point3D Offset { get; set; } + [SerializableField(1)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + public Point3D _offset; [Hue, CommandProperty(AccessLevel.GameMaster)] public override int Hue @@ -34,18 +33,18 @@ namespace Server.Items { base.Hue = value; - if (Addon?.ShareHue == true) + if (_addon?.ShareHue == true) { - Addon.Hue = value; + _addon.Hue = value; } } } public virtual void OnChop(Mobile from) { - if (Addon != null && from.InRange(GetWorldLocation(), 3)) + if (_addon != null && from.InRange(GetWorldLocation(), 3)) { - Addon.OnChop(from); + _addon.OnChop(from); } else { @@ -53,39 +52,26 @@ namespace Server.Items } } - public override bool OnDragDrop(Mobile from, Item dropped) - { - if (Addon != null) - { - return Addon.OnDragDrop(from, dropped); - } + public override bool OnDragDrop(Mobile from, Item dropped) => _addon?.OnDragDrop(from, dropped) == true; - return false; - } - - public override void OnDoubleClick(Mobile from) - { - Addon?.OnComponentUsed(this, from); - } + public override void OnDoubleClick(Mobile from) => _addon?.OnComponentUsed(this, @from); public override void OnLocationChange(Point3D old) { - if (Addon != null) + if (_addon != null) { - Addon.Location = new Point3D(X - Offset.X, Y - Offset.Y, Z - Offset.Z); + _addon.Location = new Point3D(X - _offset.X, Y - _offset.Y, Z - _offset.Z); } } - public override void GetContextMenuEntries(Mobile from, List list) - { - Addon?.GetContextMenuEntries(from, list); - } + public override void GetContextMenuEntries(Mobile from, List list) => + _addon?.GetContextMenuEntries(from, list); public override void OnMapChange() { - if (Addon != null) + if (_addon != null) { - Addon.Map = Map; + _addon.Map = Map; } } @@ -93,73 +79,25 @@ namespace Server.Items { base.OnAfterDelete(); - Addon?.Delete(); + _addon?.Delete(); } - public override void Serialize(IGenericWriter writer) + [AfterDeserialization] + private void AfterDeserialization() { - base.Serialize(writer); - - writer.Write(0); // version - - writer.Write(Addon); - writer.Write(Offset); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - - Addon = reader.ReadEntity(); - Offset = reader.ReadPoint3D(); - - Addon?.OnComponentLoaded(this); - + _addon?.OnComponentLoaded(this); AddonComponent.ApplyLightTo(this); } } - public class LocalizedContainerComponent : AddonContainerComponent + [Serializable(0, false)] + public partial class LocalizedContainerComponent : AddonContainerComponent { - private int m_LabelNumber; + [SerializableField(0, setter: "private")] + private int _number; - public LocalizedContainerComponent(int itemID, int labelNumber) : base(itemID) => m_LabelNumber = labelNumber; + public LocalizedContainerComponent(int itemID, int labelNumber) : base(itemID) => _number = labelNumber; - public LocalizedContainerComponent(Serial serial) : base(serial) - { - } - - public override int LabelNumber - { - get - { - if (m_LabelNumber > 0) - { - return m_LabelNumber; - } - - return base.LabelNumber; - } - } - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.Write(0); // version - - writer.Write(m_LabelNumber); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - - m_LabelNumber = reader.ReadInt(); - } + public override int LabelNumber => _number > 0 ? _number : base.LabelNumber; } } diff --git a/Projects/UOContent/Items/Addons/AlchemistTableEastAddon.cs b/Projects/UOContent/Items/Addons/AlchemistTableEastAddon.cs index bd82f4dd9..a530b0d33 100644 --- a/Projects/UOContent/Items/Addons/AlchemistTableEastAddon.cs +++ b/Projects/UOContent/Items/Addons/AlchemistTableEastAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class AlchemistTableEastAddon : BaseAddon + [Serializable(0)] + public partial class AlchemistTableEastAddon : BaseAddon { [Constructible] public AlchemistTableEastAddon() @@ -8,53 +9,18 @@ namespace Server.Items AddComponent(new AddonComponent(0x2DD3), 0, 0, 0); } - public AlchemistTableEastAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new AlchemistTableEastDeed(); - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.WriteEncodedInt(1); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadEncodedInt(); - } } - public class AlchemistTableEastDeed : BaseAddonDeed + [Serializable(0)] + public partial class AlchemistTableEastDeed : BaseAddonDeed { [Constructible] public AlchemistTableEastDeed() { } - public AlchemistTableEastDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new AlchemistTableEastAddon(); public override int LabelNumber => 1073397; // alchemist table (east) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/AlchemistTableSouthAddon.cs b/Projects/UOContent/Items/Addons/AlchemistTableSouthAddon.cs index 97555c4df..8dabc4335 100644 --- a/Projects/UOContent/Items/Addons/AlchemistTableSouthAddon.cs +++ b/Projects/UOContent/Items/Addons/AlchemistTableSouthAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class AlchemistTableSouthAddon : BaseAddon + [Serializable(0)] + public partial class AlchemistTableSouthAddon : BaseAddon { [Constructible] public AlchemistTableSouthAddon() @@ -8,53 +9,18 @@ namespace Server.Items AddComponent(new AddonComponent(0x2DD4), 0, 0, 0); } - public AlchemistTableSouthAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new AlchemistTableSouthDeed(); - - public override void Serialize(IGenericWriter writer) - { - base.Serialize(writer); - - writer.WriteEncodedInt(1); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadEncodedInt(); - } } - public class AlchemistTableSouthDeed : BaseAddonDeed + [Serializable(0)] + public partial class AlchemistTableSouthDeed : BaseAddonDeed { [Constructible] public AlchemistTableSouthDeed() { } - public AlchemistTableSouthDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new AlchemistTableSouthAddon(); public override int LabelNumber => 1073396; // alchemist table (south) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/AnvilEastAddon.cs b/Projects/UOContent/Items/Addons/AnvilEastAddon.cs index 4b353372c..22d9cd232 100644 --- a/Projects/UOContent/Items/Addons/AnvilEastAddon.cs +++ b/Projects/UOContent/Items/Addons/AnvilEastAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class AnvilEastAddon : BaseAddon + [Serializable(0, false)] + public partial class AnvilEastAddon : BaseAddon { [Constructible] public AnvilEastAddon() @@ -8,53 +9,18 @@ namespace Server.Items AddComponent(new AnvilComponent(0xFAF), 0, 0, 0); } - public AnvilEastAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new AnvilEastDeed(); - - 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 class AnvilEastDeed : BaseAddonDeed + [Serializable(0, false)] + public partial class AnvilEastDeed : BaseAddonDeed { [Constructible] public AnvilEastDeed() { } - public AnvilEastDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new AnvilEastAddon(); public override int LabelNumber => 1044333; // anvil (east) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/AnvilSouthAddon.cs b/Projects/UOContent/Items/Addons/AnvilSouthAddon.cs index e86502598..fd5383a7c 100644 --- a/Projects/UOContent/Items/Addons/AnvilSouthAddon.cs +++ b/Projects/UOContent/Items/Addons/AnvilSouthAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class AnvilSouthAddon : BaseAddon + [Serializable(0, false)] + public partial class AnvilSouthAddon : BaseAddon { [Constructible] public AnvilSouthAddon() @@ -8,53 +9,18 @@ namespace Server.Items AddComponent(new AnvilComponent(0xFB0), 0, 0, 0); } - public AnvilSouthAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new AnvilSouthDeed(); - - 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 class AnvilSouthDeed : BaseAddonDeed + [Serializable(0, false)] + public partial class AnvilSouthDeed : BaseAddonDeed { [Constructible] public AnvilSouthDeed() { } - public AnvilSouthDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new AnvilSouthAddon(); public override int LabelNumber => 1044334; // anvil (south) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/ArcaneBookshelfEastAddon.cs b/Projects/UOContent/Items/Addons/ArcaneBookshelfEastAddon.cs index 6be961e9b..02e1c448b 100644 --- a/Projects/UOContent/Items/Addons/ArcaneBookshelfEastAddon.cs +++ b/Projects/UOContent/Items/Addons/ArcaneBookshelfEastAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class ArcaneBookshelfEastAddon : BaseAddon + [Serializable(0)] + public partial class ArcaneBookshelfEastAddon : BaseAddon { [Constructible] public ArcaneBookshelfEastAddon() @@ -9,53 +10,18 @@ namespace Server.Items AddComponent(new AddonComponent(0x3085), -1, 0, 0); } - public ArcaneBookshelfEastAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new ArcaneBookshelfEastDeed(); - - 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(); - } } - public class ArcaneBookshelfEastDeed : BaseAddonDeed + [Serializable(0)] + public partial class ArcaneBookshelfEastDeed : BaseAddonDeed { [Constructible] public ArcaneBookshelfEastDeed() { } - public ArcaneBookshelfEastDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new ArcaneBookshelfEastAddon(); public override int LabelNumber => 1073371; // arcane bookshelf (east) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/ArcaneBookshelfSouthAddon.cs b/Projects/UOContent/Items/Addons/ArcaneBookshelfSouthAddon.cs index e9476e83e..744a23c58 100644 --- a/Projects/UOContent/Items/Addons/ArcaneBookshelfSouthAddon.cs +++ b/Projects/UOContent/Items/Addons/ArcaneBookshelfSouthAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class ArcaneBookshelfSouthAddon : BaseAddon + [Serializable(0)] + public partial class ArcaneBookshelfSouthAddon : BaseAddon { [Constructible] public ArcaneBookshelfSouthAddon() @@ -9,53 +10,18 @@ namespace Server.Items AddComponent(new AddonComponent(0x3086), 0, 1, 0); } - public ArcaneBookshelfSouthAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new ArcaneBookshelfSouthDeed(); - - 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(); - } } - public class ArcaneBookshelfSouthDeed : BaseAddonDeed + [Serializable(0)] + public partial class ArcaneBookshelfSouthDeed : BaseAddonDeed { [Constructible] public ArcaneBookshelfSouthDeed() { } - public ArcaneBookshelfSouthDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new ArcaneBookshelfSouthAddon(); public override int LabelNumber => 1072871; // arcane bookshelf (south) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/ArcaneCircleAddon.cs b/Projects/UOContent/Items/Addons/ArcaneCircleAddon.cs index 50e7f2d50..dd5b27f0b 100644 --- a/Projects/UOContent/Items/Addons/ArcaneCircleAddon.cs +++ b/Projects/UOContent/Items/Addons/ArcaneCircleAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class ArcaneCircleAddon : BaseAddon + [Serializable(1)] + public partial class ArcaneCircleAddon : BaseAddon { [Constructible] public ArcaneCircleAddon() @@ -16,25 +17,10 @@ namespace Server.Items AddComponent(new AddonComponent(0x307B), 1, 1, 0); } - public ArcaneCircleAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new ArcaneCircleDeed(); - public override void Serialize(IGenericWriter writer) + private void Deserialize(IGenericReader reader, int version) { - base.Serialize(writer); - - writer.WriteEncodedInt(1); // version - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadEncodedInt(); - if (version == 0) { ValidationQueue.Add(this); @@ -54,32 +40,15 @@ namespace Server.Items } } - public class ArcaneCircleDeed : BaseAddonDeed + [Serializable(0)] + public partial class ArcaneCircleDeed : BaseAddonDeed { [Constructible] public ArcaneCircleDeed() { } - public ArcaneCircleDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new ArcaneCircleAddon(); public override int LabelNumber => 1072703; // arcane circle - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/ArcanistStatueEastAddon.cs b/Projects/UOContent/Items/Addons/ArcanistStatueEastAddon.cs index d341f75e2..a41083159 100644 --- a/Projects/UOContent/Items/Addons/ArcanistStatueEastAddon.cs +++ b/Projects/UOContent/Items/Addons/ArcanistStatueEastAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class ArcanistStatueEastAddon : BaseAddon + [Serializable(0)] + public partial class ArcanistStatueEastAddon : BaseAddon { [Constructible] public ArcanistStatueEastAddon() @@ -8,53 +9,18 @@ namespace Server.Items AddComponent(new AddonComponent(0x2D0E), 0, 0, 0); } - public ArcanistStatueEastAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new ArcanistStatueEastDeed(); - - 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(); - } } - public class ArcanistStatueEastDeed : BaseAddonDeed + [Serializable(0)] + public partial class ArcanistStatueEastDeed : BaseAddonDeed { [Constructible] public ArcanistStatueEastDeed() { } - public ArcanistStatueEastDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new ArcanistStatueEastAddon(); public override int LabelNumber => 1072886; // arcanist statue (east) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/ArcanistStatueSouthAddon.cs b/Projects/UOContent/Items/Addons/ArcanistStatueSouthAddon.cs index 3c1f0f931..27e19a4e2 100644 --- a/Projects/UOContent/Items/Addons/ArcanistStatueSouthAddon.cs +++ b/Projects/UOContent/Items/Addons/ArcanistStatueSouthAddon.cs @@ -1,6 +1,7 @@ namespace Server.Items { - public class ArcanistStatueSouthAddon : BaseAddon + [Serializable(0)] + public partial class ArcanistStatueSouthAddon : BaseAddon { [Constructible] public ArcanistStatueSouthAddon() @@ -8,53 +9,18 @@ namespace Server.Items AddComponent(new AddonComponent(0x2D0F), 0, 0, 0); } - public ArcanistStatueSouthAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new ArcanistStatueSouthDeed(); - - 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(); - } } - public class ArcanistStatueSouthDeed : BaseAddonDeed + [Serializable(0)] + public partial class ArcanistStatueSouthDeed : BaseAddonDeed { [Constructible] public ArcanistStatueSouthDeed() { } - public ArcanistStatueSouthDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new ArcanistStatueSouthAddon(); public override int LabelNumber => 1072885; // arcanist statue (south) - - 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(); - } } } diff --git a/Projects/UOContent/Items/Addons/ArcheryButteAddon.cs b/Projects/UOContent/Items/Addons/ArcheryButteAddon.cs index 6b7ed8d41..a57d33ee3 100644 --- a/Projects/UOContent/Items/Addons/ArcheryButteAddon.cs +++ b/Projects/UOContent/Items/Addons/ArcheryButteAddon.cs @@ -4,8 +4,9 @@ using Server.Network; namespace Server.Items { + [Serializable(0, false)] [FlippableAttribute(0x100A /*East*/, 0x100B /*South*/)] - public class ArcheryButte : AddonComponent + public partial class ArcheryButte : AddonComponent { private static readonly TimeSpan UseDelay = TimeSpan.FromSeconds(2.0); @@ -14,19 +15,17 @@ namespace Server.Items [Constructible] public ArcheryButte(int itemID = 0x100A) : base(itemID) { - MinSkill = -25.0; - MaxSkill = +25.0; + _minSkill = -25.0; + _maxSkill = +25.0; } - public ArcheryButte(Serial serial) : base(serial) - { - } + [SerializableField(0)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + private double _minSkill; - [CommandProperty(AccessLevel.GameMaster)] - public double MinSkill { get; set; } - - [CommandProperty(AccessLevel.GameMaster)] - public double MaxSkill { get; set; } + [SerializableField(1)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + private double _maxSkill; [CommandProperty(AccessLevel.GameMaster)] public DateTime LastUse { get; set; } @@ -38,15 +37,17 @@ namespace Server.Items set => ItemID = value ? 0x100A : 0x100B; } - [CommandProperty(AccessLevel.GameMaster)] - public int Arrows { get; set; } + [SerializableField(2)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + private int _arrows; - [CommandProperty(AccessLevel.GameMaster)] - public int Bolts { get; set; } + [SerializableField(3)] + [SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")] + private int _bolts; public override void OnDoubleClick(Mobile from) { - if ((Arrows > 0 || Bolts > 0) && from.InRange(GetWorldLocation(), 1)) + if ((_arrows > 0 || _bolts > 0) && from.InRange(GetWorldLocation(), 1)) { Gather(from); } @@ -60,14 +61,14 @@ namespace Server.Items { from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 500592); // You gather the arrows and bolts. - if (Arrows > 0) + if (_arrows > 0) { - from.AddToBackpack(new Arrow(Arrows)); + from.AddToBackpack(new Arrow(_arrows)); } - if (Bolts > 0) + if (_bolts > 0) { - from.AddToBackpack(new Bolt(Bolts)); + from.AddToBackpack(new Bolt(_bolts)); } Arrows = 0; @@ -90,7 +91,7 @@ namespace Server.Items public void Fire(Mobile from) { - if (!(from.Weapon is BaseRanged bow)) + if (@from.Weapon is not BaseRanged bow) { SendLocalizedMessageTo(from, 500593); // You must practice with ranged weapons on this. return; @@ -180,7 +181,7 @@ namespace Server.Items var se = GetEntryFor(from); - if (!from.CheckSkill(bow.Skill, MinSkill, MaxSkill)) + if (!from.CheckSkill(bow.Skill, _minSkill, _maxSkill)) { from.PlaySound(bow.MissSound); @@ -231,7 +232,7 @@ namespace Server.Items splitScore = 5; } - var split = isKnown && (Arrows + Bolts) * 0.02 > Utility.RandomDouble(); + var split = isKnown && (_arrows + _bolts) * 0.02 > Utility.RandomDouble(); if (split) { @@ -268,41 +269,13 @@ namespace Server.Items } } - public override void Serialize(IGenericWriter writer) + [AfterDeserialization] + private void AfterDeserialization() { - base.Serialize(writer); - - writer.Write(0); - - writer.Write(MinSkill); - writer.Write(MaxSkill); - writer.Write(Arrows); - writer.Write(Bolts); - } - - public override void Deserialize(IGenericReader reader) - { - base.Deserialize(reader); - - var version = reader.ReadInt(); - - switch (version) + if (_minSkill == 0.0 && _maxSkill == 30.0) { - case 0: - { - MinSkill = reader.ReadDouble(); - MaxSkill = reader.ReadDouble(); - Arrows = reader.ReadInt(); - Bolts = reader.ReadInt(); - - if (MinSkill == 0.0 && MaxSkill == 30.0) - { - MinSkill = -25.0; - MaxSkill = +25.0; - } - - break; - } + _minSkill = -25.0; + _maxSkill = +25.0; } } @@ -320,7 +293,8 @@ namespace Server.Items } } - public class ArcheryButteAddon : BaseAddon + [Serializable(0, false)] + public partial class ArcheryButteAddon : BaseAddon { [Constructible] public ArcheryButteAddon() @@ -328,53 +302,18 @@ namespace Server.Items AddComponent(new ArcheryButte(), 0, 0, 0); } - public ArcheryButteAddon(Serial serial) : base(serial) - { - } - public override BaseAddonDeed Deed => new ArcheryButteDeed(); - - 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 class ArcheryButteDeed : BaseAddonDeed + [Serializable(0, false)] + public partial class ArcheryButteDeed : BaseAddonDeed { [Constructible] public ArcheryButteDeed() { } - public ArcheryButteDeed(Serial serial) : base(serial) - { - } - public override BaseAddon Addon => new ArcheryButteAddon(); public override int LabelNumber => 1024106; // archery butte - - 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(); - } } } diff --git a/Projects/UOContent/Migrations/Server.Items.AbbatoirAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.AbbatoirAddon.v0.json new file mode 100644 index 000000000..1bf85bf45 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AbbatoirAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AbbatoirAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AbbatoirDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.AbbatoirDeed.v0.json new file mode 100644 index 000000000..f361004e4 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AbbatoirDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AbbatoirDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AddonComponent.v1.json b/Projects/UOContent/Migrations/Server.Items.AddonComponent.v1.json new file mode 100644 index 000000000..eb925fbab --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AddonComponent.v1.json @@ -0,0 +1,20 @@ +{ + "version": 1, + "type": "Server.Items.AddonComponent", + "properties": [ + { + "name": "Addon", + "type": "Server.Items.BaseAddon", + "rule": "SerializableInterfaceMigrationRule", + "ruleArguments": [] + }, + { + "name": "Offset", + "type": "Server.Point3D", + "rule": "PrimitiveUOTypeMigrationRule", + "ruleArguments": [ + "Point3D" + ] + } + ] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AddonContainerComponent.v0.json b/Projects/UOContent/Migrations/Server.Items.AddonContainerComponent.v0.json new file mode 100644 index 000000000..2fda06acd --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AddonContainerComponent.v0.json @@ -0,0 +1,20 @@ +{ + "version": 0, + "type": "Server.Items.AddonContainerComponent", + "properties": [ + { + "name": "Addon", + "type": "Server.Items.BaseAddonContainer", + "rule": "SerializableInterfaceMigrationRule", + "ruleArguments": [] + }, + { + "name": "Offset", + "type": "Server.Point3D", + "rule": "PrimitiveUOTypeMigrationRule", + "ruleArguments": [ + "Point3D" + ] + } + ] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AlchemistTableEastAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.AlchemistTableEastAddon.v0.json new file mode 100644 index 000000000..e4e752349 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AlchemistTableEastAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AlchemistTableEastAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AlchemistTableEastDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.AlchemistTableEastDeed.v0.json new file mode 100644 index 000000000..e6b22c0df --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AlchemistTableEastDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AlchemistTableEastDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthAddon.v0.json new file mode 100644 index 000000000..b83ae51f7 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AlchemistTableSouthAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthDeed.v0.json new file mode 100644 index 000000000..4fdebb10d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AlchemistTableSouthDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AlchemistTableSouthDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AnvilComponent.v0.json b/Projects/UOContent/Migrations/Server.Items.AnvilComponent.v0.json new file mode 100644 index 000000000..c9e78c0c4 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AnvilComponent.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AnvilComponent", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AnvilEastAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.AnvilEastAddon.v0.json new file mode 100644 index 000000000..cbf83c795 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AnvilEastAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AnvilEastAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AnvilEastDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.AnvilEastDeed.v0.json new file mode 100644 index 000000000..51084e375 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AnvilEastDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AnvilEastDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AnvilSouthAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.AnvilSouthAddon.v0.json new file mode 100644 index 000000000..b53f6baee --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AnvilSouthAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AnvilSouthAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.AnvilSouthDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.AnvilSouthDeed.v0.json new file mode 100644 index 000000000..32f6a0536 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.AnvilSouthDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.AnvilSouthDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastAddon.v0.json new file mode 100644 index 000000000..7e28daaa0 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcaneBookshelfEastAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastDeed.v0.json new file mode 100644 index 000000000..1ce53de35 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfEastDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcaneBookshelfEastDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthAddon.v0.json new file mode 100644 index 000000000..e945bf95f --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcaneBookshelfSouthAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthDeed.v0.json new file mode 100644 index 000000000..9f5013138 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcaneBookshelfSouthDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcaneBookshelfSouthDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcaneCircleAddon.v1.json b/Projects/UOContent/Migrations/Server.Items.ArcaneCircleAddon.v1.json new file mode 100644 index 000000000..431ce2cc8 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcaneCircleAddon.v1.json @@ -0,0 +1,5 @@ +{ + "version": 1, + "type": "Server.Items.ArcaneCircleAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcaneCircleDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcaneCircleDeed.v0.json new file mode 100644 index 000000000..94010bd19 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcaneCircleDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcaneCircleDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastAddon.v0.json new file mode 100644 index 000000000..955e78c76 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcanistStatueEastAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastDeed.v0.json new file mode 100644 index 000000000..d4dc1ec43 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueEastDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcanistStatueEastDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthAddon.v0.json new file mode 100644 index 000000000..d0ce5fed1 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcanistStatueSouthAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthDeed.v0.json new file mode 100644 index 000000000..42df1f59d --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcanistStatueSouthDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcanistStatueSouthDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcheryButte.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcheryButte.v0.json new file mode 100644 index 000000000..d0ae1f30c --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcheryButte.v0.json @@ -0,0 +1,30 @@ +{ + "version": 0, + "type": "Server.Items.ArcheryButte", + "properties": [ + { + "name": "MinSkill", + "type": "double", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [] + }, + { + "name": "MaxSkill", + "type": "double", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [] + }, + { + "name": "Arrows", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [] + }, + { + "name": "Bolts", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [] + } + ] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcheryButteAddon.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcheryButteAddon.v0.json new file mode 100644 index 000000000..aca985834 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcheryButteAddon.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcheryButteAddon", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ArcheryButteDeed.v0.json b/Projects/UOContent/Migrations/Server.Items.ArcheryButteDeed.v0.json new file mode 100644 index 000000000..27c7f9a97 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ArcheryButteDeed.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ArcheryButteDeed", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.ForgeComponent.v0.json b/Projects/UOContent/Migrations/Server.Items.ForgeComponent.v0.json new file mode 100644 index 000000000..2194acdd1 --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.ForgeComponent.v0.json @@ -0,0 +1,5 @@ +{ + "version": 0, + "type": "Server.Items.ForgeComponent", + "properties": [] +} \ No newline at end of file diff --git a/Projects/UOContent/Migrations/Server.Items.LocalizedAddonComponent.v0.json b/Projects/UOContent/Migrations/Server.Items.LocalizedAddonComponent.v0.json new file mode 100644 index 000000000..700f767aa --- /dev/null +++ b/Projects/UOContent/Migrations/Server.Items.LocalizedAddonComponent.v0.json @@ -0,0 +1,12 @@ +{ + "version": 0, + "type": "Server.Items.LocalizedAddonComponent", + "properties": [ + { + "name": "Number", + "type": "int", + "rule": "PrimitiveTypeMigrationRule", + "ruleArguments": [] + } + ] +} \ No newline at end of file