@Override public void rotateLeft(BptSlotInfo slot, IBptContext context) { ItemStack inv[] = BptBlockUtils.getItemStacks(slot, context); ItemStack newInv[] = new ItemStack[54]; for (int dir = 0; dir <= 1; ++dir) { for (int s = 0; s < 9; ++s) { newInv[dir * 9 + s] = inv[dir * 9 + s]; } } for (int dir = 2; dir <= 5; ++dir) { ForgeDirection r = ForgeDirection.values()[dir].getRotation(ForgeDirection.DOWN); for (int s = 0; s < 9; ++s) { newInv[r.ordinal() * 9 + s] = inv[dir * 9 + s]; } } BptBlockUtils.setItemStacks(slot, context, newInv); }
@Override public void buildBlock(BptSlotInfo slot, IBptContext context) { IInventory inventory = (IInventory) context.world().getBlockTileEntity(slot.x, slot.y, slot.z); BptBlockUtils.buildInventoryContents(slot, context, inventory); }
@Override public void initializeFromWorld(BptSlotInfo bptSlot, IBptContext context, int x, int y, int z) { IInventory inventory = (IInventory) context.world().getBlockTileEntity(x, y, z); BptBlockUtils.initializeInventoryContents(bptSlot, context, inventory); }