mirror of
https://github.com/GTNewHorizons/ForestryMC.git
synced 2026-11-13 16:54:04 +00:00
Work on localization and color properties (#106)
This commit is contained in:
1 parent
f88742e7ab
commit
a02df943ed
14 files changed
+65
-38
No files matched your search
@@ -14,7 +14,6 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.DamageSource;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.event.entity.minecart.MinecartInteractEvent;
|
||||
@@ -29,6 +28,7 @@ import forestry.core.gui.GuiHandler;
|
||||
import forestry.core.gui.IGuiHandlerEntity;
|
||||
import forestry.core.gui.IHintSource;
|
||||
import forestry.core.tiles.ITitled;
|
||||
import forestry.core.utils.StringUtil;
|
||||
|
||||
public abstract class EntityMinecartForestry extends EntityMinecart
|
||||
implements ITitled, IRestrictedAccess, IHintSource, IGuiHandlerEntity {
|
||||
@@ -111,7 +111,7 @@ public abstract class EntityMinecartForestry extends EntityMinecart
|
||||
|
||||
@Override
|
||||
public String getCommandSenderName() {
|
||||
return StatCollector.translateToLocal(getUnlocalizedTitle());
|
||||
return StringUtil.localizeGuiTitle(getUnlocalizedTitle());
|
||||
}
|
||||
|
||||
/* ITitled */
|
||||
|
||||
@@ -10,9 +10,9 @@ package forestry.core.gui;
|
||||
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.inventory.IInventory;
|
||||
import net.minecraft.util.StatCollector;
|
||||
|
||||
import forestry.core.tiles.ITitled;
|
||||
import forestry.core.utils.StringUtil;
|
||||
|
||||
public abstract class GuiForestryTitled<C extends Container, I extends ITitled & IInventory> extends GuiForestry<C, I> {
|
||||
|
||||
@@ -24,7 +24,7 @@ public abstract class GuiForestryTitled<C extends Container, I extends ITitled &
|
||||
protected void drawGuiContainerBackgroundLayer(float f, int mouseX, int mouseY) {
|
||||
super.drawGuiContainerBackgroundLayer(f, mouseX, mouseY);
|
||||
|
||||
String name = StatCollector.translateToLocal(inventory.getUnlocalizedTitle());
|
||||
String name = StringUtil.localizeGuiTitle(inventory.getUnlocalizedTitle());
|
||||
textLayout.line = 6;
|
||||
textLayout.drawCenteredLine(name, 0, fontColor.get("gui.title"));
|
||||
bindTexture(textureFile);
|
||||
|
||||
@@ -8,15 +8,19 @@
|
||||
******************************************************************************/
|
||||
package forestry.core.render;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.Properties;
|
||||
|
||||
import net.minecraft.client.resources.IResource;
|
||||
import net.minecraft.client.resources.IResourceManager;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class FontColour {
|
||||
|
||||
// private static final ResourceLocation colourDefinitions = new
|
||||
// ForestryResource("/config/forestry/colour.properties");
|
||||
private static final ResourceLocation colourDefinitions = new ForestryResource("config/colour.properties");
|
||||
private static final String defaultColourDefinitions = "/assets/forestry/config/colour.properties";
|
||||
|
||||
private final Properties defaultMappings = new Properties();
|
||||
private final Properties mappings = new Properties();
|
||||
@@ -30,17 +34,30 @@ public class FontColour {
|
||||
}
|
||||
|
||||
public void load(IResourceManager texturepack) {
|
||||
try {
|
||||
// InputStream fontStream = texturepack.func_110536_a(colourDefinitions).func_110527_b();
|
||||
InputStream defaultFontStream = FontColour.class.getResourceAsStream("/config/forestry/colour.properties");
|
||||
// mappings.load((fontStream == null) ? defaultFontStream : fontStream);
|
||||
mappings.load(defaultFontStream);
|
||||
defaultMappings.load(defaultFontStream);
|
||||
mappings.clear();
|
||||
defaultMappings.clear();
|
||||
|
||||
// if (fontStream != null)
|
||||
// fontStream.close();
|
||||
defaultFontStream.close();
|
||||
} catch (Exception e) {
|
||||
try (InputStream defaultFontStream = FontColour.class.getResourceAsStream(defaultColourDefinitions)) {
|
||||
if (defaultFontStream != null) {
|
||||
defaultMappings.load(defaultFontStream);
|
||||
mappings.putAll(defaultMappings);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
if (texturepack == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
IResource resource = texturepack.getResource(colourDefinitions);
|
||||
try (InputStream fontStream = resource.getInputStream()) {
|
||||
mappings.load(fontStream);
|
||||
}
|
||||
} catch (FileNotFoundException ignored) {
|
||||
// Resource pack does not provide an override.
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,6 +38,17 @@ public class StringUtil {
|
||||
.replace("\\%", "@");
|
||||
}
|
||||
|
||||
public static String localizeGuiTitle(String unlocalizedKey) {
|
||||
String titleKey = unlocalizedKey + ".title";
|
||||
String translated;
|
||||
if (StatCollector.canTranslate(titleKey)) {
|
||||
translated = StatCollector.translateToLocal(titleKey);
|
||||
} else {
|
||||
translated = StatCollector.translateToLocal(unlocalizedKey);
|
||||
}
|
||||
return translated.replace("\\n", "\n").replace("@", "%").replace("\\%", "@");
|
||||
}
|
||||
|
||||
public static String localizeAndFormat(String key, Object... args) {
|
||||
return localizeAndFormatRaw("for." + key, args);
|
||||
}
|
||||
|
||||
@@ -15,7 +15,6 @@ import java.util.List;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.fluids.FluidContainerRegistry;
|
||||
import net.minecraftforge.fluids.FluidContainerRegistry.FluidContainerData;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
@@ -26,6 +25,7 @@ import codechicken.nei.PositionedStack;
|
||||
import forestry.core.recipes.nei.NEIUtils;
|
||||
import forestry.core.recipes.nei.PositionedFluidTank;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiBottler;
|
||||
import forestry.factory.recipes.BottlerRecipe;
|
||||
|
||||
@@ -89,7 +89,7 @@ public class NEIHandlerBottler extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory.0.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory.0.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -15,7 +15,6 @@ import java.util.List;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
import codechicken.lib.gui.GuiDraw;
|
||||
@@ -28,6 +27,7 @@ import forestry.api.recipes.RecipeManagers;
|
||||
import forestry.core.recipes.nei.NEIUtils;
|
||||
import forestry.core.recipes.nei.PositionedFluidTank;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiCarpenter;
|
||||
|
||||
public class NEIHandlerCarpenter extends RecipeHandlerBase {
|
||||
@@ -125,7 +125,7 @@ public class NEIHandlerCarpenter extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory.1.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory.1.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -18,7 +18,6 @@ import java.util.Set;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.StatCollector;
|
||||
|
||||
import codechicken.nei.NEIServerUtils;
|
||||
import codechicken.nei.PositionedStack;
|
||||
@@ -26,6 +25,7 @@ import forestry.api.recipes.ICentrifugeRecipe;
|
||||
import forestry.api.recipes.RecipeManagers;
|
||||
import forestry.core.recipes.nei.PositionedStackAdv;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiCentrifuge;
|
||||
|
||||
public class NEIHandlerCentrifuge extends RecipeHandlerBase {
|
||||
@@ -109,7 +109,7 @@ public class NEIHandlerCentrifuge extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory.2.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory.2.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -18,7 +18,6 @@ import java.util.Map;
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.fluids.Fluid;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
@@ -31,6 +30,7 @@ import forestry.api.recipes.RecipeManagers;
|
||||
import forestry.core.recipes.nei.NEIUtils;
|
||||
import forestry.core.recipes.nei.PositionedFluidTank;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiFabricator;
|
||||
import forestry.factory.recipes.FabricatorSmeltingRecipeManager;
|
||||
|
||||
@@ -140,7 +140,7 @@ public class NEIHandlerFabricator extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory2.0.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory2.0.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -16,7 +16,6 @@ import java.util.List;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
import codechicken.lib.gui.GuiDraw;
|
||||
@@ -32,6 +31,7 @@ import forestry.core.config.Constants;
|
||||
import forestry.core.recipes.nei.NEIUtils;
|
||||
import forestry.core.recipes.nei.PositionedFluidTank;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiFermenter;
|
||||
|
||||
public class NEIHandlerFermenter extends RecipeHandlerBase {
|
||||
@@ -118,7 +118,7 @@ public class NEIHandlerFermenter extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory.3.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory.3.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -15,7 +15,6 @@ import java.util.List;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.fluids.FluidRegistry;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
@@ -27,6 +26,7 @@ import forestry.api.recipes.IMoistenerRecipe;
|
||||
import forestry.api.recipes.RecipeManagers;
|
||||
import forestry.core.recipes.nei.PositionedFluidTank;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiMoistener;
|
||||
|
||||
public class NEIHandlerMoistener extends RecipeHandlerBase {
|
||||
@@ -88,7 +88,7 @@ public class NEIHandlerMoistener extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory.4.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory.4.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -18,7 +18,6 @@ import java.util.Random;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
import codechicken.nei.NEIServerUtils;
|
||||
@@ -30,6 +29,7 @@ import forestry.core.recipes.nei.NEIUtils;
|
||||
import forestry.core.recipes.nei.PositionedFluidTank;
|
||||
import forestry.core.recipes.nei.PositionedStackAdv;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiSqueezer;
|
||||
import forestry.factory.recipes.ISqueezerContainerRecipe;
|
||||
import forestry.factory.recipes.SqueezerRecipeManager;
|
||||
@@ -165,7 +165,7 @@ public class NEIHandlerSqueezer extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory.5.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory.5.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -14,7 +14,6 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import net.minecraft.client.gui.inventory.GuiContainer;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
import codechicken.lib.gui.GuiDraw;
|
||||
@@ -24,6 +23,7 @@ import forestry.api.recipes.RecipeManagers;
|
||||
import forestry.core.recipes.nei.NEIUtils;
|
||||
import forestry.core.recipes.nei.PositionedFluidTank;
|
||||
import forestry.core.recipes.nei.RecipeHandlerBase;
|
||||
import forestry.core.utils.StringUtil;
|
||||
import forestry.factory.gui.GuiStill;
|
||||
|
||||
public class NEIHandlerStill extends RecipeHandlerBase {
|
||||
@@ -71,7 +71,7 @@ public class NEIHandlerStill extends RecipeHandlerBase {
|
||||
|
||||
@Override
|
||||
public String getRecipeName() {
|
||||
return StatCollector.translateToLocal("tile.for.factory.6.name");
|
||||
return StringUtil.localizeGuiTitle("tile.for.factory.6.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
package forestry.mail.gui;
|
||||
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.util.StatCollector;
|
||||
|
||||
import forestry.core.config.Constants;
|
||||
import forestry.core.gui.GuiForestry;
|
||||
@@ -26,7 +25,7 @@ public class GuiTrader extends GuiForestry<ContainerTrader, TileTrader> {
|
||||
|
||||
@Override
|
||||
protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) {
|
||||
String name = StatCollector.translateToLocal(inventory.getUnlocalizedTitle());
|
||||
String name = StringUtil.localizeGuiTitle(inventory.getUnlocalizedTitle());
|
||||
this.fontRendererObj.drawString(name, textLayout.getCenteredOffset(name), 6, fontColor.get("gui.mail.text"));
|
||||
|
||||
String receive = StringUtil.localize("gui.mail.receive");
|
||||
|
||||
Executable → Regular
+4
-4
@@ -1,6 +1,6 @@
|
||||
# Add a file of this format in your texture packs zip as
|
||||
# /config/forestry/colour.properties to configure font colours.
|
||||
# A file at that location inside the zip of the active texture pack
|
||||
# Add a file of this format in your resource pack zip as
|
||||
# /assets/forestry/config/colour.properties to configure font colours.
|
||||
# A file at that location inside the zip of the active resource pack
|
||||
# will take precedence over the default.
|
||||
#
|
||||
# Hex format without leading 0x
|
||||
@@ -48,4 +48,4 @@ ledger.farm.text=000000
|
||||
|
||||
ledger.search_ingredients.background=ffffff
|
||||
ledger.search_ingredients.header=587b96
|
||||
ledger.search_ingredients.text=000000
|
||||
ledger.search_ingredients.text=000000
|
||||
Reference in new issue
Block a user