fix: Code gens items. Fixes code genning of ore (#684)

### THIS IS A BREAKING CHANGE IF YOU ARE ALREADY USING CODEGEN. IF YOUR WORLD HAS ERRORS LOADING PLEASE CONTACT ME ON DISCORD. ORE MIGHT FAIL TO LOAD.
 
### Changes
* Fixes Components from addons not marking dirty
* Code gens BaseAddonContainer
* Code gens Ingots
* Fixes code gen deserialization for Ore
* Code gens dyetubs
* Code gens reagents
* Code gens tailor commodities
* Code gens fish
This commit is contained in:
Kamron Batman 2021-08-14 22:16:42 -07:00 • committed by GitHub
parent 2de4717390
commit 25fa9b397b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
163 changed files with 1128 additions and 2494 deletions

View file

@ -11,20 +11,24 @@ namespace Server.Items
bool Dye(Mobile from, DyeTub sender);
}
public class DyeTub : Item, ISecurable
[Serializable(2, false)]
public partial class DyeTub : Item, ISecurable
{
private int m_DyedHue;
private bool m_Redyable;
[SerializableField(0)]
[SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")]
private SecureLevel _level;
[SerializableField(1, isVirtual: true)]
[SerializableFieldAttr("[CommandProperty(AccessLevel.GameMaster)]")]
private bool _redyable;
private int _dyedHue;
[Constructible]
public DyeTub() : base(0xFAB)
{
Weight = 10.0;
m_Redyable = true;
}
public DyeTub(Serial serial) : base(serial)
{
_redyable = true;
}
public virtual CustomHuePicker CustomHuePicker => null;
@ -39,22 +43,16 @@ namespace Server.Items
public virtual bool AllowDyables => true;
[CommandProperty(AccessLevel.GameMaster)]
public virtual bool Redyable
{
get => m_Redyable;
set => m_Redyable = value;
}
[SerializableField(2)]
[CommandProperty(AccessLevel.GameMaster)]
public int DyedHue
{
get => m_DyedHue;
get => _dyedHue;
set
{
if (m_Redyable)
if (_redyable)
{
m_DyedHue = value;
_dyedHue = value;
Hue = value;
}
}
@ -69,26 +67,8 @@ namespace Server.Items
// You can not dye that.
public virtual int FailMessage => 1042083;
[CommandProperty(AccessLevel.GameMaster)]
public SecureLevel Level { get; set; }
public override void Serialize(IGenericWriter writer)
private void Deserialize(IGenericReader reader, int version)
{
base.Serialize(writer);
writer.Write(1); // version
writer.Write((int)Level);
writer.Write(m_Redyable);
writer.Write(m_DyedHue);
}
public override void Deserialize(IGenericReader reader)
{
base.Deserialize(reader);
var version = reader.ReadInt();
switch (version)
{
case 1:
@ -98,8 +78,8 @@ namespace Server.Items
}
case 0:
{
m_Redyable = reader.ReadBool();
m_DyedHue = reader.ReadInt();
_redyable = reader.ReadBool();
_dyedHue = reader.ReadInt();
break;
}