Loading...
Searching...
No Matches
AdventureCore.UsableItem Class Reference

Detailed Description

item that can add attributes, stats and effects when used

https://adventure.softleitner.com/manual/item

Inheritance diagram for AdventureCore.UsableItem:
AdventureCore.PrefabItem AdventureCore.ItemBase

Public Member Functions

override? bool CanAdd (InventoryBase inventory, int quantity=1, bool fully=true)
 checks if a quantity can be added in cases where the adding is handled by OnAdd(InventoryBase, int, out int)
 
override bool OnAdd (InventoryBase inventory, int quantity, out int remaining)
 signals to the item that a quantity of it is about to be added to an inventory
gives the item a chance to interfere in that process and do something else instead
for example items that added different items or are used instead of being added
 
override bool OnUse (CharacterBase character, int quantity=1)
 uses a quantity of the item on a character
 
- Public Member Functions inherited from AdventureCore.ItemBase
virtual bool CanUse (CharacterBase character, int quantity=1)
 checks if the specified quantity of the item can be used on a character
 
virtual bool CanEquip (CharacterBase character)
 checks if the item can be equipped on a character
 
virtual void OnEquip (CharacterBase character)
 called when the item gets equipped on a character
can be used to apply effects like attribute modifications
 
virtual void OnUnequip (CharacterBase character)
 called when the item gets unequipped from a character
can be used to remove effects like attribute modifications
 
void Add (CharacterBase character)
 adds one of this item to a character, this method can be called from events in the inspector by dragging the item into the target
 
void Remove (CharacterBase character)
 removes one of this item from a character, this method can be called from events in the inspector by dragging the item into the target
 
void Add (CharacterActionBase action)
 adds one of this item to the character currently associated with an action, this method can be called from events in the inspector by dragging the item into the target
 
void Remove (CharacterActionBase action)
 removes one of this item from the character currently associated with an action, this method can be called from events in the inspector by dragging the item into the target
 
override string ToString ()
 

Public Attributes

AttributeValue[] Attributes
 
ResourceQuantity[] Resources
 
EffectType[] Effects
 
bool InstantUse
 
- Public Attributes inherited from AdventureCore.PrefabItem
Transform Prefab
 
- Public Attributes inherited from AdventureCore.ItemBase
string Key
 
string Name
 
string Description
 
Sprite Image
 
GameObject Visual
 
ItemCategory Category
 
ItemSlotCategory Slot
 

Properties

override bool IsStackable [get]
 
override bool IsEquippable [get]
 
override bool IsUsable [get]
 
- Properties inherited from AdventureCore.PrefabItem
override bool IsEquippable [get]
 
- Properties inherited from AdventureCore.ItemBase
virtual bool IsStackable [get]
 whether whether multiple items can be stacked in one inventory item
 
virtual bool IsEquippable [get]
 whether the item can be equipped to a slot
 
virtual bool IsUsable [get]
 whether the item can be used
 

Member Function Documentation

◆ CanAdd()

override? bool AdventureCore.UsableItem.CanAdd ( InventoryBase inventory,
int quantity = 1,
bool fully = true )
inlinevirtual

checks if a quantity can be added in cases where the adding is handled by OnAdd(InventoryBase, int, out int)

Parameters
inventorythe inventory the item is about to be added to
quantitythe quantit of the items that is about to be added to the inventory
fullywhether the full quantity has to be added
Returns
true/false if the item has custom adding logic, otherwise null

Reimplemented from AdventureCore.ItemBase.

◆ OnAdd()

override bool AdventureCore.UsableItem.OnAdd ( InventoryBase inventory,
int quantity,
out int remaining )
inlinevirtual

signals to the item that a quantity of it is about to be added to an inventory
gives the item a chance to interfere in that process and do something else instead
for example items that added different items or are used instead of being added

Parameters
inventorythe inventory the item is about to be added to
quantitythe quantit of the items that is about to be added to the inventory
remainingthe remaining quantity if adding was handled by the item
Returns
whether the item has already handled the adding, this means the inventoy does not have to continue its own adding logic

Reimplemented from AdventureCore.ItemBase.

◆ OnUse()

override bool AdventureCore.UsableItem.OnUse ( CharacterBase character,
int quantity = 1 )
inlinevirtual

uses a quantity of the item on a character

Parameters
characterthe character to use the items on
quantityhow many items to use
Returns
whether the items have been used

Reimplemented from AdventureCore.ItemBase.