This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
component:inventory_controller [2015/02/07 01:28] shawniac |
component:inventory_controller [2016/04/13 12:34] shogun |
||
---|---|---|---|
Line 12: | Line 12: | ||
- `getInventorySize(side: number): number or nil[, string]` | - `getInventorySize(side: number): number or nil[, string]` | ||
- | Returns the size of the inventory at the specified side. | + | Returns the size of the inventory at the specified side. |
**side** - must be a valid side. | **side** - must be a valid side. | ||
**Returns:** the size of the inventory, or `nil` followed by a description why this function failed (usually `no inventory`). | **Returns:** the size of the inventory, or `nil` followed by a description why this function failed (usually `no inventory`). | ||
- `getStackInSlot(side:number, slot:number):table` | - `getStackInSlot(side:number, slot:number):table` | ||
- | Returns a table describing the item in the specified slot or nil. | + | Returns a table describing the item in the specified slot or nil. Deprecated for getting info about robot's own inventory, see `getStackInInternalSlot`. |
**side** - must be a valid side. | **side** - must be a valid side. | ||
**slot** - the slot to analyze. This does not check the inventory size and will consider slots outside the inventory bounds to be empty. | **slot** - the slot to analyze. This does not check the inventory size and will consider slots outside the inventory bounds to be empty. | ||
Line 27: | Line 27: | ||
- **name**:string - the **untranslated** item name, which is an internal Minecraft value like `oc:item.FloppyDisk` | - **name**:string - the **untranslated** item name, which is an internal Minecraft value like `oc:item.FloppyDisk` | ||
- **hasTag**:boolean - whether or not the item has an NBT tag associated with it. | - **hasTag**:boolean - whether or not the item has an NBT tag associated with it. | ||
+ | - `getStackInInternalSlot(slot:number):table` | ||
+ | Gets Itemstack description of item in specified or selected slot (if no input provided) of robot inventory. | ||
- `dropIntoSlot(side:number, slot:number[, count:number]):boolean[, string]` | - `dropIntoSlot(side:number, slot:number[, count:number]):boolean[, string]` | ||
Puts up to count items from the currently selected slot into the specified slot of the inventory at the specified side. | Puts up to count items from the currently selected slot into the specified slot of the inventory at the specified side. | ||
Line 46: | Line 48: | ||
**Returns:** `true` if the items were swapped, `false` otherwise. This operation usually succeeds. | **Returns:** `true` if the items were swapped, `false` otherwise. This operation usually succeeds. | ||
Note that you can put any kind of item into the robot's tool slot, not only tools, even items that the robot cannot use at all. | Note that you can put any kind of item into the robot's tool slot, not only tools, even items that the robot cannot use at all. | ||
+ | - `store(side:number, slot:number, dbAddress:string, dbSlot:number):boolean` | ||
+ | Stores the Itemstack description of the item from the specified slot in an inventory on the specified side, into a specified database slot with the specified address. | ||
+ | - `storeInternal(slot:number, dbAddress:string, dBslot:number):boolean` | ||
+ | Stores Itemstack description of item in specified robot inventory slot into specified database slot with the specified database address. | ||
+ | - `compareToDatabase(slot:number, dBaddress:string, dBslot:number):boolean` | ||
+ | Compare Itemstack description in specified slot with one in specified slot of a database with specified address. Returns **true** if items match. | ||
+ | - `compareStacks(side:number, slotA:number, slotB:number):boolean` | ||
+ | Checks to see if Itemstack descriptions in specified slotA and slotB of inventory on specified side match. Returns **true** if identical. | ||
+ | - `getSlotMaxStackSize(side:number, slot:number):number` | ||
+ | Gets maximum number of items in specified slot in inventory on the specified side. | ||
+ | - `getSlotStackSize(side:number, slot:number):number` | ||
+ | Gets number of items in specified slot in inventory on the specified side. | ||
+ | |||
Example: | Example: | ||
Line 56: | Line 71: | ||
local slot = 1 | local slot = 1 | ||
- | local item = component.inventory_controller.getStackInSlot(sides.back, slot) | + | local item = component.inventory_controller.getStackInInternalSlot(slot) |
if item then | if item then |