001 package net.minecraft.inventory; 002 003 import net.minecraft.entity.player.EntityPlayer; 004 import net.minecraft.item.ItemStack; 005 006 public interface IInventory 007 { 008 /** 009 * Returns the number of slots in the inventory. 010 */ 011 int getSizeInventory(); 012 013 /** 014 * Returns the stack in slot i 015 */ 016 ItemStack getStackInSlot(int var1); 017 018 /** 019 * Removes from an inventory slot (first arg) up to a specified number (second arg) of items and returns them in a 020 * new stack. 021 */ 022 ItemStack decrStackSize(int var1, int var2); 023 024 /** 025 * When some containers are closed they call this on each slot, then drop whatever it returns as an EntityItem - 026 * like when you close a workbench GUI. 027 */ 028 ItemStack getStackInSlotOnClosing(int var1); 029 030 /** 031 * Sets the given item stack to the specified slot in the inventory (can be crafting or armor sections). 032 */ 033 void setInventorySlotContents(int var1, ItemStack var2); 034 035 /** 036 * Returns the name of the inventory. 037 */ 038 String getInvName(); 039 040 /** 041 * Returns the maximum stack size for a inventory slot. Seems to always be 64, possibly will be extended. *Isn't 042 * this more of a set than a get?* 043 */ 044 int getInventoryStackLimit(); 045 046 /** 047 * Called when an the contents of an Inventory change, usually 048 */ 049 void onInventoryChanged(); 050 051 /** 052 * Do not make give this method the name canInteractWith because it clashes with Container 053 */ 054 boolean isUseableByPlayer(EntityPlayer var1); 055 056 void openChest(); 057 058 void closeChest(); 059 }