diff --git a/src/main/java/appeng/block/storage/BlockDrive.java b/src/main/java/appeng/block/storage/BlockDrive.java index 737fdac08..58cd93e05 100644 --- a/src/main/java/appeng/block/storage/BlockDrive.java +++ b/src/main/java/appeng/block/storage/BlockDrive.java @@ -74,13 +74,8 @@ public class BlockDrive extends AEBaseTileBlock public IBlockState getExtendedState( IBlockState state, IBlockAccess world, BlockPos pos ) { TileDrive te = this.getTileEntity( world, pos ); - if( te == null ) - { - return super.getExtendedState( state, world, pos ); - } - IExtendedBlockState extState = (IExtendedBlockState) super.getExtendedState( state, world, pos ); - return extState.withProperty( SLOTS_STATE, DriveSlotsState.fromChestOrDrive( te ) ); + return extState.withProperty( SLOTS_STATE, te == null ? DriveSlotsState.createEmpty( 10 ) : DriveSlotsState.fromChestOrDrive( te ) ); } @Override diff --git a/src/main/java/appeng/block/storage/DriveSlotsState.java b/src/main/java/appeng/block/storage/DriveSlotsState.java index f72559b1b..48a6d4d74 100644 --- a/src/main/java/appeng/block/storage/DriveSlotsState.java +++ b/src/main/java/appeng/block/storage/DriveSlotsState.java @@ -75,4 +75,14 @@ public class DriveSlotsState } return new DriveSlotsState( slots ); } + + public static DriveSlotsState createEmpty( int slotCount ) + { + DriveSlotState[] slots = new DriveSlotState[slotCount]; + for( int i = 0; i < slotCount; i++ ) + { + slots[i] = DriveSlotState.EMPTY; + } + return new DriveSlotsState( slots ); + } }