diff --git a/src/main/java/com/zixiken/dimdoors/CommonProxy.java b/src/main/java/com/zixiken/dimdoors/CommonProxy.java index 57fa5bdd..19e75b3a 100644 --- a/src/main/java/com/zixiken/dimdoors/CommonProxy.java +++ b/src/main/java/com/zixiken/dimdoors/CommonProxy.java @@ -71,10 +71,9 @@ public class CommonProxy { public void updateDoorTE(BaseDimDoor door, World world, BlockPos pos) { TileEntity tile = world.getTileEntity(pos); if (tile instanceof TileEntityDimDoor) { - IBlockState state = world.getBlockState(pos); TileEntityDimDoor dimTile = (TileEntityDimDoor) tile; - dimTile.openOrClosed = door.isDoorOnRift(world, pos) && !door.isUpperDoorBlock(state); - dimTile.orientation = state.getValue(BlockDoor.FACING).rotateY(); + dimTile.openOrClosed = door.isDoorOnRift(world, pos) && door.isUpperDoorBlock(world.getBlockState(pos)); + dimTile.orientation = world.getBlockState(pos.down()).getValue(BlockDoor.FACING).rotateY(); //if(state.getValue(BlockDoor.OPEN)) dimTile.orientation |= 4; dimTile.lockStatus = door.getLockStatus(world, pos); } diff --git a/src/main/java/com/zixiken/dimdoors/blocks/BaseDimDoor.java b/src/main/java/com/zixiken/dimdoors/blocks/BaseDimDoor.java index de9415a6..83b851f3 100644 --- a/src/main/java/com/zixiken/dimdoors/blocks/BaseDimDoor.java +++ b/src/main/java/com/zixiken/dimdoors/blocks/BaseDimDoor.java @@ -65,15 +65,15 @@ public abstract class BaseDimDoor extends BlockDoor implements IDimDoor, ITileEn } @Override - public boolean hasTileEntity(IBlockState state) {return state.getValue(BlockDoor.HALF) == EnumDoorHalf.LOWER;} + public boolean hasTileEntity(IBlockState state) {return state.getValue(BlockDoor.HALF) == EnumDoorHalf.UPPER;} @Override public void onBlockAdded(World world, BlockPos pos, IBlockState state) { - if(state.getValue(BlockDoor.HALF) == EnumDoorHalf.UPPER) placeLink(world, pos); - else { - world.setTileEntity(pos, createNewTileEntity(world, 0)); - updateAttachedTile(world, pos); - } + if(state.getValue(BlockDoor.HALF) == EnumDoorHalf.UPPER) { + placeLink(world, pos); + world.setTileEntity(pos, createNewTileEntity(world, 0)); + updateAttachedTile(world, pos); + } } //Called to update the render information on the tile entity. Could probably implement a data watcher, diff --git a/src/main/java/com/zixiken/dimdoors/client/RenderDimDoor.java b/src/main/java/com/zixiken/dimdoors/client/RenderDimDoor.java index 5ec72f96..6aa1b776 100644 --- a/src/main/java/com/zixiken/dimdoors/client/RenderDimDoor.java +++ b/src/main/java/com/zixiken/dimdoors/client/RenderDimDoor.java @@ -139,26 +139,26 @@ public class RenderDimDoor extends TileEntitySpecialRenderer case SOUTH: worldRenderer.pos(x + .01, y - 1, z).endVertex(); worldRenderer.pos(x + .01, y - 1, z + 1.0D).endVertex(); - worldRenderer.pos(x + .01, y + 2, z + 1.0D).endVertex(); - worldRenderer.pos(x + .01, y + 2, z).endVertex(); + worldRenderer.pos(x + .01, y + 1, z + 1.0D).endVertex(); + worldRenderer.pos(x + .01, y + 1, z).endVertex(); break; case WEST: - worldRenderer.pos(x, y + 2, z + .01).endVertex(); - worldRenderer.pos(x + 1, y + 2, z + .01).endVertex(); + worldRenderer.pos(x, y + 1, z + .01).endVertex(); + worldRenderer.pos(x + 1, y + 1, z + .01).endVertex(); worldRenderer.pos(x + 1, y -1, z + .01).endVertex(); worldRenderer.pos(x, y -1, z + .01).endVertex(); break; case NORTH: - worldRenderer.pos(x + .99, y + 2, z).endVertex(); - worldRenderer.pos(x + .99, y + 2, z + 1.0D).endVertex(); + worldRenderer.pos(x + .99, y + 1, z).endVertex(); + worldRenderer.pos(x + .99, y + 1, z + 1.0D).endVertex(); worldRenderer.pos(x + .99, y - 1, z + 1.0D).endVertex(); worldRenderer.pos(x + .99, y - 1, z).endVertex(); break; case EAST: worldRenderer.pos(x, y -1, z + .99).endVertex(); worldRenderer.pos(x + 1, y -1, z + .99).endVertex(); - worldRenderer.pos(x + 1, y + 2, z + .99).endVertex(); - worldRenderer.pos(x, y + 2, z + .99).endVertex(); + worldRenderer.pos(x + 1, y + 1, z + .99).endVertex(); + worldRenderer.pos(x, y + 1, z + .99).endVertex(); break; /*case 4: GL11.glVertex3d(x + .15F, y - 1 , z);