## Uses of Interface
net.minecraft.inventory.IInventory

- Packages that use IInventory
  Package | Description
  --- | ---
  cpw.mods.fml.common |
  cpw.mods.fml.common.modloader |
  cpw.mods.fml.common.registry |
  net.minecraft.block |
  net.minecraft.client.entity |
  net.minecraft.client.gui |
  net.minecraft.client.gui.inventory |
  net.minecraft.entity.item |
  net.minecraft.entity.player |
  net.minecraft.inventory |
  net.minecraft.src |
  net.minecraft.tileentity |
  net.minecraft.util |

- - ### Uses of IInventory in cpw.mods.fml.common

    Methods in cpw.mods.fml.common with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `void` | ICraftingHandler.`onCrafting(EntityPlayer player, ItemStack item, IInventory craftMatrix)` The object array contains these three arguments

  - ### Uses of IInventory in cpw.mods.fml.common.modloader

    Methods in cpw.mods.fml.common.modloader with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `void` | ModLoaderCraftingHelper.`onCrafting(EntityPlayer player, ItemStack item, IInventory craftMatrix)`
    `void` | BaseModProxy.`takenFromCrafting(EntityPlayer player, ItemStack item, IInventory craftMatrix)`

  - ### Uses of IInventory in cpw.mods.fml.common.registry

    Methods in cpw.mods.fml.common.registry with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `static void` | GameRegistry.`onItemCrafted(EntityPlayer player, ItemStack item, IInventory craftMatrix)`

  - ### Uses of IInventory in net.minecraft.block

    Methods in net.minecraft.block that return IInventory
    Modifier and Type | Method and Description
    --- | ---
    `IInventory` | BlockChest.`getInventory(World par1World, int par2, int par3, int par4)` Gets the inventory of the chest at the specified coords, accounting for blocks or ocelots on top of the chest, and double chests.

  - ### Uses of IInventory in net.minecraft.client.entity

    Methods in net.minecraft.client.entity with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `void` | EntityPlayerSP.`displayGUIChest(IInventory par1IInventory)` Displays the GUI for interacting with a chest inventory.
    `void` | EntityPlayerSP.`displayGUIHorse(EntityHorse par1EntityHorse, IInventory par2IInventory)`

  - ### Uses of IInventory in net.minecraft.client.gui

    Constructors in net.minecraft.client.gui with parameters of type IInventory
    Constructor and Description
    `GuiHopper(InventoryPlayer par1InventoryPlayer, IInventory par2IInventory)`

  - ### Uses of IInventory in net.minecraft.client.gui.inventory

    Constructors in net.minecraft.client.gui.inventory with parameters of type IInventory
    Constructor and Description
    `GuiChest(IInventory par1IInventory, IInventory par2IInventory)`
    `GuiScreenHorseInventory(IInventory par1IInventory, IInventory par2IInventory, EntityHorse par3EntityHorse)`

  - ### Uses of IInventory in net.minecraft.entity.item

    Classes in net.minecraft.entity.item that implement IInventory
    Modifier and Type | Class and Description
    --- | ---
    `class` | `EntityMinecartChest`
    `class` | `EntityMinecartContainer`
    `class` | `EntityMinecartHopper`

  - ### Uses of IInventory in net.minecraft.entity.player

    Classes in net.minecraft.entity.player that implement IInventory
    Modifier and Type | Class and Description
    --- | ---
    `class` | `InventoryPlayer`

    Methods in net.minecraft.entity.player with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `void` | EntityPlayerMP.`displayGUIChest(IInventory par1IInventory)` Displays the GUI for interacting with a chest inventory.
    `void` | EntityPlayer.`displayGUIChest(IInventory par1IInventory)` Displays the GUI for interacting with a chest inventory.
    `void` | EntityPlayerMP.`displayGUIHorse(EntityHorse par1EntityHorse, IInventory par2IInventory)`
    `void` | EntityPlayer.`displayGUIHorse(EntityHorse par1EntityHorse, IInventory par2IInventory)`

  - ### Uses of IInventory in net.minecraft.inventory

    Subinterfaces of IInventory in net.minecraft.inventory
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `ISidedInventory`

    Classes in net.minecraft.inventory that implement IInventory
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AnimalChest`
    `class` | `InventoryBasic`
    `class` | `InventoryCrafting`
    `class` | `InventoryCraftResult`
    `class` | `InventoryEnderChest`
    `class` | `InventoryLargeChest`
    `class` | `InventoryMerchant`

    Fields in net.minecraft.inventory declared as IInventory
    Modifier and Type | Field and Description
    --- | ---
    `IInventory` | ContainerWorkbench.`craftResult`
    `IInventory` | ContainerPlayer.`craftResult`
    `IInventory` | Slot.`inventory` The inventory we want to extract a slot from.
    `IInventory` | ContainerEnchantment.`tableInventory` SlotEnchantmentTable object with ItemStack to be enchanted

    Methods in net.minecraft.inventory that return IInventory
    Modifier and Type | Method and Description
    --- | ---
    `IInventory` | ContainerChest.`getLowerChestInventory()` Return this chest container's lower chest inventory.

    Methods in net.minecraft.inventory with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `static int` | Container.`calcRedstoneFromInventory(IInventory par0IInventory)`
    `Slot` | Container.`getSlotFromInventory(IInventory par1IInventory, int par2)`
    `boolean` | InventoryLargeChest.`isPartOfLargeChest(IInventory par1IInventory)` Return whether the given inventory is part of this large chest.
    `boolean` | Slot.`isSlotInInventory(IInventory par1IInventory, int par2)` returns true if this slot is in par2 of par1
    `void` | ContainerRepair.`onCraftMatrixChanged(IInventory par1IInventory)` Callback for when the crafting matrix is changed.
    `void` | ContainerEnchantment.`onCraftMatrixChanged(IInventory par1IInventory)` Callback for when the crafting matrix is changed.
    `void` | ContainerWorkbench.`onCraftMatrixChanged(IInventory par1IInventory)` Callback for when the crafting matrix is changed.
    `void` | ContainerMerchant.`onCraftMatrixChanged(IInventory par1IInventory)` Callback for when the crafting matrix is changed.
    `void` | ContainerPlayer.`onCraftMatrixChanged(IInventory par1IInventory)` Callback for when the crafting matrix is changed.
    `void` | Container.`onCraftMatrixChanged(IInventory par1IInventory)` Callback for when the crafting matrix is changed.

    Constructors in net.minecraft.inventory with parameters of type IInventory
    Constructor and Description
    `ContainerChest(IInventory par1IInventory, IInventory par2IInventory)`
    `ContainerDispenser(IInventory par1IInventory, TileEntityDispenser par2TileEntityDispenser)`
    `ContainerHopper(InventoryPlayer par1InventoryPlayer, IInventory par2IInventory)`
    `ContainerHorseInventory(IInventory par1IInventory, IInventory par2IInventory, EntityHorse par3EntityHorse)`
    `InventoryLargeChest(String par1Str, IInventory par2IInventory, IInventory par3IInventory)`
    `Slot(IInventory par1IInventory, int par2, int par3, int par4)`
    `SlotCrafting(EntityPlayer par1EntityPlayer, IInventory par2IInventory, IInventory par3IInventory, int par4, int par5, int par6)`
    `SlotFurnace(EntityPlayer par1EntityPlayer, IInventory par2IInventory, int par3, int par4, int par5)`

  - ### Uses of IInventory in net.minecraft.src

    Methods in net.minecraft.src with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `void` | BaseMod.`takenFromCrafting(EntityPlayer player, ItemStack item, IInventory matrix)` Called when someone crafts an item from a crafting table
    `static void` | ModLoader.`takenFromCrafting(EntityPlayer player, ItemStack item, IInventory matrix)` Deprecated.

  - ### Uses of IInventory in net.minecraft.tileentity

    Subinterfaces of IInventory in net.minecraft.tileentity
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Hopper`

    Classes in net.minecraft.tileentity that implement IInventory
    Modifier and Type | Class and Description
    --- | ---
    `class` | `TileEntityBeacon`
    `class` | `TileEntityBrewingStand`
    `class` | `TileEntityChest`
    `class` | `TileEntityDispenser`
    `class` | `TileEntityDropper`
    `class` | `TileEntityFurnace`
    `class` | `TileEntityHopper`

    Methods in net.minecraft.tileentity that return IInventory
    Modifier and Type | Method and Description
    --- | ---
    `static IInventory` | TileEntityHopper.`getInventoryAboveHopper(Hopper par0Hopper)` Looks for anything, that can hold items (like chests, furnaces, etc.) one block above the given hopper.
    `static IInventory` | TileEntityHopper.`getInventoryAtLocation(World par0World, double par1, double par3, double par5)` Gets an inventory at the given location to extract items into or take items from.

    Methods in net.minecraft.tileentity with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `static ItemStack` | TileEntityHopper.`insertStack(IInventory par0IInventory, ItemStack par1ItemStack, int par2)` Inserts a stack into an inventory.
    `static boolean` | TileEntityHopper.`insertStackFromEntity(IInventory par0IInventory, EntityItem par1EntityItem)`

  - ### Uses of IInventory in net.minecraft.util

    Methods in net.minecraft.util with parameters of type IInventory
    Modifier and Type | Method and Description
    --- | ---
    `static void` | WeightedRandomChestContent.`generateChestContents(Random par0Random, WeightedRandomChestContent[] par1ArrayOfWeightedRandomChestContent, IInventory par2IInventory, int par3)` Generates the Chest contents.