From cb4f9c57a28c51277f45dd36ea824d9aa3c3998e Mon Sep 17 00:00:00 2001 From: Nick Date: Sat, 27 Apr 2024 19:35:16 -0400 Subject: [PATCH 1/4] Probably fix turkish breaking --- NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs b/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs index b1aba93e..b732eede 100644 --- a/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs +++ b/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Globalization; using System.Linq; using NewHorizons.Components.Orbital; using NewHorizons.Handlers; @@ -33,7 +34,7 @@ namespace NewHorizons.Utility.OuterWilds } // Else check stock names - var stringID = name.ToUpper().Replace(" ", "_").Replace("'", ""); + var stringID = name.ToUpper(CultureInfo.InvariantCulture).Replace(" ", "_").Replace("'", ""); if (stringID.Equals("ATTLEROCK")) stringID = "TIMBER_MOON"; if (stringID.Equals("HOLLOWS_LANTERN")) stringID = "VOLCANIC_MOON"; if (stringID.Equals("ASH_TWIN")) stringID = "TOWER_TWIN"; @@ -42,7 +43,7 @@ namespace NewHorizons.Utility.OuterWilds if (stringID.Equals("EYE") || stringID.Equals("EYEOFTHEUNIVERSE")) stringID = "EYE_OF_THE_UNIVERSE"; string key; - if (stringID.ToUpper().Replace("_", "").Equals("MAPSATELLITE")) + if (stringID.ToUpper(CultureInfo.InvariantCulture).Replace("_", "").Equals("MAPSATELLITE")) { key = AstroObject.Name.MapSatellite.ToString(); } From ea47da32e7628b2a06065c9edcba5239aaa2d281 Mon Sep 17 00:00:00 2001 From: Nick Date: Sat, 27 Apr 2024 19:59:09 -0400 Subject: [PATCH 2/4] Always use Upper/Lower Invariant to avoid issues with other languages --- NewHorizons/Builder/StarSystem/SkyboxBuilder.cs | 2 +- NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs | 2 +- NewHorizons/Handlers/PlanetGraphHandler.cs | 10 +++++----- NewHorizons/Handlers/TranslationHandler.cs | 2 +- NewHorizons/Main.cs | 2 +- .../Patches/SignalPatches/AudioSignalPatches.cs | 4 ++-- NewHorizons/Utility/DebugTools/DebugReload.cs | 2 +- NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs | 2 +- NewHorizons/Utility/NewHorizonExtensions.cs | 4 ++-- NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs | 4 ++-- 10 files changed, 17 insertions(+), 17 deletions(-) diff --git a/NewHorizons/Builder/StarSystem/SkyboxBuilder.cs b/NewHorizons/Builder/StarSystem/SkyboxBuilder.cs index 368ec65d..5d4b8548 100644 --- a/NewHorizons/Builder/StarSystem/SkyboxBuilder.cs +++ b/NewHorizons/Builder/StarSystem/SkyboxBuilder.cs @@ -51,7 +51,7 @@ namespace NewHorizons.Builder.StarSystem { if (!tex) { - NHLogger.LogError($"Failed to load texture for skybox {name.ToLower()} face"); + NHLogger.LogError($"Failed to load texture for skybox {name.ToLowerInvariant()} face"); return null; } diff --git a/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs b/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs index a1d466eb..a2d8b215 100644 --- a/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs +++ b/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs @@ -282,7 +282,7 @@ namespace NewHorizons.Components.ShipLog var name = UniqueIDToName(shipLogEntryCard.name); - var warpNotificationDataText = TranslationHandler.GetTranslation("WARP_LOCKED", TranslationHandler.TextType.UI).Replace("{0}", name.ToUpper()); + var warpNotificationDataText = TranslationHandler.GetTranslation("WARP_LOCKED", TranslationHandler.TextType.UI).Replace("{0}", name.ToUpperInvariant()); _warpNotificationData = new NotificationData(warpNotificationDataText); NotificationManager.SharedInstance.PostNotification(_warpNotificationData, true); diff --git a/NewHorizons/Handlers/PlanetGraphHandler.cs b/NewHorizons/Handlers/PlanetGraphHandler.cs index e58688a2..49d85c6d 100644 --- a/NewHorizons/Handlers/PlanetGraphHandler.cs +++ b/NewHorizons/Handlers/PlanetGraphHandler.cs @@ -126,11 +126,11 @@ namespace NewHorizons.Handlers private static bool DetermineIfChildOfFocal(NewHorizonsBody body, FocalPointNode node) { - var name = body.Config.name.ToLower(); - var primary = (body.Config.Orbit?.primaryBody ?? "").ToLower(); - var primaryName = node.primary.body.Config.name.ToLower(); - var secondaryName = node.secondary.body.Config.name.ToLower(); - return name != primaryName && name != secondaryName && (primary == node.body.Config.name.ToLower() || primary == primaryName || primary == secondaryName); + var name = body.Config.name.ToLowerInvariant(); + var primary = (body.Config.Orbit?.primaryBody ?? "").ToLowerInvariant(); + var primaryName = node.primary.body.Config.name.ToLowerInvariant(); + var secondaryName = node.secondary.body.Config.name.ToLowerInvariant(); + return name != primaryName && name != secondaryName && (primary == node.body.Config.name.ToLowerInvariant() || primary == primaryName || primary == secondaryName); } diff --git a/NewHorizons/Handlers/TranslationHandler.cs b/NewHorizons/Handlers/TranslationHandler.cs index c2f49ebf..78ee5ca9 100644 --- a/NewHorizons/Handlers/TranslationHandler.cs +++ b/NewHorizons/Handlers/TranslationHandler.cs @@ -189,7 +189,7 @@ namespace NewHorizons.Handlers { var uiTable = TextTranslation.Get().m_table.theUITable; - var text = GetTranslation(rawText, TextType.UI).ToUpper(); + var text = GetTranslation(rawText, TextType.UI).ToUpperInvariant(); var key = uiTable.Keys.Max() + 1; try diff --git a/NewHorizons/Main.cs b/NewHorizons/Main.cs index 1415a54c..df767fe7 100644 --- a/NewHorizons/Main.cs +++ b/NewHorizons/Main.cs @@ -787,7 +787,7 @@ namespace NewHorizons { if (language is TextTranslation.Language.UNKNOWN or TextTranslation.Language.TOTAL) continue; - var relativeFile = Path.Combine("translations", language.ToString().ToLower() + ".json"); + var relativeFile = Path.Combine("translations", language.ToString().ToLowerInvariant() + ".json"); if (File.Exists(Path.Combine(folder, relativeFile))) { diff --git a/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs b/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs index 9f1aacfe..68b7a8d6 100644 --- a/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs +++ b/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs @@ -17,7 +17,7 @@ namespace NewHorizons.Patches.SignalPatches var customSignalName = SignalBuilder.GetCustomSignalName(name); if (!string.IsNullOrEmpty(customSignalName)) { - __result = TranslationHandler.GetTranslation(customSignalName, TranslationHandler.TextType.UI, false).ToUpper(); + __result = TranslationHandler.GetTranslation(customSignalName, TranslationHandler.TextType.UI, false).ToUpperInvariant(); return false; } return true; @@ -68,7 +68,7 @@ namespace NewHorizons.Patches.SignalPatches var customName = SignalBuilder.GetCustomFrequencyName(frequency); if (!string.IsNullOrEmpty(customName)) { - if (NewHorizonsData.KnowsFrequency(customName)) __result = TranslationHandler.GetTranslation(customName, TranslationHandler.TextType.UI, false).ToUpper(); + if (NewHorizonsData.KnowsFrequency(customName)) __result = TranslationHandler.GetTranslation(customName, TranslationHandler.TextType.UI, false).ToUpperInvariant(); else __result = UITextLibrary.GetString(UITextType.SignalFreqUnidentified); return false; } diff --git a/NewHorizons/Utility/DebugTools/DebugReload.cs b/NewHorizons/Utility/DebugTools/DebugReload.cs index cd067d98..b284505b 100644 --- a/NewHorizons/Utility/DebugTools/DebugReload.cs +++ b/NewHorizons/Utility/DebugTools/DebugReload.cs @@ -15,7 +15,7 @@ namespace NewHorizons.Utility.DebugTools public static void InitializePauseMenu(IPauseMenuManager pauseMenu) { - _reloadButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Reload Configs", TranslationHandler.TextType.UI).ToUpper(), 3, true); + _reloadButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Reload Configs", TranslationHandler.TextType.UI).ToUpperInvariant(), 3, true); _reloadButton.OnSubmitAction += ReloadConfigs; UpdateReloadButton(); } diff --git a/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs b/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs index 92e77893..010cab99 100644 --- a/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs +++ b/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs @@ -89,7 +89,7 @@ namespace NewHorizons.Utility.DebugTools.Menu public static void InitializePauseMenu(IPauseMenuManager pauseMenu) { - pauseMenuButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Toggle Dev Tools Menu", TranslationHandler.TextType.UI).ToUpper(), 3, true); + pauseMenuButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Toggle Dev Tools Menu", TranslationHandler.TextType.UI).ToUpperInvariant(), 3, true); _instance?.InitMenu(); } diff --git a/NewHorizons/Utility/NewHorizonExtensions.cs b/NewHorizons/Utility/NewHorizonExtensions.cs index 9ded956b..c34182e1 100644 --- a/NewHorizons/Utility/NewHorizonExtensions.cs +++ b/NewHorizons/Utility/NewHorizonExtensions.cs @@ -72,14 +72,14 @@ namespace NewHorizons.Utility public static string ToCamelCase(this string str) { StringBuilder strBuilder = new StringBuilder(str); - strBuilder[0] = strBuilder[0].ToString().ToLower().ToCharArray()[0]; + strBuilder[0] = strBuilder[0].ToString().ToLowerInvariant().ToCharArray()[0]; return strBuilder.ToString(); } public static string ToTitleCase(this string str) { StringBuilder strBuilder = new StringBuilder(str); - strBuilder[0] = strBuilder[0].ToString().ToUpper().ToCharArray()[0]; + strBuilder[0] = strBuilder[0].ToString().ToUpperInvariant().ToCharArray()[0]; return strBuilder.ToString(); } diff --git a/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs b/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs index b732eede..c20aa7b6 100644 --- a/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs +++ b/NewHorizons/Utility/OuterWilds/AstroObjectLocator.cs @@ -34,7 +34,7 @@ namespace NewHorizons.Utility.OuterWilds } // Else check stock names - var stringID = name.ToUpper(CultureInfo.InvariantCulture).Replace(" ", "_").Replace("'", ""); + var stringID = name.ToUpperInvariant().Replace(" ", "_").Replace("'", ""); if (stringID.Equals("ATTLEROCK")) stringID = "TIMBER_MOON"; if (stringID.Equals("HOLLOWS_LANTERN")) stringID = "VOLCANIC_MOON"; if (stringID.Equals("ASH_TWIN")) stringID = "TOWER_TWIN"; @@ -43,7 +43,7 @@ namespace NewHorizons.Utility.OuterWilds if (stringID.Equals("EYE") || stringID.Equals("EYEOFTHEUNIVERSE")) stringID = "EYE_OF_THE_UNIVERSE"; string key; - if (stringID.ToUpper(CultureInfo.InvariantCulture).Replace("_", "").Equals("MAPSATELLITE")) + if (stringID.ToUpperInvariant().Replace("_", "").Equals("MAPSATELLITE")) { key = AstroObject.Name.MapSatellite.ToString(); } From 9d1b1888b21c082a32522144650c508621b835f6 Mon Sep 17 00:00:00 2001 From: Nick Date: Sat, 27 Apr 2024 19:59:23 -0400 Subject: [PATCH 3/4] Update manifest.json --- NewHorizons/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NewHorizons/manifest.json b/NewHorizons/manifest.json index dc1e4dfe..74ce1e6e 100644 --- a/NewHorizons/manifest.json +++ b/NewHorizons/manifest.json @@ -4,7 +4,7 @@ "author": "xen, Bwc9876, JohnCorby, MegaPiggy, Clay, Trifid, and friends", "name": "New Horizons", "uniqueName": "xen.NewHorizons", - "version": "1.20.0", + "version": "1.20.1", "owmlVersion": "2.10.3", "dependencies": [ "JohnCorby.VanillaFix", "xen.CommonCameraUtility", "dgarro.CustomShipLogModes" ], "conflicts": [ "PacificEngine.OW_CommonResources" ], From a188d5380a0a28b1313de9b9dbdfedd74e6996ae Mon Sep 17 00:00:00 2001 From: Nick Date: Sat, 27 Apr 2024 20:11:53 -0400 Subject: [PATCH 4/4] Don't do invariant when its related to translations --- NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs | 2 +- NewHorizons/Handlers/TranslationHandler.cs | 2 +- NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs | 4 ++-- NewHorizons/Utility/DebugTools/DebugReload.cs | 2 +- NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs b/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs index a2d8b215..a1d466eb 100644 --- a/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs +++ b/NewHorizons/Components/ShipLog/ShipLogStarChartMode.cs @@ -282,7 +282,7 @@ namespace NewHorizons.Components.ShipLog var name = UniqueIDToName(shipLogEntryCard.name); - var warpNotificationDataText = TranslationHandler.GetTranslation("WARP_LOCKED", TranslationHandler.TextType.UI).Replace("{0}", name.ToUpperInvariant()); + var warpNotificationDataText = TranslationHandler.GetTranslation("WARP_LOCKED", TranslationHandler.TextType.UI).Replace("{0}", name.ToUpper()); _warpNotificationData = new NotificationData(warpNotificationDataText); NotificationManager.SharedInstance.PostNotification(_warpNotificationData, true); diff --git a/NewHorizons/Handlers/TranslationHandler.cs b/NewHorizons/Handlers/TranslationHandler.cs index 78ee5ca9..c2f49ebf 100644 --- a/NewHorizons/Handlers/TranslationHandler.cs +++ b/NewHorizons/Handlers/TranslationHandler.cs @@ -189,7 +189,7 @@ namespace NewHorizons.Handlers { var uiTable = TextTranslation.Get().m_table.theUITable; - var text = GetTranslation(rawText, TextType.UI).ToUpperInvariant(); + var text = GetTranslation(rawText, TextType.UI).ToUpper(); var key = uiTable.Keys.Max() + 1; try diff --git a/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs b/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs index 68b7a8d6..9f1aacfe 100644 --- a/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs +++ b/NewHorizons/Patches/SignalPatches/AudioSignalPatches.cs @@ -17,7 +17,7 @@ namespace NewHorizons.Patches.SignalPatches var customSignalName = SignalBuilder.GetCustomSignalName(name); if (!string.IsNullOrEmpty(customSignalName)) { - __result = TranslationHandler.GetTranslation(customSignalName, TranslationHandler.TextType.UI, false).ToUpperInvariant(); + __result = TranslationHandler.GetTranslation(customSignalName, TranslationHandler.TextType.UI, false).ToUpper(); return false; } return true; @@ -68,7 +68,7 @@ namespace NewHorizons.Patches.SignalPatches var customName = SignalBuilder.GetCustomFrequencyName(frequency); if (!string.IsNullOrEmpty(customName)) { - if (NewHorizonsData.KnowsFrequency(customName)) __result = TranslationHandler.GetTranslation(customName, TranslationHandler.TextType.UI, false).ToUpperInvariant(); + if (NewHorizonsData.KnowsFrequency(customName)) __result = TranslationHandler.GetTranslation(customName, TranslationHandler.TextType.UI, false).ToUpper(); else __result = UITextLibrary.GetString(UITextType.SignalFreqUnidentified); return false; } diff --git a/NewHorizons/Utility/DebugTools/DebugReload.cs b/NewHorizons/Utility/DebugTools/DebugReload.cs index b284505b..cd067d98 100644 --- a/NewHorizons/Utility/DebugTools/DebugReload.cs +++ b/NewHorizons/Utility/DebugTools/DebugReload.cs @@ -15,7 +15,7 @@ namespace NewHorizons.Utility.DebugTools public static void InitializePauseMenu(IPauseMenuManager pauseMenu) { - _reloadButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Reload Configs", TranslationHandler.TextType.UI).ToUpperInvariant(), 3, true); + _reloadButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Reload Configs", TranslationHandler.TextType.UI).ToUpper(), 3, true); _reloadButton.OnSubmitAction += ReloadConfigs; UpdateReloadButton(); } diff --git a/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs b/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs index 010cab99..92e77893 100644 --- a/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs +++ b/NewHorizons/Utility/DebugTools/Menu/DebugMenu.cs @@ -89,7 +89,7 @@ namespace NewHorizons.Utility.DebugTools.Menu public static void InitializePauseMenu(IPauseMenuManager pauseMenu) { - pauseMenuButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Toggle Dev Tools Menu", TranslationHandler.TextType.UI).ToUpperInvariant(), 3, true); + pauseMenuButton = pauseMenu.MakeSimpleButton(TranslationHandler.GetTranslation("Toggle Dev Tools Menu", TranslationHandler.TextType.UI).ToUpper(), 3, true); _instance?.InitMenu(); }