aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorkekzdealer <kekzdealer@gmail.com>2020-06-11 20:29:50 +0200
committerkekzdealer <kekzdealer@gmail.com>2020-06-11 20:29:50 +0200
commit258d5b9be22d3aad2c27a2b57d22b907b3284248 (patch)
tree69ed96f28d0ad5595300ec0d9925d12e1555ae2d /src
parentcc664f07248872c2d44f7ef22ab3a9d520c19f8d (diff)
downloadGT5-Unofficial-258d5b9be22d3aad2c27a2b57d22b907b3284248.tar.gz
GT5-Unofficial-258d5b9be22d3aad2c27a2b57d22b907b3284248.tar.bz2
GT5-Unofficial-258d5b9be22d3aad2c27a2b57d22b907b3284248.zip
Implemented new class for GT rendered textures!
Diffstat (limited to 'src')
-rw-r--r--src/main/java/client/ClientProxy.java2
-rw-r--r--src/main/java/client/GTTexture.java63
-rw-r--r--src/main/java/common/tileentities/GTMTE_TFFTMultiHatch.java10
3 files changed, 71 insertions, 4 deletions
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<String, IIconContainer> 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;
+ }
+}
diff --git a/src/main/java/common/tileentities/GTMTE_TFFTMultiHatch.java b/src/main/java/common/tileentities/GTMTE_TFFTMultiHatch.java
index f93bafbead..024ffdc135 100644
--- a/src/main/java/common/tileentities/GTMTE_TFFTMultiHatch.java
+++ b/src/main/java/common/tileentities/GTMTE_TFFTMultiHatch.java
@@ -1,10 +1,12 @@
package common.tileentities;
+import client.GTTexture;
import gregtech.api.GregTech_API;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
+import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import kekztech.MultiFluidHandler;
@@ -64,13 +66,13 @@ public class GTMTE_TFFTMultiHatch extends GT_MetaTileEntity_Hatch {
}
@Override
- public ITexture[] getTexturesActive(ITexture iTexture) {
- return new ITexture[0];
+ public ITexture[] getTexturesActive(ITexture aBaseTexture) {
+ return new ITexture[]{aBaseTexture, new GT_RenderedTexture(GTTexture.getIconContainer(GTTexture.MULTI_HATCH_ON))};
}
@Override
- public ITexture[] getTexturesInactive(ITexture iTexture) {
- return new ITexture[0];
+ public ITexture[] getTexturesInactive(ITexture aBaseTexture) {
+ return new ITexture[]{aBaseTexture, new GT_RenderedTexture(GTTexture.getIconContainer(GTTexture.MULTI_HATCH_OFF))};
}
@Override