Creates an inventory with the given number of slots. The number of slots must be higher than 0 and shorter than 2^16.
Constructs an inventory giving an array of slots. The length of the inventory will be the same as the given array.
Groups an item type into the given slot, if possible.
Concatenates two inventories (or an inventory and an array of slots) and returns a new one.
Matches the first occurence and returns the pointer to the slot. Paramenter types: string = checks for an item with the same name string[] = checks for an item with one of the names in the array Item = checks for an item with the same name and properties (custom name, enchantments, ...) Slot = checks for the item (see above) and the count of the item
Concatenates two inventories (or an inventory and an array of slots) and returns a new one.
Gets every slots of the inventory (0..$). This property should only be used when the full inventory is needed, otherwise opIndex should be used for getting a slot in a specific index or in a specific range.
Gets the size of the inventory.
Compares the inventory with an array of slots.
Gets every slots of the inventory (0..$). This property should only be used when the full inventory is needed, otherwise opIndex should be used for getting a slot in a specific index or in a specific range.
Gets the slot at the given index.
Gets the slots in a specific range.
Sets the slot at the given index.
Sets the slots in the given range.
Adds slot(s) to the inventory (if there's enough space). Note that this function will only mutate the the inventory's slots' content without mutating its length.
Removes slot(s) from the inventory. Parameter types: string = tries to remove items with the same name string[] = tries to remove items with one of the names in the array Item = tries to remove items with the same name and properties Slot = tries to remove items with the same name, properties and count
Performs a basic math operation on every slot's count in the inventory, if not empty.
Returns a string with representing the inventory and its array of slots.
Checks whether or not the inventory is empty.
Removes every item from inventory if empty is true.
Gets the size of the inventory.
auto inventory = new Inventory(10); // assign inventory[4] = Slot(new Items.Apple(), 12); inventory[5] = new Items.Apple(); // automatically add in the first empty slot inventory.add(new Items.Beetroot()); // fill inventory = new Items.Beetroot(); // an inventory can also be iterated foreach(ref Slot slot ; inventory) { d(slot); }
Basic inventory class with adding/removing/assigning/filling functions.