From b2c8cfb4ec8b82337a95f51364277964ec968b52 Mon Sep 17 00:00:00 2001 From: Jason Mitchell Date: Mon, 1 May 2023 02:45:56 -0700 Subject: ForgeDirection (#608) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ForgeDirection WIP * Fix GTPP_Render_MachineBlock Fix handling of getTexture with facing mask for pipes Kill a bunch of magic numbers * spotlessApply (#612) Co-authored-by: GitHub GTNH Actions <> * Bump bw/tt deps --------- Co-authored-by: Léa Gris Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../gtPlusPlus/core/client/model/ModelBatKing.java | 1 + .../gtPlusPlus/core/client/model/ModelEggBox.java | 1 + .../core/client/model/ModelGiantChicken.java | 2 + .../client/renderer/CustomOreBlockRenderer.java | 77 ++++++++++++++++++---- .../core/client/renderer/RenderBatKing.java | 7 ++ .../core/client/renderer/RenderDecayChest.java | 1 + .../core/client/renderer/RenderPlasmaBolt.java | 2 + .../client/renderer/tabula/RenderTabulaBase.java | 1 + 8 files changed, 80 insertions(+), 12 deletions(-) (limited to 'src/main/java/gtPlusPlus/core/client') diff --git a/src/main/java/gtPlusPlus/core/client/model/ModelBatKing.java b/src/main/java/gtPlusPlus/core/client/model/ModelBatKing.java index 5baa5a8f49..b61027a6f5 100644 --- a/src/main/java/gtPlusPlus/core/client/model/ModelBatKing.java +++ b/src/main/java/gtPlusPlus/core/client/model/ModelBatKing.java @@ -71,6 +71,7 @@ public class ModelBatKing extends ModelBase { /** * Sets the models various rotation angles then renders the model. */ + @Override public void render(Entity p_78088_1_, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float p_78088_7_) { EntityBatKing entitybat = (EntityBatKing) p_78088_1_; diff --git a/src/main/java/gtPlusPlus/core/client/model/ModelEggBox.java b/src/main/java/gtPlusPlus/core/client/model/ModelEggBox.java index 028e06f7d6..49a0878678 100644 --- a/src/main/java/gtPlusPlus/core/client/model/ModelEggBox.java +++ b/src/main/java/gtPlusPlus/core/client/model/ModelEggBox.java @@ -41,6 +41,7 @@ public class ModelEggBox extends ModelTabulaBase { /** * This is a helper function from Tabula to set the rotation of model parts */ + @Override public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { modelRenderer.rotateAngleX = x; modelRenderer.rotateAngleY = y; diff --git a/src/main/java/gtPlusPlus/core/client/model/ModelGiantChicken.java b/src/main/java/gtPlusPlus/core/client/model/ModelGiantChicken.java index 6f4a0e980b..14ee51a35e 100644 --- a/src/main/java/gtPlusPlus/core/client/model/ModelGiantChicken.java +++ b/src/main/java/gtPlusPlus/core/client/model/ModelGiantChicken.java @@ -44,6 +44,7 @@ public class ModelGiantChicken extends ModelChicken { /** * Sets the models various rotation angles then renders the model. */ + @Override public void render(Entity p_78088_1_, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float p_78088_7_) { this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); @@ -92,6 +93,7 @@ public class ModelGiantChicken extends ModelChicken { * and legs, where par1 represents the time(so that arms and legs swing back and forth) and par2 represents how * "far" arms and legs can swing at most. */ + @Override public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, float p_78087_5_, float p_78087_6_, Entity p_78087_7_) { this.head.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI); diff --git a/src/main/java/gtPlusPlus/core/client/renderer/CustomOreBlockRenderer.java b/src/main/java/gtPlusPlus/core/client/renderer/CustomOreBlockRenderer.java index df616a1c14..779713d130 100644 --- a/src/main/java/gtPlusPlus/core/client/renderer/CustomOreBlockRenderer.java +++ b/src/main/java/gtPlusPlus/core/client/renderer/CustomOreBlockRenderer.java @@ -7,6 +7,7 @@ import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; +import net.minecraftforge.common.util.ForgeDirection; import org.lwjgl.opengl.GL11; @@ -39,12 +40,12 @@ public class CustomOreBlockRenderer implements ISimpleBlockRenderingHandler { aZ, aBlock, aRenderer, - new ITexture[][] { ((ITexturedBlock) tTileEntity).getTexture((byte) 0), - ((ITexturedBlock) tTileEntity).getTexture((byte) 1), - ((ITexturedBlock) tTileEntity).getTexture((byte) 2), - ((ITexturedBlock) tTileEntity).getTexture((byte) 3), - ((ITexturedBlock) tTileEntity).getTexture((byte) 4), - ((ITexturedBlock) tTileEntity).getTexture((byte) 5) }); + new ITexture[][] { ((ITexturedBlock) tTileEntity).getTexture(ForgeDirection.DOWN), + ((ITexturedBlock) tTileEntity).getTexture(ForgeDirection.UP), + ((ITexturedBlock) tTileEntity).getTexture(ForgeDirection.NORTH), + ((ITexturedBlock) tTileEntity).getTexture(ForgeDirection.SOUTH), + ((ITexturedBlock) tTileEntity).getTexture(ForgeDirection.WEST), + ((ITexturedBlock) tTileEntity).getTexture(ForgeDirection.EAST) }); } return false; } @@ -241,6 +242,7 @@ public class CustomOreBlockRenderer implements ISimpleBlockRenderingHandler { aRenderer.flipTexture = false; } + @Override public void renderInventoryBlock(Block aBlock, int aMeta, int aModelID, RenderBlocks aRenderer) { aBlock.setBlockBoundsForItemRender(); aRenderer.setRenderBoundsFromBlock(aBlock); @@ -248,43 +250,94 @@ public class CustomOreBlockRenderer implements ISimpleBlockRenderingHandler { GL11.glTranslatef(-0.5F, -0.5F, -0.5F); Tessellator.instance.startDrawingQuads(); Tessellator.instance.setNormal(0.0F, -1.0F, 0.0F); - renderNegativeYFacing(null, aRenderer, aBlock, 0, 0, 0, ((ITexturedBlock) aBlock).getTexture((byte) 0), true); + renderNegativeYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + ((ITexturedBlock) aBlock).getTexture(ForgeDirection.DOWN), + true); Tessellator.instance.draw(); Tessellator.instance.startDrawingQuads(); Tessellator.instance.setNormal(0.0F, 1.0F, 0.0F); - renderPositiveYFacing(null, aRenderer, aBlock, 0, 0, 0, ((ITexturedBlock) aBlock).getTexture((byte) 1), true); + renderPositiveYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + ((ITexturedBlock) aBlock).getTexture(ForgeDirection.UP), + true); Tessellator.instance.draw(); Tessellator.instance.startDrawingQuads(); Tessellator.instance.setNormal(0.0F, 0.0F, -1.0F); - renderNegativeZFacing(null, aRenderer, aBlock, 0, 0, 0, ((ITexturedBlock) aBlock).getTexture((byte) 2), true); + renderNegativeZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + ((ITexturedBlock) aBlock).getTexture(ForgeDirection.NORTH), + true); Tessellator.instance.draw(); Tessellator.instance.startDrawingQuads(); Tessellator.instance.setNormal(0.0F, 0.0F, 1.0F); - renderPositiveZFacing(null, aRenderer, aBlock, 0, 0, 0, ((ITexturedBlock) aBlock).getTexture((byte) 3), true); + renderPositiveZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + ((ITexturedBlock) aBlock).getTexture(ForgeDirection.SOUTH), + true); Tessellator.instance.draw(); Tessellator.instance.startDrawingQuads(); Tessellator.instance.setNormal(-1.0F, 0.0F, 0.0F); - renderNegativeXFacing(null, aRenderer, aBlock, 0, 0, 0, ((ITexturedBlock) aBlock).getTexture((byte) 4), true); + renderNegativeXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + ((ITexturedBlock) aBlock).getTexture(ForgeDirection.WEST), + true); Tessellator.instance.draw(); Tessellator.instance.startDrawingQuads(); Tessellator.instance.setNormal(1.0F, 0.0F, 0.0F); - renderPositiveXFacing(null, aRenderer, aBlock, 0, 0, 0, ((ITexturedBlock) aBlock).getTexture((byte) 5), true); + renderPositiveXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + ((ITexturedBlock) aBlock).getTexture(ForgeDirection.EAST), + true); Tessellator.instance.draw(); aBlock.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F); aRenderer.setRenderBoundsFromBlock(aBlock); GL11.glTranslatef(0.5F, 0.5F, 0.5F); } + @Override public boolean renderWorldBlock(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, int aModelID, RenderBlocks aRenderer) { blockAccess = aWorld; return renderStandardBlock(aWorld, aX, aY, aZ, aBlock, aRenderer); } + @Override public boolean shouldRender3DInInventory(int aModel) { return true; } + @Override public int getRenderId() { return this.mRenderID; } diff --git a/src/main/java/gtPlusPlus/core/client/renderer/RenderBatKing.java b/src/main/java/gtPlusPlus/core/client/renderer/RenderBatKing.java index 1e6435038a..24cb3f1459 100644 --- a/src/main/java/gtPlusPlus/core/client/renderer/RenderBatKing.java +++ b/src/main/java/gtPlusPlus/core/client/renderer/RenderBatKing.java @@ -89,6 +89,7 @@ public class RenderBatKing extends RenderLiving { * (Render