diff options
Diffstat (limited to 'src/Java/miscutil/gregtech/api/enums/GregtechTextures.java')
-rw-r--r-- | src/Java/miscutil/gregtech/api/enums/GregtechTextures.java | 96 |
1 files changed, 95 insertions, 1 deletions
diff --git a/src/Java/miscutil/gregtech/api/enums/GregtechTextures.java b/src/Java/miscutil/gregtech/api/enums/GregtechTextures.java index 2db6f14599..816f1ba543 100644 --- a/src/Java/miscutil/gregtech/api/enums/GregtechTextures.java +++ b/src/Java/miscutil/gregtech/api/enums/GregtechTextures.java @@ -1,8 +1,11 @@ package miscutil.gregtech.api.enums; +import gregtech.api.GregTech_API; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.ITexture; +import gregtech.api.objects.GT_RenderedTexture; import miscutil.core.lib.CORE; +import miscutil.core.util.Utils; import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.util.IIcon; import net.minecraft.util.ResourceLocation; @@ -69,7 +72,7 @@ public class GregtechTextures { @Override public ResourceLocation getTextureFile() { - return TextureMap.locationBlocksTexture; + return TextureMap.locationBlocksTexture; //TODO } public static class CustomIcon implements IIconContainer, Runnable { @@ -102,5 +105,96 @@ public class GregtechTextures { } } } + + + public enum ItemIcons implements IIconContainer, Runnable { + VOID, RENDERING_ERROR, // The Empty Texture + TURBINE, TURBINE_SMALL, TURBINE_LARGE, TURBINE_HUGE; + + public static final ITexture[] ERROR_RENDERING = new ITexture[]{new GT_RenderedTexture(RENDERING_ERROR)}; + + protected IIcon mIcon, mOverlay; + + private ItemIcons() { + GregTech_API.sGTItemIconload.add(this); + } + + @Override + public IIcon getIcon() { + return mIcon; + } + + @Override + public IIcon getOverlayIcon() { + return mOverlay; + } + + @Override + public ResourceLocation getTextureFile() { + return TextureMap.locationItemsTexture; + } + + @Override + public void run() { + mIcon = GregTech_API.sItemIcons.registerIcon(CORE.MODID+":" + "iconsets/" + this); + if (mIcon != null){ + Utils.LOG_INFO("Found Texture at "+CORE.MODID+":" + "iconsets/" + this); + } + else if (mIcon == null){ + mIcon = GregTech_API.sItemIcons.registerIcon(CORE.RES_PATH_ITEM + "iconsets/" + this); + if (mIcon != null){ + Utils.LOG_INFO("Found Texture at "+CORE.RES_PATH_ITEM + "iconsets/" + this); + } + else { + Utils.LOG_INFO("Did not find Texture at "+CORE.RES_PATH_ITEM + "iconsets/" + this); + } + } + mOverlay = GregTech_API.sItemIcons.registerIcon(CORE.MODID+":" + "iconsets/" + this + "_OVERLAY"); + if (mOverlay != null){ + Utils.LOG_INFO("Found Texture at "+CORE.MODID+":" + "iconsets/" + this+ "_OVERLAY"); + } + else if (mOverlay == null){ + mOverlay = GregTech_API.sItemIcons.registerIcon(CORE.RES_PATH_ITEM + "iconsets/" + this+ "_OVERLAY"); + if (mOverlay != null){ + Utils.LOG_INFO("Found Texture at "+CORE.RES_PATH_ITEM + "iconsets/" + this+ "_OVERLAY"); + } + else { + Utils.LOG_INFO("Did not find Texture at "+CORE.RES_PATH_ITEM + "iconsets/" + this+ "_OVERLAY"); + } + } + } + + public static class CustomIcon implements IIconContainer, Runnable { + protected IIcon mIcon, mOverlay; + protected String mIconName; + + public CustomIcon(String aIconName) { + mIconName = aIconName; + GregTech_API.sGTItemIconload.add(this); + } + + @Override + public IIcon getIcon() { + return mIcon; + } + + @Override + public IIcon getOverlayIcon() { + return mOverlay; + } + + @Override + public void run() { + mIcon = GregTech_API.sItemIcons.registerIcon(CORE.MODID+":" + mIconName); + mOverlay = GregTech_API.sItemIcons.registerIcon(CORE.MODID+":" + mIconName + "_OVERLAY"); + } + + @Override + public ResourceLocation getTextureFile() { + return TextureMap.locationItemsTexture; + } + } + } + } |