diff --git a/ARKBreedingStats/ARKBreedingStats.csproj b/ARKBreedingStats/ARKBreedingStats.csproj
index 16157fb2..8f0a2c67 100644
--- a/ARKBreedingStats/ARKBreedingStats.csproj
+++ b/ARKBreedingStats/ARKBreedingStats.csproj
@@ -826,7 +826,7 @@
PreserveNewest
-
+
ARKOverlay.cs
diff --git a/ARKBreedingStats/FileService.cs b/ARKBreedingStats/FileService.cs
index 638a9485..508ea7a2 100644
--- a/ARKBreedingStats/FileService.cs
+++ b/ARKBreedingStats/FileService.cs
@@ -25,6 +25,7 @@ public static class FileService
public const string DataFolderName = "data";
public const string OcrReplacingsFile = "ocrReplacings.txt";
public const string EqualColorIdsFile = "equalColorIds.json";
+ public const string HideVariantsInSpeciesNameFile = "hideVariantsInSpeciesName.txt";
///
/// Where the colored species images are cached.
diff --git a/ARKBreedingStats/Form1.Designer.cs b/ARKBreedingStats/Form1.Designer.cs
index bc660e25..53c94b9b 100644
--- a/ARKBreedingStats/Form1.Designer.cs
+++ b/ARKBreedingStats/Form1.Designer.cs
@@ -408,6 +408,7 @@ private void InitializeComponent()
this.columnHeaderCurrentLevel = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.columnHeaderMaxPossibleLevel = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.columnHeaderTraits = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.editVariantTagsToHideToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.groupBox1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDownImprintingBonusTester)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.NumericUpDownTestingTE)).BeginInit();
@@ -1311,6 +1312,7 @@ private void InitializeComponent()
this.toolStripSeparator23,
this.openJsonDataFolderToolStripMenuItem,
this.speciesSortingToolStripMenuItem,
+ this.editVariantTagsToHideToolStripMenuItem,
this.appSettingsToolStripMenuItem});
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
this.settingsToolStripMenuItem.Size = new System.Drawing.Size(61, 20);
@@ -3995,6 +3997,15 @@ private void InitializeComponent()
this.columnHeaderTraits.Text = "Traits";
this.columnHeaderTraits.Width = 60;
//
+ // editVariantTagsToHideToolStripMenuItem
+ //
+ this.editVariantTagsToHideToolStripMenuItem.Name = "editVariantTagsToHideToolStripMenuItem";
+ this.editVariantTagsToHideToolStripMenuItem.Size = new System.Drawing.Size(226, 22);
+ this.editVariantTagsToHideToolStripMenuItem.Text = "Edit variant tags to hide";
+ this.editVariantTagsToHideToolStripMenuItem.ToolTipText = "Add all variant tags that should be hidden in species names in this file, one var" +
+ "iant per line.";
+ this.editVariantTagsToHideToolStripMenuItem.Click += new System.EventHandler(this.editVariantTagsToHideToolStripMenuItem_Click);
+ //
// Form1
//
this.AcceptButton = this.btExtractLevels;
@@ -4479,5 +4490,6 @@ private void InitializeComponent()
private System.Windows.Forms.ColumnHeader columnHeaderCurrentLevel;
private System.Windows.Forms.ColumnHeader columnHeaderMaxPossibleLevel;
private System.Windows.Forms.ColumnHeader columnHeaderTraits;
+ private System.Windows.Forms.ToolStripMenuItem editVariantTagsToHideToolStripMenuItem;
}
}
diff --git a/ARKBreedingStats/Form1.cs b/ARKBreedingStats/Form1.cs
index f039fd3a..6f94ee2a 100644
--- a/ARKBreedingStats/Form1.cs
+++ b/ARKBreedingStats/Form1.cs
@@ -4025,5 +4025,16 @@ private void showStatsOptionsFileInExplorerToolStripMenuItem_Click(object sender
{
FileService.OpenFolderInExplorer(StatsOptionsLevelColors.SettingsFilePath);
}
+
+ private void editVariantTagsToHideToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ var filePath = FileService.GetJsonPath(FileService.HideVariantsInSpeciesNameFile);
+
+ if (!File.Exists(filePath))
+ File.WriteAllText(filePath, string.Empty);
+ if (File.Exists(filePath))
+ Process.Start(filePath);
+ else MessageBoxes.ShowMessageBox($"Couldn't create file {filePath} automatically. Maybe you can create that file manually.");
+ }
}
}
diff --git a/ARKBreedingStats/species/Species.cs b/ARKBreedingStats/species/Species.cs
index 071fb8a9..2cf0ed6a 100644
--- a/ARKBreedingStats/species/Species.cs
+++ b/ARKBreedingStats/species/Species.cs
@@ -6,6 +6,7 @@
using System.Text.RegularExpressions;
using ARKBreedingStats.Library;
using ARKBreedingStats.mods;
+using System.IO;
namespace ARKBreedingStats.species
{
@@ -170,6 +171,8 @@ public double[] StatImprintMultipliersRaw
[OnDeserialized]
private void Initialize(StreamingContext _) => Initialize();
+ private static string[] _ignoreVariantInName;
+
public void Initialize()
{
// TODO: Base species are maybe not used in game and may only lead to confusion (e.g. Giganotosaurus).
@@ -284,8 +287,10 @@ public void InitializeNames()
string variantInfoForName = null;
if (variants != null && variants.Any())
{
+ var ignoreVariants = _getIgnoreVariantInName();
VariantInfo = string.Join(", ", variants);
- variantInfoForName = string.Join(", ", string.IsNullOrEmpty(name) ? variants : variants.Where(v => !name.Contains(v)));
+ var gaun = variants.Any(v => ignoreVariants.Contains(v));
+ variantInfoForName = string.Join(", ", string.IsNullOrEmpty(name) ? variants : variants.Where(v => !name.Contains(v) && !ignoreVariants.Contains(v)));
}
DescriptiveName = name + (string.IsNullOrEmpty(variantInfoForName) ? string.Empty : " (" + variantInfoForName + ")");
@@ -532,5 +537,16 @@ public string Name(Sex creatureSex)
return name;
}
}
+
+ private static string[] _getIgnoreVariantInName()
+ {
+ if (_ignoreVariantInName != null) return _ignoreVariantInName;
+
+ var filePath = FileService.GetJsonPath(FileService.HideVariantsInSpeciesNameFile);
+ _ignoreVariantInName = !File.Exists(filePath) ? Array.Empty() : File.ReadAllLines(filePath).Where(l => !string.IsNullOrEmpty(l)).ToArray();
+ return _ignoreVariantInName;
+ }
+
+ public static void ClearIgnoreVariantsInName() => _ignoreVariantInName = null;
}
}
diff --git a/ARKBreedingStats/values/Values.cs b/ARKBreedingStats/values/Values.cs
index 999d7aff..80434525 100644
--- a/ARKBreedingStats/values/Values.cs
+++ b/ARKBreedingStats/values/Values.cs
@@ -177,6 +177,7 @@ private void InitializeSpeciesAndColors(bool undefinedColorAsa = false)
InitializeArkColors(undefinedColorAsa);
_speciesAndColorsInitialized = true;
+ Species.ClearIgnoreVariantsInName();
}
///