|
ActionAdventureKit 1.9.3
|
base class for inventories, inventories manages items and the slots they are equipped to
in addition to the simple unlimited ListedInventory a possible use cases could be a re4 style case where item stacks have a position and are limited
Public Member Functions | |
| virtual void | Initialize (CharacterBase character) |
| initializes the inventory including retrieving persisted data | |
| virtual bool | HasItem (ItemBase item) |
| checks whether the item exists in the inventory, regardless of quantity(may be 0 for stacked items to indicate they have been added at some point) | |
| virtual bool | HasItemQuantity (ItemBase item, int quantity=1) |
| checks if the inventory has at least the passed quantity of an item | |
| virtual InventoryItem | GetItem (ItemBase item) |
| retrieves the first inventory item for a specified item | |
| virtual IEnumerable< InventoryItem > | GetItems (ItemBase item) |
| retrieves all inventory items for a specified item multiple entries may be resturned for items that dont stack- or when the inventory has a maximum stack size | |
| virtual IEnumerable< InventoryItem > | GetItems (ItemCategory itemCategory=null, ItemSlotCategory itemSlotCategory=null) |
| retrieves all inventory items for a specific category or slot | |
| virtual int | GetQuantity (ItemBase item) |
| calculates the total stored quantity of an item | |
| virtual int | GetQuantity (ItemCategory itemCategory=null, ItemSlotCategory itemSlotCategory=null) |
| calculates the total stored quantity of items filtered by an item category and/or slot | |
| virtual bool | CanAddItems (ItemQuantity itemQuantity, bool fully=true) |
| whether an item quantity can be added to the inventory may be false when the quantity exceeds the capacity | |
| virtual int | AddItems (ItemQuantity itemQuantity) |
| adds a quantity of an item to the inventory | |
| virtual bool | CanRemoveItems (ItemQuantity itemQuantity, bool fully=true) |
| whether a quantity of items is present and can be removed | |
| virtual int | RemoveItems (ItemQuantity itemQuantity) |
| removes a quantity of items | |
| virtual bool | CanRemoveItems (InventoryItem inventoryItem, int quantity=1, bool fully=true) |
| whether a quantity of items is present and can be removed from an inventory item | |
| virtual int | RemoveItems (InventoryItem inventoryItem, int quantity=1) |
| removes specified quantity from the inventory item | |
| virtual void | Clear () |
| unequips and removes all items from the inventory | |
| virtual bool | CanUseItems (InventoryItem inventoryItem, int quantity=1) |
| check if a quantity of an inventory item can be used | |
| virtual void | UseItems (InventoryItem inventoryItem, int quantity=1) |
| uses a quantity of an inventory item can be used | |
| virtual bool | CanEquipItems (InventoryItem inventoryItem, int? index=null) |
| checks if an inventory item can be equipped | |
| virtual ItemSlotBase | EquipItems (InventoryItem inventoryItem, int? index=null) |
| equipps an inventory item to a slot | |
| virtual bool | CanUnequipItems (InventoryItem inventoryItem) |
| checks if an inventory item can be unequipped | |
| virtual ItemSlotBase | UnequipItems (InventoryItem inventoryItem) |
| unequips an inventory item | |
| void | SetItemStringValue (InventoryItem inventoryItem, string key, string value) |
| string | GetItemStringValue (InventoryItem inventoryItem, string key, string defaultValue) |
| void | SetItemIntValue (InventoryItem inventoryItem, string key, int value) |
| int | GetItemIntValue (InventoryItem inventoryItem, string key, int defaultValue) |
| void | SetItemFloatValue (InventoryItem inventoryItem, string key, float value) |
| float | GetItemFloatValue (InventoryItem inventoryItem, string key, float defaultValue) |
| void | SetItemBoolValue (InventoryItem inventoryItem, string key, bool value) |
| bool | GetItemBoolValue (InventoryItem inventoryItem, string key, bool defaultValue) |
| virtual bool | CheckItemValue (InventoryItem inventoryItem, string key) |
| virtual void | SetItemValue< T > (InventoryItem inventoryItem, string key, T value) |
| virtual T | GetItemValue< T > (InventoryItem inventoryItem, string key, T defaultValue) |
| virtual ItemSlotBase | GetSlot (ItemSlotCategory category, int? index=0) |
| retrieves an item slot by its category | |
| virtual ItemSlotBase | GetSlot (ItemBase item, int? index=0) |
| retrieves an item slot for the passed item | |
| virtual T | GetSlot< T > (int? index=0) |
| retrieves an item slot by its type | |
| virtual ItemSlotBase | GetEmptySlot (ItemSlotCategory category, int? index=null) |
| retrieves an empty item slot by its category | |
| virtual ItemSlotBase | GetEmptySlot (ItemBase item, int? index=null) |
| retrieves an empty item slot for the passed item | |
| virtual T | GetEmptySlot< T > (int? index=null) |
| retrieves an empty item slot by its type | |
| virtual int | GetCapacity (ItemBase item) |
| virtual int | GetRemainingCapacity (ItemBase item) |
| bool | Retrieve () |
| fills inventory with data retrieved from persister | |
| void | Persist () |
| saves inventory data to persister | |
Public Attributes | |
| PersisterBase | Persister |
| bool | PersistManual |
| ItemSet | ItemSet |
| bool | EquipOnAdded |
| bool | UnequipOnEmpty |
| ItemSlotBase[] | Slots |
| List< ItemQuantity > | Capacities |
| UnityEvent< ItemQuantity > | Changing |
| UnityEvent< ItemQuantity > | Changed |
| UnityEvent< ItemSlotBase > | EquipmentChanged |
Static Public Attributes | |
| const string | PERSISTENCE_SUB_KEY = "INV" |
Protected Member Functions | |
| virtual void | onItemsChanging (ItemQuantity itemQuantity) |
| virtual void | onItemsChanged (ItemQuantity itemQuantity) |
| virtual void | onItemValueChanged (InventoryItem inventoryItem, string key) |
| int | add (ItemQuantity itemQuantity) |
| void | remove (InventoryItem inventoryItem) |
| void | clear () |
Protected Attributes | |
| bool | _isInitialized |
| bool | _isChanging |
Properties | |
| CharacterBase | Character [get] |
| IReadOnlyList< InventoryItem > | InventoryItems [get] |
|
inlinevirtual |
adds a quantity of an item to the inventory
| itemQuantity | how much and what to add to the inventory |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
whether an item quantity can be added to the inventory
may be false when the quantity exceeds the capacity
| itemQuantity | the item and quantity to check |
| fully | if the quantity has to be stored entirely |
Reimplemented in AdventureCore.ListedInventorySurrogate, AdventureCore.TiledInventory, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
checks if an inventory item can be equipped
| inventoryItem | the inventory item to equip |
| index | index of the slot to equip to if there are multiple(for example left/right arm in souls) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
whether a quantity of items is present and can be removed from an inventory item
| inventoryItem | the inventory item to remove from |
| quantity | how much to remove |
| fully | if the quantity has to be stored entirely |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
whether a quantity of items is present and can be removed
| itemQuantity | how much and what to remove from the inventory |
| fully | if the quantity has to be removed entirely |
Reimplemented in AdventureCore.ListedInventorySurrogate, AdventureCore.TiledInventory, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
checks if an inventory item can be unequipped
| inventoryItem | the inventory item to unequip |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
check if a quantity of an inventory item can be used
| inventoryItem | the inventory item to use |
| quantity | how many to use |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
unequips and removes all items from the inventory
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
equipps an inventory item to a slot
| inventoryItem | the inventory item to equip |
| index | index of the slot to equip to if there are multiple(for example left/right arm in souls) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
retrieves an empty item slot for the passed item
| item | the item to retrieve a slot for |
| index | when there are mutliple slots in one category(souls left/right weapon slots) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
retrieves an empty item slot by its category
| category | the category of the slot(helmet, shield, ...) |
| index | when there are mutliple slots in one category(souls left/right weapon slots) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
retrieves an empty item slot by its type
| T | the type of the item slot |
| index | when there are mutliple slots in one category(souls left/right weapon slots) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
| T | : | ItemSlotBase |
|
virtual |
retrieves the first inventory item for a specified item
| item | the item to check |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
retrieves all inventory items for a specified item
multiple entries may be resturned for items that dont stack-
or when the inventory has a maximum stack size
| item | the item to check |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
retrieves all inventory items for a specific category or slot
| itemCategory | the category to filter items for |
| itemSlotCategory | the slot to filter items for |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
calculates the total stored quantity of an item
| item | the item to sum quantities for |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
calculates the total stored quantity of items filtered by an item category and/or slot
| itemCategory | the category to filter items for |
| itemSlotCategory | the slot to filter items for |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
retrieves an item slot for the passed item
| item | the item to retrieve a slot for |
| index | when there are mutliple slots in one category(sould left/right weapon slots) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
retrieves an item slot by its category
| category | the category of the slot(helmet, shield, ...) |
| index | when there are mutliple slots in one category(sould left/right weapon slots) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
retrieves an item slot by its type
| T | the type of the item slot |
| index | when there are mutliple slots in one category(sould left/right weapon slots) |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
| T | : | ItemSlotBase |
|
virtual |
checks whether the item exists in the inventory, regardless of quantity(may be 0 for stacked items to indicate they have been added at some point)
| item |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
virtual |
checks if the inventory has at least the passed quantity of an item
| item | the item to check |
| quantity | the minimum quantity needed |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
initializes the inventory including retrieving persisted data
| character | the owner of the inventory |
|
inlinevirtual |
removes specified quantity from the inventory item
| inventoryItem | the inventory item to remove from |
| quantity | the quantity to remove |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
removes a quantity of items
| itemQuantity | how much and what to remove |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
abstract |
fills inventory with data retrieved from persister
|
inlinevirtual |
unequips an inventory item
| inventoryItem | the inventory item to unequip |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.
|
inlinevirtual |
uses a quantity of an inventory item can be used
| inventoryItem | the inventory item to use |
| quantity | how many to use |
Reimplemented in AdventureCore.ListedInventorySurrogate, and AdventureCore.TiledInventorySurrogate.