diff options
author | MuXiu1997 <49554020+MuXiu1997@users.noreply.github.com> | 2022-03-30 03:27:09 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-29 21:27:09 +0200 |
commit | a3cdd0b38cd4452bffb5f5f30556a812aef758ac (patch) | |
tree | c82475c5a9a6d872d99bfa9ef6bf905254252669 /src/main/java/gtPlusPlus/core/util | |
parent | a91ba235314ea6b56adf4d8cca574eebb88b1b62 (diff) | |
download | GT5-Unofficial-a3cdd0b38cd4452bffb5f5f30556a812aef758ac.tar.gz GT5-Unofficial-a3cdd0b38cd4452bffb5f5f30556a812aef758ac.tar.bz2 GT5-Unofficial-a3cdd0b38cd4452bffb5f5f30556a812aef758ac.zip |
Fix books localization (#164)
Diffstat (limited to 'src/main/java/gtPlusPlus/core/util')
-rw-r--r-- | src/main/java/gtPlusPlus/core/util/Utils.java | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/src/main/java/gtPlusPlus/core/util/Utils.java b/src/main/java/gtPlusPlus/core/util/Utils.java index 81b23e0b1c..ac61abdd30 100644 --- a/src/main/java/gtPlusPlus/core/util/Utils.java +++ b/src/main/java/gtPlusPlus/core/util/Utils.java @@ -28,6 +28,7 @@ import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.EntityRegistry.EntityRegistration; import gregtech.GT_Mod; +import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -723,6 +724,21 @@ public class Utils { } } + public static String addBookTitleLocalization(final String aTitle) { + return GT_LanguageManager.addStringLocalization( + new StringBuilder().append("Book.").append(aTitle).append(".Name").toString(), aTitle, !GregTech_API.sPostloadFinished); + } + + public static String[] addBookPagesLocalization(final String aTitle, final String[] aPages) { + String[] aLocalizationPages = new String[aPages.length]; + for (byte i = 0; i < aPages.length; i = (byte) (i + 1)) { + aLocalizationPages[i] = GT_LanguageManager + .addStringLocalization(new StringBuilder().append("Book.").append(aTitle).append(".Page") + .append((i < 10) ? new StringBuilder().append("0").append(i).toString() : Byte.valueOf(i)) + .toString(), aPages[i], !GregTech_API.sPostloadFinished); + } + return aLocalizationPages; + } public static ItemStack getWrittenBook(final ItemStack aBook, final int aID, final String aMapping, final String aTitle, final String aAuthor, final String[] aPages) { @@ -739,15 +755,13 @@ public class Utils { final int vMeta = aID; rStack = (aBook == null ? new ItemStack(ModItems.itemCustomBook, 1, vMeta) : aBook); final NBTTagCompound tNBT = new NBTTagCompound(); - tNBT.setString("title", GT_LanguageManager.addStringLocalization( - new StringBuilder().append("Book.").append(aTitle).append(".Name").toString(), aTitle)); + String localizationTitle = addBookTitleLocalization(aTitle); + tNBT.setString("title", localizationTitle); tNBT.setString("author", aAuthor); final NBTTagList tNBTList = new NBTTagList(); - for (byte i = 0; i < aPages.length; i = (byte) (i + 1)) { - aPages[i] = GT_LanguageManager - .addStringLocalization(new StringBuilder().append("Book.").append(aTitle).append(".Page") - .append((i < 10) ? new StringBuilder().append("0").append(i).toString() : Byte.valueOf(i)) - .toString(), aPages[i]); + final String[] aLocalizationPages = addBookPagesLocalization(aTitle, aPages); + for (byte i = 0; i < aPages.length; i = (byte) (i + 1)) { + aPages[i] = aLocalizationPages[i].replaceAll("<BR>", "\n"); if (i < 48) { if (aPages[i].length() < 256) { tNBTList.appendTag(new NBTTagString(aPages[i])); |