From 258d5b9be22d3aad2c27a2b57d22b907b3284248 Mon Sep 17 00:00:00 2001 From: kekzdealer Date: Thu, 11 Jun 2020 20:29:50 +0200 Subject: Implemented new class for GT rendered textures! --- src/main/java/client/ClientProxy.java | 2 ++ src/main/java/client/GTTexture.java | 63 +++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 src/main/java/client/GTTexture.java (limited to 'src/main/java/client') diff --git a/src/main/java/client/ClientProxy.java b/src/main/java/client/ClientProxy.java index f608861c0d..b4eb51f369 100644 --- a/src/main/java/client/ClientProxy.java +++ b/src/main/java/client/ClientProxy.java @@ -18,6 +18,8 @@ public class ClientProxy extends CommonProxy { // Register TESR ClientRegistry.bindTileEntitySpecialRenderer(TE_SpaceElevatorTether.class, new TESR_SETether()); ClientRegistry.bindTileEntitySpecialRenderer(TE_SpaceElevatorCapacitor.class, new TESR_SECapacitor()); + // Register GTTextures + GTTexture.init(); } @Override diff --git a/src/main/java/client/GTTexture.java b/src/main/java/client/GTTexture.java new file mode 100644 index 0000000000..98795e6585 --- /dev/null +++ b/src/main/java/client/GTTexture.java @@ -0,0 +1,63 @@ +package client; + +import gregtech.api.GregTech_API; +import gregtech.api.interfaces.IIconContainer; +import kekztech.KekzCore; +import net.minecraft.client.renderer.texture.TextureMap; +import net.minecraft.util.IIcon; +import net.minecraft.util.ResourceLocation; + +import java.util.HashMap; + +public class GTTexture implements IIconContainer { + + public static final String MULTI_HATCH_OFF = "multi_hatch_off"; + public static final String MULTI_HATCH_ON = "multi_hatch_on"; + + private static final HashMap icons = new HashMap<>(); + + private final IIcon icon; + private final IIcon overlayIcon; + + private GTTexture(String iconName) { + icon = GregTech_API.sBlockIcons.registerIcon(KekzCore.MODID + ":" + iconName); + overlayIcon = null; + } + + private GTTexture(String iconName, String overlayIconName) { + icon = GregTech_API.sBlockIcons.registerIcon(KekzCore.MODID + ":" + iconName); + overlayIcon = GregTech_API.sBlockIcons.registerIcon(KekzCore.MODID + ":" + overlayIconName); + } + + public static void registerTexture(String iconName) { + icons.put(iconName, new GTTexture(iconName)); + } + + public static void registerTexture(String iconName, String overlayIconName) { + icons.put(iconName, new GTTexture(iconName, overlayIconName)); + } + + public static void init() { + registerTexture(MULTI_HATCH_ON); + registerTexture(MULTI_HATCH_OFF); + } + + public static IIconContainer getIconContainer(String iconName) { + return icons.get(iconName); + } + + @Override + public IIcon getIcon() { + return icon; + } + + @Override + public IIcon getOverlayIcon() { + return overlayIcon; + } + + @Override + public ResourceLocation getTextureFile() { + return TextureMap.locationBlocksTexture; + } +} -- cgit