AlgorithmX2 2014-06-09 21:22:35 -05:00
parent 77f9a22d03
commit a73109b62e
2 changed files with 38 additions and 29 deletions

View file

@ -134,7 +134,10 @@ public class PartAnnihilationPlane extends PartBasicState implements IGridTickab
int maxX = 15; int maxX = 15;
int maxY = 15; int maxY = 15;
TileEntity te = getHost().getTile(); IPartHost host = getHost();
if ( host != null )
{
TileEntity te = host.getTile();
int x = te.xCoord; int x = te.xCoord;
int y = te.yCoord; int y = te.yCoord;
@ -154,6 +157,7 @@ public class PartAnnihilationPlane extends PartBasicState implements IGridTickab
if ( isTransitionPlane( te.getWorldObj().getTileEntity( x + u.offsetX, y + u.offsetY, z + u.offsetZ ), side ) ) if ( isTransitionPlane( te.getWorldObj().getTileEntity( x + u.offsetX, y + u.offsetY, z + u.offsetZ ), side ) )
maxY = 16; maxY = 16;
}
bch.addBox( 5, 5, 14, 11, 11, 15 ); bch.addBox( 5, 5, 14, 11, 11, 15 );
bch.addBox( minX, minY, 15, maxX, maxY, bch.isBBCollision() ? 15 : 16 ); bch.addBox( minX, minY, 15, maxX, maxY, bch.isBBCollision() ? 15 : 16 );

View file

@ -201,7 +201,10 @@ public class PartFormationPlane extends PartUpgradeable implements ICellContaine
int maxX = 15; int maxX = 15;
int maxY = 15; int maxY = 15;
TileEntity te = getHost().getTile(); IPartHost host = getHost();
if ( host != null )
{
TileEntity te = host.getTile();
int x = te.xCoord; int x = te.xCoord;
int y = te.yCoord; int y = te.yCoord;
@ -221,6 +224,7 @@ public class PartFormationPlane extends PartUpgradeable implements ICellContaine
if ( isTransitionPlane( te.getWorldObj().getTileEntity( x + u.offsetX, y + u.offsetY, z + u.offsetZ ), side ) ) if ( isTransitionPlane( te.getWorldObj().getTileEntity( x + u.offsetX, y + u.offsetY, z + u.offsetZ ), side ) )
maxY = 16; maxY = 16;
}
bch.addBox( 5, 5, 14, 11, 11, 15 ); bch.addBox( 5, 5, 14, 11, 11, 15 );
bch.addBox( minX, minY, 15, maxX, maxY, 16 ); bch.addBox( minX, minY, 15, maxX, maxY, 16 );
@ -399,7 +403,8 @@ public class PartFormationPlane extends PartUpgradeable implements ICellContaine
side.offsetX, side.offsetY, side.offsetZ ); side.offsetX, side.offsetY, side.offsetZ );
if ( Worked == false && side.offsetX == 0 && side.offsetZ == 0 ) if ( Worked == false && side.offsetX == 0 && side.offsetZ == 0 )
Worked = i.onItemUse( is, player, w, x-side.offsetX, y-side.offsetY, z-side.offsetZ, side.ordinal(), side.offsetX, side.offsetY, side.offsetZ ); Worked = i.onItemUse( is, player, w, x - side.offsetX, y - side.offsetY, z - side.offsetZ, side.ordinal(), side.offsetX,
side.offsetY, side.offsetZ );
if ( Worked == false && side.offsetY == 0 ) if ( Worked == false && side.offsetY == 0 )
Worked = i.onItemUse( is, player, w, x, y - 1, z, ForgeDirection.UP.ordinal(), side.offsetX, side.offsetY, side.offsetZ ); Worked = i.onItemUse( is, player, w, x, y - 1, z, ForgeDirection.UP.ordinal(), side.offsetX, side.offsetY, side.offsetZ );