/** Adds the item stack to the inventory, returns false if it is impossible. */ public boolean addItemStackToInventory(ItemStack par1ItemStack) { if (par1ItemStack == null || !Vars.isActor) // prevents everyone from picking up things except for actors { return false; } else { try { int var2; if (par1ItemStack.isItemDamaged()) { var2 = this.getFirstEmptyStack(); if (var2 >= 0) { this.mainInventory[var2] = ItemStack.copyItemStack(par1ItemStack); this.mainInventory[var2].animationsToGo = 5; par1ItemStack.stackSize = 0; return true; } else if (this.player.capabilities.isCreativeMode) { par1ItemStack.stackSize = 0; return true; } else { return false; } } else { do { var2 = par1ItemStack.stackSize; par1ItemStack.stackSize = this.storePartialItemStack(par1ItemStack); } while (par1ItemStack.stackSize > 0 && par1ItemStack.stackSize < var2); if (par1ItemStack.stackSize == var2 && this.player.capabilities.isCreativeMode) { par1ItemStack.stackSize = 0; return true; } else { return par1ItemStack.stackSize < var2; } } } catch (Throwable var5) { CrashReport var3 = CrashReport.makeCrashReport(var5, "Adding item to inventory"); CrashReportCategory var4 = var3.makeCategory("Item being added"); var4.addCrashSection("Item ID", Integer.valueOf(par1ItemStack.itemID)); var4.addCrashSection("Item data", Integer.valueOf(par1ItemStack.getItemDamage())); var4.addCrashSectionCallable("Item name", new CallableItemName(this, par1ItemStack)); throw new ReportedException(var3); } } }
public boolean addItemStackToInventory(ItemStack itemstack) { if (!itemstack.isItemDamaged()) { int i; do { i = itemstack.stackSize; itemstack.stackSize = func_21083_d(itemstack); } while (itemstack.stackSize > 0 && itemstack.stackSize < i); return itemstack.stackSize < i; } int j = getFirstEmptyStack(); if (j >= 0) { mainInventory[j] = ItemStack.func_20117_a(itemstack); mainInventory[j].animationsToGo = 5; itemstack.stackSize = 0; return true; } else { return false; } }