Use DictionaryBase for removal

This commit is contained in:
Matt Nadareski
2024-03-05 01:42:42 -05:00
parent 8f594f09a6
commit 539e4367e0
48 changed files with 1044 additions and 813 deletions

View File

@@ -3,6 +3,7 @@ using System.Linq;
using System.Xml.Serialization;
using Newtonsoft.Json;
using SabreTools.Core;
using SabreTools.Filter;
namespace SabreTools.DatItems.Formats
{
@@ -115,5 +116,26 @@ namespace SabreTools.DatItems.Formats
}
#endregion
#region Manipulation
/// <inheritdoc/>
public override bool RemoveField(DatItemField datItemField)
{
// Get the correct internal field name
string? fieldName = datItemField switch
{
DatItemField.Coins => Models.Metadata.Input.CoinsKey,
DatItemField.Players => Models.Metadata.Input.PlayersKey,
DatItemField.Service => Models.Metadata.Input.ServiceKey,
DatItemField.Tilt => Models.Metadata.Input.TiltKey,
_ => null,
};
// Remove the field and return
return FieldManipulator.RemoveField(_internal, fieldName);
}
#endregion
}
}