ModernUO/Projects/UOContent/Engines/Factions/Items/BaseSystemController.cs

44 lines
989 B
C#

using ModernUO.Serialization;
namespace Server.Factions;
[SerializationGenerator(1, false)]
public abstract partial class BaseSystemController : Item
{
private int _labelNumber;
public BaseSystemController(int itemID) : base(itemID)
{
}
public virtual int DefaultLabelNumber => 0;
[SerializableProperty(0, useField: nameof(_labelNumber))]
public override int LabelNumber => _labelNumber > 0 ? _labelNumber : DefaultLabelNumber;
public virtual void AssignName(TextDefinition name)
{
if (name?.Number > 0)
{
_labelNumber = name.Number;
Name = null;
}
else if (name?.String != null)
{
_labelNumber = 0;
Name = name.String;
}
else
{
_labelNumber = 0;
Name = null;
}
InvalidateProperties();
}
private void Deserialize(IGenericReader reader, int version)
{
// Do nothing
}
}