fix: Optimizes OPL using string interpolation (#1041)
## Breaking Changes (New API)
ObjectPropertyList supports the following API:
```cs
list.Add(500000);
list.Add(500001, stringArgument);
list.Add("Some text");
list.Add($"Some text with {argument}");
list.Add(500002, $"{arg1}\t{arg2}");
```
## Notes
1. All API uses that require a formatter like this:
```cs
list.Add(500002, "{0}\t{1}", arg1, arg2);
```
Should be changed to use string interpolation, for example:
```cs
list.Add(500002, $"{arg1}\t{arg2}");
```
2. The following paradigm should no longer be used:
```cs
list.Add(1061170, prop.ToString()); // strength requirement ~1_val~
```
The new string interpolation API will avoid having to convert the argument to a string before writing it to the packet. Instead use the following:
```cs
list.Add(1061170, $"{prop}"); // strength requirement ~1_val~
```
### Benchmarks
```cs
| Method | Mean | Error | StdDev | Gen 0 | Allocated |
|------------------------------- |---------:|--------:|--------:|-------:|----------:|
| BenchmarkOldOPL | 241.0 ns | 0.56 ns | 0.47 ns | 0.0105 | 88 B |
| BenchmarkStringInterpolatedOPL | 199.9 ns | 2.44 ns | 2.39 ns | - | - |
```
### Changes
- [X] Removes crash in STArray.Return when array is null.
- [X] Fixes NPE in OPL when entity is null. Serial in packet will be 0 when entity is null.
- [X] Fixes NPE in AosAttributes when Parent is null.
- [X] Changes OPL to use string interpolation.
- [X] Introduces `IPropertyList` to allow extending PropertyList for other uses.
This commit is contained in:
parent
fe31470f05
commit
ecbee17690
227 changed files with 1426 additions and 1008 deletions
|
|
@ -141,7 +141,7 @@ namespace Server.Items
|
|||
box.Tracks.AddRange(Tracks);
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -169,17 +169,17 @@ namespace Server.Items
|
|||
|
||||
if (commonSongs > 0)
|
||||
{
|
||||
list.Add(1075234, commonSongs.ToString()); // ~1_NUMBER~ Common Tracks
|
||||
list.Add(1075234, $"{commonSongs}"); // ~1_NUMBER~ Common Tracks
|
||||
}
|
||||
|
||||
if (uncommonSongs > 0)
|
||||
{
|
||||
list.Add(1075235, uncommonSongs.ToString()); // ~1_NUMBER~ Uncommon Tracks
|
||||
list.Add(1075235, $"{uncommonSongs}"); // ~1_NUMBER~ Uncommon Tracks
|
||||
}
|
||||
|
||||
if (rareSongs > 0)
|
||||
{
|
||||
list.Add(1075236, rareSongs.ToString()); // ~1_NUMBER~ Rare Tracks
|
||||
list.Add(1075236, $"{rareSongs}"); // ~1_NUMBER~ Rare Tracks
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ namespace Server.Items
|
|||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public MusicName Music { get; set; }
|
||||
|
||||
public override void AddNameProperty(ObjectPropertyList list)
|
||||
public override void AddNameProperty(IPropertyList list)
|
||||
{
|
||||
var info = DawnsMusicBox.GetInfo(Music);
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ namespace Server.Items
|
|||
|
||||
public override bool Dye(Mobile from, DyeTub sender) => false;
|
||||
|
||||
public override void AddNameProperties(ObjectPropertyList list)
|
||||
public override void AddNameProperties(IPropertyList list)
|
||||
{
|
||||
base.AddNameProperties(list);
|
||||
|
||||
|
|
@ -121,11 +121,11 @@ namespace Server.Items
|
|||
return false;
|
||||
}
|
||||
|
||||
public override void AddNameProperties(ObjectPropertyList list)
|
||||
public override void AddNameProperties(IPropertyList list)
|
||||
{
|
||||
base.AddNameProperties(list);
|
||||
|
||||
list.Add(1075217, m_Charges.ToString()); // ~1_val~ charges remaining
|
||||
list.Add(1075217, $"{m_Charges}"); // ~1_val~ charges remaining
|
||||
}
|
||||
|
||||
public override void OnDelete()
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ namespace Server.Items
|
|||
|
||||
public virtual TalismanForm Form => TalismanForm.Squirrel;
|
||||
|
||||
public override void AddNameProperty(ObjectPropertyList list)
|
||||
public override void AddNameProperty(IPropertyList list)
|
||||
{
|
||||
list.Add(1075200, $"#{(int)Form}");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -73,13 +73,13 @@ namespace Server.Items
|
|||
m_SkillMod = null;
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
if (m_Bonus != 0)
|
||||
{
|
||||
list.Add(1060451, "#1042354\t{0}", m_Bonus.ToString()); // ~1_skillname~ +~2_val~
|
||||
list.Add(1060451, $"#1042354\t{m_Bonus}"); // ~1_skillname~ +~2_val~
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -196,13 +196,13 @@ namespace Server.Items
|
|||
m_SkillMod = null;
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
if (m_Bonus != 0)
|
||||
{
|
||||
list.Add(1062005, m_Bonus.ToString()); // mining bonus +~1_val~
|
||||
list.Add(1062005, $"{m_Bonus}"); // mining bonus +~1_val~
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -62,11 +62,11 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(1060584, m_UsesRemaining.ToString()); // uses remaining: ~1_val~
|
||||
list.Add(1060584, $"{m_UsesRemaining}"); // uses remaining: ~1_val~
|
||||
}
|
||||
|
||||
public virtual void DisplayDurabilityTo(Mobile m)
|
||||
|
|
|
|||
|
|
@ -65,11 +65,11 @@ namespace Server.Items
|
|||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public SecureLevel Level { get; set; }
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(1062925, Petals.ToString()); // Petals: ~1_COUNT~
|
||||
list.Add(1062925, $"{Petals}"); // Petals: ~1_COUNT~
|
||||
}
|
||||
|
||||
public override void GetContextMenuEntries(Mobile from, List<ContextMenuEntry> list)
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ namespace Server.Items
|
|||
|
||||
public static string GetRandomTitle() => titles.RandomElement();
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -85,19 +85,18 @@ namespace Server.Items
|
|||
|
||||
public bool ValidLocation() => m_PlotLocation != Point3D.Zero && m_Facet != null && m_Facet != Map.Internal;
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
if (ValidLocation())
|
||||
{
|
||||
list.Add(
|
||||
1060658,
|
||||
"location\t{0}",
|
||||
HouseRaffleStone.FormatLocation(m_PlotLocation, m_Facet, false)
|
||||
); // ~1_val~: ~2_val~
|
||||
list.Add(1060659, "facet\t{0}", m_Facet); // ~1_val~: ~2_val~
|
||||
list.Add(1150486); // [Marked Item]
|
||||
1060658, // ~1_val~: ~2_val~
|
||||
$"location\t{HouseRaffleStone.FormatLocation(m_PlotLocation, m_Facet, false)}"
|
||||
);
|
||||
list.Add(1060659, $"facet\t{m_Facet}"); // ~1_val~: ~2_val~
|
||||
list.Add(1150486); // [Marked Item]
|
||||
}
|
||||
|
||||
if (IsExpired)
|
||||
|
|
|
|||
|
|
@ -398,7 +398,7 @@ namespace Server.Items
|
|||
|
||||
public string FormatPrice() => m_TicketPrice == 0 ? "FREE" : $"{m_TicketPrice} gold";
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -411,13 +411,13 @@ namespace Server.Items
|
|||
{
|
||||
case HouseRaffleState.Active:
|
||||
{
|
||||
list.Add(1060658, "ticket price\t{0}", FormatPrice()); // ~1_val~: ~2_val~
|
||||
list.Add(1060659, "ends\t{0}", m_Started + m_Duration); // ~1_val~: ~2_val~
|
||||
list.Add(1060658, $"ticket price\t{FormatPrice()}"); // ~1_val~: ~2_val~
|
||||
list.Add(1060659, $"ends\t{m_Started + m_Duration}"); // ~1_val~: ~2_val~
|
||||
break;
|
||||
}
|
||||
case HouseRaffleState.Completed:
|
||||
{
|
||||
list.Add(1060658, "winner\t{0}", m_Winner == null ? "unknown" : m_Winner.Name); // ~1_val~: ~2_val~
|
||||
list.Add(1060658, $"winner\t{m_Winner?.Name ?? "Unknown"}"); // ~1_val~: ~2_val~
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -438,9 +438,9 @@ namespace Server.Items
|
|||
{
|
||||
LabelTo(
|
||||
from,
|
||||
1060658,
|
||||
$"Winner\t{(m_Winner == null ? "Unknown" : m_Winner.Name)}"
|
||||
); // ~1_val~: ~2_val~
|
||||
1060658, // ~1_val~: ~2_val~
|
||||
$"Winner\t{m_Winner?.Name ?? "Unknown"}"
|
||||
);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -115,7 +115,7 @@ namespace Server.Items
|
|||
public override BaseAddon Addon => new MiniHouseAddon(m_Type);
|
||||
public override int LabelNumber => 1062096; // a mini house deed
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -227,7 +227,7 @@ namespace Server.Items
|
|||
base.OnMovement(m, oldLocation);
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
if (IsEmpty)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -102,11 +102,11 @@ namespace Server.Items
|
|||
};
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(1060741, m_Charges.ToString()); // charges: ~1_val~
|
||||
list.Add(1060741, $"{m_Charges}"); // charges: ~1_val~
|
||||
}
|
||||
|
||||
public override void OnSingleClick(Mobile from)
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ namespace Server.Items
|
|||
|
||||
public string TranslocationItemName => "crystal ball of pet summoning";
|
||||
|
||||
public override void AddNameProperty(ObjectPropertyList list)
|
||||
public override void AddNameProperty(IPropertyList list)
|
||||
{
|
||||
list.Add(
|
||||
1054131,
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ namespace Server.Items
|
|||
|
||||
public string TranslocationItemName => "bracelet of binding";
|
||||
|
||||
public override void AddNameProperty(ObjectPropertyList list)
|
||||
public override void AddNameProperty(IPropertyList list)
|
||||
{
|
||||
list.Add(
|
||||
1054000,
|
||||
|
|
|
|||
|
|
@ -121,21 +121,19 @@ namespace Server.Items
|
|||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public SecureLevel Level { get; set; }
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
if (!IsEmpty)
|
||||
{
|
||||
list.Add(
|
||||
1070721,
|
||||
"#{0}\t{1:F1}",
|
||||
AosSkillBonuses.GetLabel(Skill),
|
||||
SkillValue
|
||||
); // Skill stored: ~1_skillname~ ~2_skillamount~
|
||||
1070721, // Skill stored: ~1_skillname~ ~2_skillamount~
|
||||
$"#{AosSkillBonuses.GetLabel(Skill)}\t{SkillValue:F1}"
|
||||
);
|
||||
}
|
||||
|
||||
list.Add(1041602, "{0}", LastUserName ?? $"#{1074235}"); // Owner: ~1_val~
|
||||
list.Add(1041602, LastUserName ?? $"#{1074235}"); // Owner: ~1_val~
|
||||
}
|
||||
|
||||
private static bool CheckCombat(Mobile m, TimeSpan time)
|
||||
|
|
@ -966,11 +964,11 @@ namespace Server.Items
|
|||
set { }
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(1060584, m_UsesRemaining.ToString()); // uses remaining: ~1_val~
|
||||
list.Add(1060584, $"{m_UsesRemaining}"); // uses remaining: ~1_val~
|
||||
}
|
||||
|
||||
public override void Serialize(IGenericWriter writer)
|
||||
|
|
@ -1094,7 +1092,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -160,7 +160,7 @@ namespace Server.Items
|
|||
return new PowerScroll(skillName, 100 + Utility.RandomMinMax(min, max) * 5);
|
||||
}
|
||||
|
||||
public override void AddNameProperty(ObjectPropertyList list)
|
||||
public override void AddNameProperty(IPropertyList list)
|
||||
{
|
||||
var level = (Value - 105.0) / 5.0;
|
||||
|
||||
|
|
@ -175,7 +175,7 @@ namespace Server.Items
|
|||
}
|
||||
else
|
||||
{
|
||||
list.Add("a power scroll of {0} ({1} Skill)", GetName(), Value);
|
||||
list.Add($"a power scroll of {GetName()} ({Value} Skill)");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -189,7 +189,7 @@ namespace Server.Items
|
|||
}
|
||||
else
|
||||
{
|
||||
LabelTo(from, "a power scroll of {0} ({1} Skill)", GetName(), Value);
|
||||
LabelTo(from, $"a power scroll of {GetName()} ({Value} Skill)");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,11 +29,11 @@ namespace Server.Items
|
|||
|
||||
public override string DefaultTitle => "<basefont color=#FFFFFF>Scroll of Alacrity:</basefont>";
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(1071345, "{0} 15 Minutes", GetName()); // Skill: ~1_val~
|
||||
list.Add(1071345, $"{GetName()} 15 Minutes"); // Skill: ~1_val~
|
||||
}
|
||||
|
||||
public override bool CanUse(Mobile from)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ namespace Server.Items
|
|||
public static ScrollofTranscendence CreateRandom(int min, int max) =>
|
||||
new(Utility.RandomSkill(), Utility.RandomMinMax(min, max) * 0.1);
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
list.Add(1076759, $"{GetName()}\t{Value:0.#} Skill Points");
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ namespace Server.Items
|
|||
public override string DefaultTitle =>
|
||||
$"<basefont color=#FFFFFF>Power Scroll ({((int)Value - 225 >= 0 ? "+" : "")}{(int)Value - 225} Maximum Stats):</basefont>";
|
||||
|
||||
public override void AddNameProperty(ObjectPropertyList list)
|
||||
public override void AddNameProperty(IPropertyList list)
|
||||
{
|
||||
var level = ((int)Value - 230) / 5;
|
||||
|
||||
|
|
@ -59,7 +59,8 @@ namespace Server.Items
|
|||
}
|
||||
else
|
||||
{
|
||||
list.Add("a scroll of power ({0}{1} Maximum Stats)", Value - 225 >= 0 ? "+" : "", Value - 225);
|
||||
var diff = Value - 225;
|
||||
list.Add($"a scroll of power ({(diff >= 0 ? "+" : "")}{diff} Maximum Stats)");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -73,7 +74,8 @@ namespace Server.Items
|
|||
}
|
||||
else
|
||||
{
|
||||
LabelTo(from, "a scroll of power ({0}{1} Maximum Stats)", Value - 225 >= 0 ? "+" : "", Value - 225);
|
||||
var diff = Value - 225;
|
||||
LabelTo(from, $"a scroll of power ({(diff >= 0 ? "+" : "")}{diff} Maximum Stats)");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ namespace Server.Items
|
|||
*
|
||||
*/
|
||||
|
||||
public override void AddNameProperty(ObjectPropertyList list)
|
||||
public override void AddNameProperty(IPropertyList list)
|
||||
{
|
||||
list.Add(m_LabelNumber, $"{m_To ?? Unsigned}\t{m_From ?? Unsigned}");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -338,7 +338,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -155,7 +155,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -168,7 +168,7 @@ namespace Server.Items
|
|||
base.OnDoubleClick(from);
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ namespace Server.Items
|
|||
m_Fire?.MoveToWorld(new Point3D(X, Y, Z + ItemData.Height), Map);
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -184,7 +184,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ namespace Server.Items
|
|||
|
||||
public override int LabelNumber => 1076157; // Decorative Cannon
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -27,7 +27,7 @@ namespace Server.Items
|
|||
list.Add(1076223); // 7th Year Veteran Reward
|
||||
}
|
||||
|
||||
list.Add(1076207, addon.Charges.ToString()); // Remaining Charges: ~1_val~
|
||||
list.Add(1076207, $"{addon.Charges}"); // Remaining Charges: ~1_val~
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -462,7 +462,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -471,7 +471,7 @@ namespace Server.Items
|
|||
list.Add(1076223); // 7th Year Veteran Reward
|
||||
}
|
||||
|
||||
list.Add(1076207, m_Charges.ToString()); // Remaining Charges: ~1_val~
|
||||
list.Add(1076207, $"{m_Charges}"); // Remaining Charges: ~1_val~
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ namespace Server.Items
|
|||
base.OnDoubleClick(from);
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -140,7 +140,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -154,7 +154,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -154,7 +154,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -359,7 +359,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -160,7 +160,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ namespace Server.Items
|
|||
|
||||
public override bool ForceShowProperties => ObjectPropertyList.Enabled;
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -90,7 +90,7 @@ namespace Server.Items
|
|||
from.SendLocalizedMessage(500489); // You can't use an axe on that.
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -202,7 +202,7 @@ namespace Server.Items
|
|||
base.OnDoubleClick(m);
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -250,7 +250,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -302,7 +302,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
public override void GetProperties(IPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
|
|
@ -110,7 +110,7 @@ namespace Server.Items
|
|||
|
||||
if (ShowUsesRemaining)
|
||||
{
|
||||
list.Add(1060584, m_UsesRemaining.ToString()); // uses remaining: ~1_val~
|
||||
list.Add(1060584, $"{m_UsesRemaining}"); // uses remaining: ~1_val~
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue