Buggy code:
public class TileCrystalSeparator extends TileEntity implements ISidedInventory { private static String machineName = "Crystal<seq2seq4repair_space>Separator" ; private ArrayList < TileHexoriumGenerator > machinesHexoriumGenerator ; private int [ ] machinesHexoriumGeneratorX ; private int [ ] machinesHexoriumGeneratorY ; private int [ ] machinesHexoriumGeneratorZ ; private static final int [ ] slotsTop = new int [ ] { 0 } ; private static final int [ ] slotsSide = new int [ ] { 1 } ; private static final int [ ] slotsBlank = new int [ ] { 2 } ; private ItemStack [ ] machineItemStacks = new ItemStack [ 3 ] ; public static int energyPerTick = 32 ; private static float energyTotal = 6400 ; private float energy ; private float energyIn ; private static int energyTotalGui = ( ( int ) ( TileCrystalSeparator . energyTotal ) ) // ( TileCrystalSeparator . energyPerTick ) ; public int energyGui ; public int energyInGui ; private boolean firstTick = false ; private boolean hasEnergy = false ; public boolean isActive = false ; private int usableGenerators = 0 ; @ Override public void openInventory ( ) { } @ Override public void closeInventory ( ) { } @ Override public int getSizeInventory ( ) { } @ Override public ItemStack getStackInSlot ( int slot ) { } @ Override public ItemStack decrStackSize ( int slot , int count ) { } @ Override public ItemStack getStackInSlotOnClosing ( int slot ) { } @ Override public void setInventorySlotContents ( int slot , ItemStack itemStack ) { } @ Override public int getInventoryStackLimit ( ) { } @ Override public int [ ] getAccessibleSlotsFromSide ( int side ) { <START_BUG> int meta = worldObj . getBlockMetadata ( xCoord , yCoord , zCoord ) ; <END_BUG> if ( ( meta >= 4 ) && ( meta < 8 ) ) meta -= 4 ; else if ( meta >= 8 ) meta -= 8 ; if ( side == 1 ) return TileCrystalSeparator . slotsTop ; else if ( ( side == 2 ) && ( meta == 0 ) ) return TileCrystalSeparator . slotsSide ; else if ( ( side == 3 ) && ( meta == 2 ) ) return TileCrystalSeparator . slotsSide ; else if ( ( side == 4 ) && ( meta == 3 ) ) return TileCrystalSeparator . slotsSide ; else if ( ( side == 5 ) && ( meta == 1 ) ) return TileCrystalSeparator . slotsSide ; else return TileCrystalSeparator . slotsBlank ; } @ Override public boolean canInsertItem ( int slot , ItemStack itemstack , int par3 ) { } @ Override public boolean isItemValidForSlot ( int slot , ItemStack itemstack ) { } @ Override public boolean canExtractItem ( int par1 , ItemStack itemstack , int par3 ) { } @ Override public String getInventoryName ( ) { } @ Override public boolean hasCustomInventoryName ( ) { } @ Override public boolean isUseableByPlayer ( EntityPlayer player ) { } @ Override public void readFromNBT ( NBTTagCompound tagCompound ) { } @ Override public void writeToNBT ( NBTTagCompound tagCompound ) { } @ Override public void updateEntity ( ) { } public boolean startMachine ( ) { } public void stopMachine ( ) { } public void restartMachineStop ( ) { } public void restartMachineStart ( ) { } private void checkEnergy ( ) { } public void stopProcessing ( ) { } public void injectMachines ( ArrayList < TileHexoriumGenerator > incomingMachines ) { } private boolean canProcess ( ) { } public void processItem ( ) { } @ SideOnly ( Side . CLIENT ) public int getEnergyScaled ( int length ) { } }

Fix:
int meta = blockMetadata ;