diff --git a/src/main/java/appeng/client/render/tesr/SkyChestTESR.java b/src/main/java/appeng/client/render/tesr/SkyChestTESR.java index 1aacc220..264c15f3 100644 --- a/src/main/java/appeng/client/render/tesr/SkyChestTESR.java +++ b/src/main/java/appeng/client/render/tesr/SkyChestTESR.java @@ -22,6 +22,7 @@ package appeng.client.render.tesr; import net.minecraft.client.model.ModelChest; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.util.EnumFacing; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; @@ -69,7 +70,6 @@ public class SkyChestTESR extends TileEntitySpecialRenderer } else { - // TODO 1.10.2-R - So this is weirdly half working. Either fix it or deal with it. if( te != null ) { this.bindTexture( ( (BlockSkyChest) te.getBlockType() ).type == SkyChestType.STONE ? TEXTURE_STONE : TEXTURE_BLOCK ); @@ -82,21 +82,34 @@ public class SkyChestTESR extends TileEntitySpecialRenderer GlStateManager.pushMatrix(); GlStateManager.enableRescaleNormal(); - - if( destroyStage < 0 ) - { - GlStateManager.color( 1.0F, 1.0F, 1.0F, 1.0F ); - } - + GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); GlStateManager.translate( (float) x, (float) y + 1.0F, (float) z + 1.0F ); GlStateManager.scale( 1.0F, -1.0F, -1.0F ); - GlStateManager.translate( 0.5F, 0.5F, 0.5F ); - if( te != null ) { - FacingToRotation.get( te.getForward(), te.getUp() ).glRotateCurrentMat(); + GlStateManager.translate( 0.5F, 0.5F, 0.5F ); + // In the vanilla chest model, north and south are flipped + EnumFacing forward = te.getForward(); + EnumFacing up = te.getUp(); + if( forward == EnumFacing.SOUTH ) + { + forward = EnumFacing.NORTH; + } + else if( forward == EnumFacing.NORTH ) + { + forward = EnumFacing.SOUTH; + } + if( up == EnumFacing.SOUTH ) + { + up = EnumFacing.NORTH; + } + else if( up == EnumFacing.NORTH ) + { + up = EnumFacing.SOUTH; + } + FacingToRotation.get( forward, up ).glRotateCurrentMat(); + GlStateManager.translate( -0.5F, -0.5F, -0.5F ); } - GlStateManager.translate( -0.5F, -0.5F, -0.5F ); float f = te != null ? te.getPrevLidAngle() + ( te.getLidAngle() - te.getPrevLidAngle() ) * partialTicks : 0; f = 1.0F - f; diff --git a/src/main/resources/assets/appliedenergistics2/blockstates/sky_stone_chest.json b/src/main/resources/assets/appliedenergistics2/blockstates/sky_stone_chest.json new file mode 100644 index 00000000..545ddbc3 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/blockstates/sky_stone_chest.json @@ -0,0 +1,6 @@ +{ + "__comment": "This block is rendered via TESR, so this is only used for the particle texture.", + "variants": { + "normal": { "model": "appliedenergistics2:sky_stone_block" } + } +} diff --git a/src/main/resources/assets/appliedenergistics2/blockstates/smooth_sky_stone_chest.json b/src/main/resources/assets/appliedenergistics2/blockstates/smooth_sky_stone_chest.json new file mode 100644 index 00000000..25560c93 --- /dev/null +++ b/src/main/resources/assets/appliedenergistics2/blockstates/smooth_sky_stone_chest.json @@ -0,0 +1,6 @@ +{ + "__comment": "This block is rendered via TESR, so this is only used for the particle texture.", + "variants": { + "normal": { "model": "appliedenergistics2:smooth_sky_stone_block" } + } +} diff --git a/src/main/resources/assets/appliedenergistics2/models/item/sky_stone_chest.json b/src/main/resources/assets/appliedenergistics2/models/item/sky_stone_chest.json index 5ea74cfa..e411fe53 100644 --- a/src/main/resources/assets/appliedenergistics2/models/item/sky_stone_chest.json +++ b/src/main/resources/assets/appliedenergistics2/models/item/sky_stone_chest.json @@ -35,8 +35,8 @@ }, { "name": "Knob", - "from": [ 7.0, 6.0, 0.0 ], - "to": [ 9.0, 10.0, 1.0 ], + "from": [ 7.0, 7.0, 0.0 ], + "to": [ 9.0, 11.0, 1.0 ], "shade": false, "faces": { "north": { "texture": "#0", "uv": [ 0.25, 0.25, 0.75, 1.25 ] }, diff --git a/src/main/resources/assets/appliedenergistics2/textures/models/skyblockchest.png b/src/main/resources/assets/appliedenergistics2/textures/models/skyblockchest.png index cd6cb14e..e6b7f80e 100644 Binary files a/src/main/resources/assets/appliedenergistics2/textures/models/skyblockchest.png and b/src/main/resources/assets/appliedenergistics2/textures/models/skyblockchest.png differ