feat: Updates to Serialization Generator v2.2 (#1157)
* Adds `SerializationProperty` - This will generate the private variable for serialization. Also provides an option `useField` to specify your own. Example: ```cs [SerializationProperty(0, useField: nameof(_resource)] ```
This commit is contained in:
parent
d82028a071
commit
89815ad4d3
50 changed files with 242 additions and 361 deletions
|
|
@ -21,11 +21,6 @@ namespace Server;
|
|||
[SerializationGenerator(0)]
|
||||
public abstract partial class SkillMod : MobileMod
|
||||
{
|
||||
private bool _obeyCap;
|
||||
private bool _relative;
|
||||
private SkillName _skill;
|
||||
private double _value;
|
||||
|
||||
public SkillMod(Mobile owner) : base(owner)
|
||||
{
|
||||
}
|
||||
|
|
@ -37,7 +32,7 @@ public abstract partial class SkillMod : MobileMod
|
|||
_value = value;
|
||||
}
|
||||
|
||||
[SerializableField(0)]
|
||||
[SerializableProperty(0)]
|
||||
public bool ObeyCap
|
||||
{
|
||||
get => _obeyCap;
|
||||
|
|
@ -51,7 +46,7 @@ public abstract partial class SkillMod : MobileMod
|
|||
}
|
||||
}
|
||||
|
||||
[SerializableField(1)]
|
||||
[SerializableProperty(1)]
|
||||
public SkillName Skill
|
||||
{
|
||||
get => _skill;
|
||||
|
|
@ -71,7 +66,7 @@ public abstract partial class SkillMod : MobileMod
|
|||
}
|
||||
}
|
||||
|
||||
[SerializableField(2)]
|
||||
[SerializableProperty(2)]
|
||||
public bool Relative
|
||||
{
|
||||
get => _relative;
|
||||
|
|
@ -88,24 +83,13 @@ public abstract partial class SkillMod : MobileMod
|
|||
}
|
||||
}
|
||||
|
||||
[SerializableField(3)]
|
||||
public bool Absolute
|
||||
{
|
||||
get => !_relative;
|
||||
set
|
||||
{
|
||||
if (_relative == value)
|
||||
{
|
||||
_relative = !value;
|
||||
|
||||
var sk = Owner?.Skills[_skill];
|
||||
sk?.Update();
|
||||
MarkDirty();
|
||||
}
|
||||
}
|
||||
get => !Relative;
|
||||
set => Relative = !value;
|
||||
}
|
||||
|
||||
[SerializableField(4)]
|
||||
[SerializableProperty(3)]
|
||||
public double Value
|
||||
{
|
||||
get => _value;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue