aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/render/GT_CopiedBlockTexture.java
diff options
context:
space:
mode:
authorLéa Gris <lea.gris@noiraude.net>2021-05-20 22:57:12 +0200
committerLéa Gris <lea.gris@noiraude.net>2021-05-21 13:41:21 +0200
commit678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7 (patch)
treef275c84399e59b714bcd9a70f0ffa6d6020f5ffe /src/main/java/gregtech/api/render/GT_CopiedBlockTexture.java
parent04468545985a4fed401d9b6626670e8af5938920 (diff)
downloadGT5-Unofficial-678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7.tar.gz
GT5-Unofficial-678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7.tar.bz2
GT5-Unofficial-678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7.zip
feat(render): implementation-free api texture factory
Provides an implementation-free API Texture factory an builder. Deprecates gregtech.api.objects.GT_*Texture.java classes Once all GregTech add-on will be migrated to the new implemnetation-free API, changes to the implementation will not affect the add-on. For now, this API allow rendering of in-world glow textures. In-inventory/hand rendering of glow texture require implementation changes that are postponed until no add-on uses the deprecated embedded implementation API.
Diffstat (limited to 'src/main/java/gregtech/api/render/GT_CopiedBlockTexture.java')
-rw-r--r--src/main/java/gregtech/api/render/GT_CopiedBlockTexture.java128
1 files changed, 0 insertions, 128 deletions
diff --git a/src/main/java/gregtech/api/render/GT_CopiedBlockTexture.java b/src/main/java/gregtech/api/render/GT_CopiedBlockTexture.java
deleted file mode 100644
index 4ffdf8ca92..0000000000
--- a/src/main/java/gregtech/api/render/GT_CopiedBlockTexture.java
+++ /dev/null
@@ -1,128 +0,0 @@
-package gregtech.api.render;
-
-import gregtech.api.enums.Dyes;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.util.LightingHelper;
-import net.minecraft.block.Block;
-import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.client.renderer.Tessellator;
-import net.minecraft.util.IIcon;
-import net.minecraftforge.common.util.ForgeDirection;
-
-public class GT_CopiedBlockTexture implements ITexture {
- private final Block mBlock;
- private final byte mSide, mMeta;
- private final boolean mAllowAlpha;
- /**
- * DO NOT MANIPULATE THE VALUES INSIDE THIS ARRAY!!!
- * <p/>
- * Just set this variable to another different Array instead.
- * Otherwise some colored things will get Problems.
- */
- public short[] mRGBa;
-
- public GT_CopiedBlockTexture(Block aBlock, int aSide, int aMeta, short[] aRGBa, boolean aAllowAlpha) {
- if (aRGBa.length != 4) throw new IllegalArgumentException("RGBa doesn't have 4 Values @ GT_CopiedBlockTexture");
- mBlock = aBlock;
- mRGBa = aRGBa;
- mSide = (byte) aSide;
- mMeta = (byte) aMeta;
- mAllowAlpha = aAllowAlpha;
- }
-
- public GT_CopiedBlockTexture(Block aBlock, int aSide, int aMeta, short[] aRGBa) {
- this(aBlock, aSide, aMeta, aRGBa, true);
- }
-
- public GT_CopiedBlockTexture(Block aBlock, int aSide, int aMeta) {
- this(aBlock, aSide, aMeta, Dyes._NULL.mRGBa);
- }
-
- private IIcon getIcon(int aSide) {
- if (mSide == 6) return mBlock.getIcon(aSide, mMeta);
- return mBlock.getIcon(mSide, mMeta);
- }
-
- @Override
- public void renderXPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- IIcon aIcon = getIcon(ForgeDirection.EAST.ordinal());
- aRenderer.field_152631_f = true;
- startDrawingQuads(aRenderer, 1.0f, 0.0f, 0.0f);
- new LightingHelper(aRenderer)
- .setupLightingXPos(aBlock, aX, aY, aZ)
- .setupColor(ForgeDirection.EAST.ordinal(), 0xffffff);
- aRenderer.renderFaceXPos(aBlock, aX, aY, aZ, aIcon);
- draw(aRenderer);
- aRenderer.field_152631_f = false;
- }
-
- @Override
- public void renderXNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- startDrawingQuads(aRenderer, -1.0f, 0.0f, 0.0f);
- IIcon aIcon = getIcon(ForgeDirection.WEST.ordinal());
- new LightingHelper(aRenderer)
- .setupLightingXNeg(aBlock, aX, aY, aZ)
- .setupColor(ForgeDirection.WEST.ordinal(), 0xffffff);
- aRenderer.renderFaceXNeg(aBlock, aX, aY, aZ, aIcon);
- draw(aRenderer);
- }
-
- @Override
- public void renderYPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- startDrawingQuads(aRenderer, 0.0f, 1.0f, 0.0f);
- IIcon aIcon = getIcon(ForgeDirection.UP.ordinal());
- new LightingHelper(aRenderer)
- .setupLightingYPos(aBlock, aX, aY, aZ)
- .setupColor(ForgeDirection.UP.ordinal(), 0xffffff);
- aRenderer.renderFaceYPos(aBlock, aX, aY, aZ, aIcon);
- draw(aRenderer);
- }
-
- @Override
- public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- startDrawingQuads(aRenderer, 0.0f, -1.0f, 0.0f);
- IIcon aIcon = getIcon(ForgeDirection.DOWN.ordinal());
- new LightingHelper(aRenderer)
- .setupLightingYNeg(aBlock, aX, aY, aZ)
- .setupColor(ForgeDirection.DOWN.ordinal(), 0xffffff);
- aRenderer.renderFaceYNeg(aBlock, aX, aY, aZ, aIcon);
- draw(aRenderer);
- }
-
- @Override
- public void renderZPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- startDrawingQuads(aRenderer, 0.0f, 0.0f, 1.0f);
- IIcon aIcon = getIcon(ForgeDirection.SOUTH.ordinal());
- new LightingHelper(aRenderer)
- .setupLightingZPos(aBlock, aX, aY, aZ)
- .setupColor(ForgeDirection.SOUTH.ordinal(), 0xffffff);
- aRenderer.renderFaceZPos(aBlock, aX, aY, aZ, aIcon);
- draw(aRenderer);
- }
-
- @Override
- public void renderZNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- startDrawingQuads(aRenderer, 0.0f, 0.0f, -1.0f);
- IIcon aIcon = getIcon(ForgeDirection.NORTH.ordinal());
- aRenderer.field_152631_f = true;
- new LightingHelper(aRenderer)
- .setupLightingZNeg(aBlock, aX, aY, aZ)
- .setupColor(ForgeDirection.NORTH.ordinal(), 0xffffff);
- aRenderer.renderFaceZNeg(aBlock, aX, aY, aZ, aIcon);
- draw(aRenderer);
- aRenderer.field_152631_f = false;
- }
-
- @Override
- public boolean isValidTexture() {
- return mBlock != null;
- }
-
- public Block getBlock() {
- return mBlock;
- }
-
- public byte getMeta() {
- return mMeta;
- }
-}