From 1225df283b92d6db0621b2a1238173bd0fa918f4 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Thu, 9 Feb 2023 17:40:19 -0500 Subject: [PATCH] v2.0.0: fixed errors when English was selected on non-English devices --- .../shatteredpixeldungeon/messages/Messages.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/messages/Messages.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/messages/Messages.java index cd3bdcc01..d4079cfd2 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/messages/Messages.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/messages/Messages.java @@ -33,6 +33,8 @@ import java.util.HashSet; import java.util.IllegalFormatException; import java.util.Locale; +import jdk.vm.ci.meta.Local; + /* Simple wrapper class for libGDX I18NBundles. @@ -80,7 +82,7 @@ public class Messages { //seeing as missing keys are part of our process, this is faster than throwing an exception I18NBundle.setExceptionOnMissingKey(false); - bundles = new ArrayList<>(); + //store language and locale info for various string logic Messages.lang = lang; if (lang == Languages.ENGLISH){ locale = Locale.ENGLISH; @@ -88,8 +90,11 @@ public class Messages { locale = new Locale(lang.code()); } + //strictly match the language code when fetching bundles however + bundles = new ArrayList<>(); + Locale bundleLocal = new Locale(lang.code()); for (String file : prop_files) { - bundles.add(I18NBundle.createBundle(Gdx.files.internal(file), locale)); + bundles.add(I18NBundle.createBundle(Gdx.files.internal(file), bundleLocal)); } }