mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Add header-level No-Intro ID support
This commit is contained in:
@@ -485,6 +485,7 @@ namespace SabreTools.Core
|
||||
|
||||
#region Logiqx
|
||||
|
||||
NoIntroID,
|
||||
Build,
|
||||
RomMode,
|
||||
BiosMode,
|
||||
|
||||
@@ -199,6 +199,11 @@ namespace SabreTools.Core.Tools
|
||||
|
||||
#region Logiqx
|
||||
|
||||
case "id":
|
||||
case "nointroid":
|
||||
case "no_intro_id":
|
||||
return DatHeaderField.NoIntroID;
|
||||
|
||||
case "build":
|
||||
return DatHeaderField.Build;
|
||||
|
||||
|
||||
@@ -181,6 +181,13 @@ namespace SabreTools.DatFiles
|
||||
|
||||
#region Logiqx
|
||||
|
||||
/// <summary>
|
||||
/// No-Intro system ID
|
||||
/// </summary>
|
||||
[JsonProperty("nointroid", DefaultValueHandling = DefaultValueHandling.Include)]
|
||||
[XmlElement("nointroid")]
|
||||
public string NoIntroID { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Build version
|
||||
/// </summary>
|
||||
@@ -475,6 +482,9 @@ namespace SabreTools.DatFiles
|
||||
|
||||
#region Logiqx
|
||||
|
||||
if (mappings.Keys.Contains(DatHeaderField.NoIntroID))
|
||||
NoIntroID = mappings[DatHeaderField.NoIntroID];
|
||||
|
||||
if (mappings.Keys.Contains(DatHeaderField.Build))
|
||||
Build = mappings[DatHeaderField.Build];
|
||||
|
||||
@@ -555,6 +565,27 @@ namespace SabreTools.DatFiles
|
||||
ForcePacking = this.ForcePacking,
|
||||
DatFormat = this.DatFormat,
|
||||
|
||||
Debug = this.Debug,
|
||||
MameConfig = this.MameConfig,
|
||||
|
||||
NoIntroID = this.NoIntroID,
|
||||
Build = this.Build,
|
||||
System = this.System,
|
||||
RomMode = this.RomMode,
|
||||
BiosMode = this.BiosMode,
|
||||
SampleMode = this.SampleMode,
|
||||
LockRomMode = this.LockRomMode,
|
||||
LockBiosMode = this.LockBiosMode,
|
||||
LockSampleMode = this.LockSampleMode,
|
||||
|
||||
ScreenshotsWidth = this.ScreenshotsWidth,
|
||||
ScreenshotsHeight = this.ScreenshotsHeight,
|
||||
Infos = this.Infos, // TODO: Perform a deep clone
|
||||
CanOpen = this.CanOpen, // TODO: Perform a deep clone
|
||||
RomTitle = this.RomTitle,
|
||||
|
||||
RomCenterVersion = this.RomCenterVersion,
|
||||
|
||||
UseRomName = this.UseRomName,
|
||||
Prefix = this.Prefix,
|
||||
Postfix = this.Postfix,
|
||||
|
||||
@@ -315,6 +315,11 @@ namespace SabreTools.DatFiles.Formats
|
||||
string content;
|
||||
switch (reader.Name)
|
||||
{
|
||||
case "id":
|
||||
content = reader.ReadElementContentAsString();
|
||||
Header.NoIntroID ??= content;
|
||||
break;
|
||||
|
||||
case "name":
|
||||
content = reader.ReadElementContentAsString();
|
||||
Header.Name ??= content;
|
||||
|
||||
@@ -170,6 +170,9 @@ namespace SabreTools.DatFiles
|
||||
|
||||
#region Logiqx
|
||||
|
||||
if (DatHeaderMappings.Keys.Contains(DatHeaderField.NoIntroID))
|
||||
datHeader.NoIntroID = DatHeaderMappings[DatHeaderField.NoIntroID];
|
||||
|
||||
if (DatHeaderMappings.Keys.Contains(DatHeaderField.Build))
|
||||
datHeader.Build = DatHeaderMappings[DatHeaderField.Build];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user