aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorBlood-Asp <bloodasphendrik@gmail.com>2016-10-26 18:44:14 +0200
committerTechnus <daniel112092@gmail.com>2016-10-27 10:14:21 +0200
commitd8aa0e6ebf01107b58e8d23b46973e3ffde1fe26 (patch)
tree6043e3158eff5a09ee6d6fc49762be06c80170b1 /src/main/java
parent508c22934098cd3eb90a38f1d65c2cf94c43c4c6 (diff)
downloadGT5-Unofficial-d8aa0e6ebf01107b58e8d23b46973e3ffde1fe26.tar.gz
GT5-Unofficial-d8aa0e6ebf01107b58e8d23b46973e3ffde1fe26.tar.bz2
GT5-Unofficial-d8aa0e6ebf01107b58e8d23b46973e3ffde1fe26.zip
Replace not working localization function with own map.
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/gregtech/api/util/GT_LanguageManager.java16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/main/java/gregtech/api/util/GT_LanguageManager.java b/src/main/java/gregtech/api/util/GT_LanguageManager.java
index 9937d0c069..36b543b183 100644
--- a/src/main/java/gregtech/api/util/GT_LanguageManager.java
+++ b/src/main/java/gregtech/api/util/GT_LanguageManager.java
@@ -14,8 +14,9 @@ import java.util.Map.Entry;
import static gregtech.api.enums.GT_Values.E;
public class GT_LanguageManager {
- public static final HashMap<String, String> TEMPMAP = new HashMap<String, String>(), BUFFERMAP = new HashMap<String, String>();
+ public static final HashMap<String, String> TEMPMAP = new HashMap<String, String>(), BUFFERMAP = new HashMap<String, String>(), LANGMAP = new HashMap<String, String>();
public static Configuration sEnglishFile;
+ public static boolean sUseEnglishFile = false;
public static String addStringLocalization(String aKey, String aEnglish) {
return addStringLocalization(aKey, aEnglish, true);
@@ -23,10 +24,17 @@ public class GT_LanguageManager {
public static String addStringLocalization(String aKey, String aEnglish, boolean aWriteIntoLangFile) {
if (aKey == null) return E;
- if (aWriteIntoLangFile) aEnglish = writeToLangFile(aKey, aEnglish);
+ if (aWriteIntoLangFile){ aEnglish = writeToLangFile(aKey, aEnglish);
+ if(!LANGMAP.containsKey(aKey)){
+ LANGMAP.put(aKey, aEnglish);
+ }
+ }
TEMPMAP.put(aKey.trim(), aEnglish);
LanguageRegistry.instance().injectLanguage("en_US", TEMPMAP);
TEMPMAP.clear();
+ if(sUseEnglishFile && !aWriteIntoLangFile && LANGMAP.containsKey(aKey)){
+ aEnglish = LANGMAP.get(aKey);
+ }
return aEnglish;
}
@@ -44,8 +52,10 @@ public class GT_LanguageManager {
}
Property tProperty = sEnglishFile.get("LanguageFile", aKey.trim(), aEnglish);
if (!tProperty.wasRead() && GregTech_API.sPostloadFinished) sEnglishFile.save();
- if (sEnglishFile.get("EnableLangFile", "UseThisFileAsLanguageFile", false).getBoolean(false))
+ if (sEnglishFile.get("EnableLangFile", "UseThisFileAsLanguageFile", false).getBoolean(false)){
aEnglish = tProperty.getString();
+ sUseEnglishFile = true;
+ }
}
return aEnglish;
}