public ItemStack transferStackInSlot(EntityPlayer player, int slotID) {
    ItemStack stack = null;
    Slot slot = (Slot) this.inventorySlots.get(slotID);

    if (slot != null && slot.getHasStack()) {
      ItemStack slotStack = slot.getStack();
      stack = slotStack.copy();

      if (slotID < logic.getSizeInventory()) {
        if (!this.mergeItemStack(
            slotStack, logic.getSizeInventory(), this.inventorySlots.size(), true)) {
          return null;
        }
      } else if (!this.mergeItemStack(slotStack, 0, logic.getSizeInventory(), false)) {
        return null;
      }

      if (slotStack.stackSize == 0) {
        slot.putStack((ItemStack) null);
      } else {
        slot.onSlotChanged();
      }
    }

    return stack;
  }
 public void updateProgressBar(int i, int j) {
   if (i == 0) {
     logic.progress = j;
   }
   if (i == 1) {
     logic.fuel = j;
   }
   if (i == 2) {
     logic.fuelGague = j;
   }
 }
 @Override
 public boolean canInteractWith(EntityPlayer entityplayer) {
   return logic.isUseableByPlayer(entityplayer);
 }