Class Inventory
Inheritance
System.Object
Inventory
Assembly: Eco.Gameplay.dll
Syntax
public abstract class Inventory : Object, IController, IViewController, IHasUniversalID
Constructors
Inventory()
Declaration
Fields
InventoryDestroyed
Declaration
public static ThreadSafeAction<Inventory> InventoryDestroyed
Field Value
InventoryEffectsChanged
Declaration
public static ThreadSafeAction<Inventory> InventoryEffectsChanged
Field Value
InventoryInitialized
Declaration
public static ThreadSafeAction<Inventory> InventoryInitialized
Field Value
LockID
Declaration
public readonly Guid LockID
Field Value
Type |
Description |
System.Guid |
|
LockObject
Declaration
Field Value
Type |
Description |
System.Object |
|
OverrideOwnerName
Declaration
public LocString OverrideOwnerName
Field Value
StacksChanged
Declaration
public static ThreadSafeAction<IEnumerable<ItemStack>> StacksChanged
Field Value
Properties
AllInventories
Declaration
public IEnumerable<Inventory> AllInventories { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<Inventory> |
|
AllParents
Declaration
public IEnumerable<Inventory> AllParents { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<Inventory> |
|
AllParentsAndSelf
Declaration
public IEnumerable<Inventory> AllParentsAndSelf { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<Inventory> |
|
AvailableForItemInteractions
If this inventory can receive item move events. Client can also filter this for drag and drop stuff
Declaration
public bool AvailableForItemInteractions { get; set; }
Property Value
Type |
Description |
System.Boolean |
|
ControllerID
Declaration
public ref int ControllerID { get; }
Property Value
Type |
Description |
System.Int32 |
|
FillPerCent
Declaration
public float FillPerCent { get; }
Property Value
Type |
Description |
System.Single |
|
GroupedStacks
Declaration
public IEnumerable<ItemStack> GroupedStacks { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
|
IsEmpty
Declaration
public bool IsEmpty { get; }
Property Value
Type |
Description |
System.Boolean |
|
IsFull
Declaration
public bool IsFull { get; }
Property Value
Type |
Description |
System.Boolean |
|
IsLeafInventory
Declaration
public virtual bool IsLeafInventory { get; }
Property Value
Type |
Description |
System.Boolean |
|
ManipulatableStacks
Stacks that can be manipulated through linked inventories, in sub-inventories that have similar item restrictions, override in concrete InventoryView to exclude certain stacks that would appear in Stacks
See UserInventory example, excluding the ClothingInventory as it's restricted to clothing items only, very different from ToolbarBackpackInventory
Declaration
public virtual IEnumerable<ItemStack> ManipulatableStacks { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
|
NeedsAuth
Declaration
public virtual bool NeedsAuth { get; }
Property Value
Type |
Description |
System.Boolean |
|
NonEmptyStacks
Declaration
public IEnumerable<ItemStack> NonEmptyStacks { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
|
OnChanged
Declaration
public ThreadSafeAction<User> OnChanged { get; }
Property Value
OnChangedDetailed
Declaration
public ThreadSafeAction<User, IEnumerable<KeyValuePair<Item, int>>, Dictionary<ItemStack, ChangedStack>> OnChangedDetailed { get; }
Property Value
Owner
Declaration
public virtual WorldObjectHandle Owner { get; }
Property Value
OwnerName
Declaration
public virtual LocString OwnerName { get; }
Property Value
Parent
Declaration
public Inventory Parent { get; }
Property Value
Restrictions
Declaration
public IEnumerable<InventoryRestriction> Restrictions { get; }
Property Value
Root
Declaration
public Inventory Root { get; }
Property Value
ShelfLifeMultiplier
Declaration
public float ShelfLifeMultiplier { get; set; }
Property Value
Type |
Description |
System.Single |
|
Stacks
Declaration
public virtual IEnumerable<ItemStack> Stacks { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
|
SubInventories
Declaration
protected virtual IEnumerable<Inventory> SubInventories { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<Inventory> |
|
TypeToCount
Declaration
public Dictionary<Type, int> TypeToCount { get; }
Property Value
Type |
Description |
System.Collections.Generic.Dictionary<System.Type, System.Int32> |
|
Methods
AcceptsItem(Item)
Determines if the given item is accepted by the inventory regardless of the count.
Declaration
public bool AcceptsItem(Item item)
Parameters
Type |
Name |
Description |
Item |
item |
|
Returns
Type |
Description |
System.Boolean |
|
AddInvRestriction(InventoryRestriction)
Declaration
public void AddInvRestriction(InventoryRestriction restriction)
Parameters
AddInvRestrictions(IEnumerable<InventoryRestriction>)
Declaration
public void AddInvRestrictions(IEnumerable<InventoryRestriction> restrictions)
Parameters
AddItem(Item, User)
Declaration
public void AddItem(Item item, User user = null)
Parameters
Type |
Name |
Description |
Item |
item |
|
User |
user |
|
AddItemNonUnique(Type, User)
Declaration
public void AddItemNonUnique(Type itemType, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
User |
user |
|
AddItemNonUnique<T>(User)
Declaration
public void AddItemNonUnique<T>(User user = null)
where T : Item
Parameters
Type |
Name |
Description |
User |
user |
|
Type Parameters
AddItems(Item, Int32, User)
Declaration
public bool AddItems(Item item, int quantity, User user = null)
Parameters
Type |
Name |
Description |
Item |
item |
|
System.Int32 |
quantity |
|
User |
user |
|
Returns
Type |
Description |
System.Boolean |
|
AddItems(ItemStack, User)
Declaration
public bool AddItems(ItemStack stack, User user = null)
Parameters
Returns
Type |
Description |
System.Boolean |
|
AddItems(IEnumerable<ItemStack>, User)
Declaration
public bool AddItems(IEnumerable<ItemStack> stacks, User user = null)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
stacks |
|
User |
user |
|
Returns
Type |
Description |
System.Boolean |
|
AddItemsNonUnique(Type, Int32, User)
Declaration
public void AddItemsNonUnique(Type itemType, int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
System.Int32 |
quantity |
|
User |
user |
|
AddItemsNonUnique<T>(Int32, User)
Declaration
public void AddItemsNonUnique<T>(int quantity, User user = null)
where T : Item
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
User |
user |
|
Type Parameters
ApplyChanges(User, IEnumerable<Item>, Dictionary<ItemStack, ChangedStack>)
We make sure to call OnChanged to apply all the necessary changes.
Declaration
public void ApplyChanges(User user, IEnumerable<Item> changes, Dictionary<ItemStack, ChangedStack> changedStacks)
Parameters
Type |
Name |
Description |
User |
user |
|
System.Collections.Generic.IEnumerable<Item> |
changes |
|
System.Collections.Generic.Dictionary<ItemStack, ChangedStack> |
changedStacks |
|
Clear(User)
Declaration
public void Clear(User user = null)
Parameters
Type |
Name |
Description |
User |
user |
|
ClearItemStack(ItemStack, User)
Declaration
public void ClearItemStack(ItemStack stack, User user = null)
Parameters
ClearRestrictions()
Declaration
public void ClearRestrictions()
Contains(IEnumerable<ItemStack>)
Declaration
public bool Contains(IEnumerable<ItemStack> stacks)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
stacks |
|
Returns
Type |
Description |
System.Boolean |
|
Destroy()
Declaration
public virtual void Destroy()
FillTargetStack(Type, ItemStack, User)
Declaration
public ValResult<int> FillTargetStack(Type itemType, ItemStack targetStack, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
ItemStack |
targetStack |
|
User |
user |
|
Returns
FillTargetStack(Type, ItemStack, Int32, User)
Declaration
public ValResult<int> FillTargetStack(Type itemType, ItemStack targetStack, int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
ItemStack |
targetStack |
|
System.Int32 |
quantity |
|
User |
user |
|
Returns
FillTargetStack(Type, ItemStack, Int32, Func<ItemStack, Boolean>, User)
Declaration
public ValResult<int> FillTargetStack(Type itemType, ItemStack targetStack, int quantity, Func<ItemStack, bool> sourceStackPredicate = null, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
ItemStack |
targetStack |
|
System.Int32 |
quantity |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
User |
user |
|
Returns
Declaration
public IEnumerable<ItemStack> GetItemsWithTags(Tag tag, int num)
Parameters
Type |
Name |
Description |
Tag |
tag |
|
System.Int32 |
num |
|
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
|
GetMaxAccepted(Item, Int32, InventoryChangeSet, Inventory)
Get the maximum amount of item are allowed to put into this inventory
Declaration
public ValResult<int> GetMaxAccepted(Item item, int currentQuantity, InventoryChangeSet changeSet, Inventory sourceInventory = null)
Parameters
Type |
Name |
Description |
Item |
item |
|
System.Int32 |
currentQuantity |
Current quantity of the Item in the Inventory
|
InventoryChangeSet |
changeSet |
Data of the current transfer
|
Inventory |
sourceInventory |
|
Returns
GetMaxAccepted(Item, Int32, InventoryChangeSet, Inventory, out InventoryRestriction)
Declaration
public ValResult<int> GetMaxAccepted(Item item, int currentQuantity, InventoryChangeSet changeSet, Inventory sourceInventory, out InventoryRestriction strongestRestriction)
Parameters
Returns
GetMaxAccepted(Item, Int32, User, Inventory)
Declaration
public ValResult<int> GetMaxAccepted(Item item, int currentQuantity, User user = null, Inventory sourceInventory = null)
Parameters
Type |
Name |
Description |
Item |
item |
|
System.Int32 |
currentQuantity |
|
User |
user |
|
Inventory |
sourceInventory |
|
Returns
GetMaxAcceptedVal(Item, Int32, User, Inventory)
Declaration
public int GetMaxAcceptedVal(Item item, int currentQuantity, User user = null, Inventory pickupTarget = null)
Parameters
Type |
Name |
Description |
Item |
item |
|
System.Int32 |
currentQuantity |
|
User |
user |
|
Inventory |
pickupTarget |
|
Returns
Type |
Description |
System.Int32 |
|
GetMaxPickup(Item, Int32, InventoryChangeSet, Inventory, Int32)
Declaration
public ValResult<int> GetMaxPickup(Item item, int currentQuantity, InventoryChangeSet changeSet, Inventory otherInventory = null, int totalMoved = 0)
Parameters
Returns
GetMaxPickup(Item, Int32, User, Inventory)
Check restrictions based on general data (for use outside changesets, some general pre-checks, etc).
Get the maximum amount of items are allowed to pick up from the current Item stack
Declaration
public ValResult<int> GetMaxPickup(Item item, int currentQuantity, User user = null, Inventory targetInventory = null)
Parameters
Type |
Name |
Description |
Item |
item |
Items that are being transferred
|
System.Int32 |
currentQuantity |
Current quantity of the Item in the Inventory
|
User |
user |
|
Inventory |
targetInventory |
|
Returns
GetStacks<T>(Func<T, Boolean>)
Returns non-empty stacks where item is typeof(T) and fits filter
Declaration
public IEnumerable<ItemStack> GetStacks<T>(Func<T, bool> filter)
where T : Item
Parameters
Type |
Name |
Description |
System.Func<T, System.Boolean> |
filter |
|
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
|
Type Parameters
GetStacksAndClear()
We get all the items stacks inside this inventory and then we make sure to empty it.
Declaration
public List<ItemStack> GetStacksAndClear()
Returns
Type |
Description |
System.Collections.Generic.List<ItemStack> |
|
HasRestriction<T>()
Declaration
public bool HasRestriction<T>()
where T : InventoryRestriction
Returns
Type |
Description |
System.Boolean |
|
Type Parameters
Initialize()
Declaration
protected virtual void Initialize()
Modify(Action<IInventoryChangeSet>, User)
Declaration
public void Modify(Action<IInventoryChangeSet> callback, User user = null)
Parameters
MoveAllItems(Item, Int32, Inventory, Boolean, Func<ItemStack, Boolean>, User)
Declaration
public ValResult<int> MoveAllItems(Item itemSource, int quantity, Inventory destination, bool allowPartial, Func<ItemStack, bool> sourceStackPredicate = null, User user = null)
Parameters
Type |
Name |
Description |
Item |
itemSource |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
System.Boolean |
allowPartial |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
User |
user |
|
Returns
MoveAsManyItemsAsPossible(Inventory, User, InventoryAccessType)
Declaration
public ValResult<int> MoveAsManyItemsAsPossible(Inventory destination, User user = null, InventoryAccessType accessType)
Parameters
Returns
MoveAsManyItemsAsPossible(Inventory, Func<ItemStack, Boolean>, User, InventoryAccessType)
Declaration
public ValResult<int> MoveAsManyItemsAsPossible(Inventory destination, Func<ItemStack, bool> sourceStackPredicate = null, User user = null, InventoryAccessType accessFromVehicle)
Parameters
Returns
MoveItems(ItemStack, Inventory, Int32, User)
Declaration
public Result MoveItems(ItemStack sourceStack, Inventory target, int quantity = -1, User user = null)
Parameters
Returns
MoveItems(ItemStack, ItemStack, User, Int32)
Declaration
public static Result MoveItems(ItemStack sourceStack, ItemStack targetStack, User user, int quantityOverride = -1)
Parameters
Returns
MoveItems(Player, Inventory, Inventory, Item)
Declaration
public virtual void MoveItems(Player player, Inventory source, Inventory target, Item itemType)
Parameters
MoveItems(Player, ItemStack, Inventory, Int32)
Declaration
public BSONObject MoveItems(Player player, ItemStack sourceStack, Inventory target, int quantity = -1)
Parameters
Returns
MoveItems(Player, ItemStack, ItemStack)
Declaration
public virtual BSONObject MoveItems(Player player, ItemStack sourceStack, ItemStack targetStack)
Parameters
Returns
MoveItems(Type, Int32, Inventory, User)
Declaration
public void MoveItems(Type type, int quantity, Inventory destination, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
type |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
User |
user |
|
MoveItems<TKey>(Item, Int32, Inventory, Func<ItemStack, Boolean>, Func<ItemStack, TKey>, User)
Declaration
public void MoveItems<TKey>(Item sourceItem, int quantity, Inventory destination, Func<ItemStack, bool> sourceStackPredicate = null, Func<ItemStack, TKey> sourceStackOrder = null, User user = null)
Parameters
Type |
Name |
Description |
Item |
sourceItem |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
System.Func<ItemStack, TKey> |
sourceStackOrder |
|
User |
user |
|
Type Parameters
MoveItems<T>(Int32, Inventory, User)
Declaration
public void MoveItems<T>(int quantity, Inventory destination, User user = null)
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
Inventory |
destination |
|
User |
user |
|
Type Parameters
MoveItems<TKey>(Type, Int32, Inventory, Func<ItemStack, Boolean>, Func<ItemStack, TKey>, User)
Declaration
public void MoveItems<TKey>(Type itemType, int quantity, Inventory destination, Func<ItemStack, bool> sourceStackPredicate = null, Func<ItemStack, TKey> sourceStackOrder = null, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
System.Func<ItemStack, TKey> |
sourceStackOrder |
|
User |
user |
|
Type Parameters
MoveItems<T, TKey>(Int32, Inventory, Func<ItemStack, Boolean>, Func<ItemStack, TKey>, User)
Declaration
public void MoveItems<T, TKey>(int quantity, Inventory destination, Func<ItemStack, bool> sourceStackPredicate = null, Func<ItemStack, TKey> sourceStackOrder = null, User user = null)
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
Inventory |
destination |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
System.Func<ItemStack, TKey> |
sourceStackOrder |
|
User |
user |
|
Type Parameters
MoveItemsDoublePass(ItemStack, ItemStack, Inventory, User)
Declaration
public Result MoveItemsDoublePass(ItemStack sourceStack, ItemStack targetStack, Inventory alternativeInventoryTarget, User user = null)
Parameters
Returns
MoveItemsDoublePass(Player, ItemStack, ItemStack, Inventory)
Declaration
public BSONObject MoveItemsDoublePass(Player player, ItemStack sourceStack, ItemStack targetStack, Inventory alternativeInventoryTarget)
Parameters
Returns
MoveSomeItems(Player, ItemStack, ItemStack, Int32)
Declaration
public virtual BSONObject MoveSomeItems(Player player, ItemStack sourceStack, ItemStack targetStack, int quantity)
Parameters
Returns
RemoveAllRestrictions()
Declaration
public void RemoveAllRestrictions()
RemoveAllRestrictions(Predicate<InventoryRestriction>)
Declaration
public void RemoveAllRestrictions(Predicate<InventoryRestriction> removeTest)
Parameters
RemoveAsMuchAsPossible(ItemRepresentation, Int32, User)
Declaration
public List<(Item, int)> RemoveAsMuchAsPossible(ItemRepresentation stackable, int quantity, User user = null)
Parameters
Returns
Type |
Description |
System.Collections.Generic.List<System.ValueTuple<Item, System.Int32>> |
|
RemoveItem(Type, User)
Declaration
public void RemoveItem(Type itemType, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
User |
user |
|
RemoveItem<T>(User)
Declaration
public void RemoveItem<T>(User user = null)
where T : Item
Parameters
Type |
Name |
Description |
User |
user |
|
Type Parameters
RemoveItems(ItemStack, User)
Declaration
public void RemoveItems(ItemStack stack, User user = null)
Parameters
RemoveItems(Type, Int32, User)
Declaration
public void RemoveItems(Type itemType, int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
System.Int32 |
quantity |
|
User |
user |
|
RemoveItems<T>(Int32, User)
Declaration
public void RemoveItems<T>(int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
User |
user |
|
Type Parameters
RemoveLastRestriction()
Declaration
public void RemoveLastRestriction()
ReplaceItems(IEnumerable<ItemStack>)
This method make sure to clear all stacks content and then replace them with the content of the specified new stacks.
Declaration
public void ReplaceItems(IEnumerable<ItemStack> newStacks)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
newStacks |
|
ReplaceStack(Player, ItemStack, Int32, Int32)
Declaration
public virtual void ReplaceStack(Player player, ItemStack originalStack, int itemTypeID, int count)
Parameters
Type |
Name |
Description |
Player |
player |
|
ItemStack |
originalStack |
|
System.Int32 |
itemTypeID |
|
System.Int32 |
count |
|
SelectStack(Player, ItemStack)
Declaration
protected virtual void SelectStack(Player player, ItemStack stack)
Parameters
SetOwner(WorldObject)
Declaration
public void SetOwner(WorldObject owner)
Parameters
SuccessMoveWrapper(User, Inventory, Inventory, Item, Int32)
Declaration
public static ValResult<int> SuccessMoveWrapper(User user, Inventory source, Inventory target, Item item, int quantity)
Parameters
Returns
TotalNumberOfItems(ItemRepresentation)
Declaration
public int TotalNumberOfItems(ItemRepresentation representation)
Parameters
Returns
Type |
Description |
System.Int32 |
|
TotalNumberOfItems(Tag)
Declaration
public int TotalNumberOfItems(Tag itemTag)
Parameters
Type |
Name |
Description |
Tag |
itemTag |
|
Returns
Type |
Description |
System.Int32 |
|
TotalNumberOfItems(String)
Declaration
public int TotalNumberOfItems(string displayName)
Parameters
Type |
Name |
Description |
System.String |
displayName |
|
Returns
Type |
Description |
System.Int32 |
|
TotalNumberOfItems(Type)
Declaration
public int TotalNumberOfItems(Type itemType)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
Returns
Type |
Description |
System.Int32 |
|
TotalNumberOfItems<T>()
Declaration
public int TotalNumberOfItems<T>()
where T : Item
Returns
Type |
Description |
System.Int32 |
|
Type Parameters
TryAddItem(Item, User)
Declaration
public Result TryAddItem(Item item, User user = null)
Parameters
Type |
Name |
Description |
Item |
item |
|
User |
user |
|
Returns
TryAddItemNonUnique(Type, User)
Declaration
public Result TryAddItemNonUnique(Type itemType, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
User |
user |
|
Returns
TryAddItemNonUnique<T>(User)
Declaration
public Result TryAddItemNonUnique<T>(User user = null)
where T : Item
Parameters
Type |
Name |
Description |
User |
user |
|
Returns
Type Parameters
TryAddItemsNonUnique(Type, Int32, User)
Declaration
public Result TryAddItemsNonUnique(Type itemType, int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
System.Int32 |
quantity |
|
User |
user |
|
Returns
TryAddItemsNonUnique<T>(Int32, User)
Declaration
public Result TryAddItemsNonUnique<T>(int quantity, User user = null)
where T : Item
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
User |
user |
|
Returns
Type Parameters
TryClearItemStack(ItemStack, User)
Declaration
public Result TryClearItemStack(ItemStack stack, User user = null)
Parameters
Returns
TryGetBestRestrictionMessage(IEnumerable<InventoryRestriction>, out LocString)
Given a set of violated restrictions, will try to resolve a message that best describes all restrictions altogether.
TODO: This was introduced as a quick fix for Store. Eventually inventory moves/restrictions/messages have to be rebuilt to keep a context of the initiating action.
Declaration
public static bool TryGetBestRestrictionMessage(IEnumerable<InventoryRestriction> violatedRestrictions, out LocString message)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<InventoryRestriction> |
violatedRestrictions |
A set of violated restrictions to use for resolution.
|
LocString |
message |
The generated message.
|
Returns
Type |
Description |
System.Boolean |
If a specialized message could be produced or not.
|
TryModify(Action<IInventoryChangeSet>, User)
Declaration
public Result TryModify(Action<IInventoryChangeSet> callback, User user = null)
Parameters
Returns
TryMoveItems(Item, Int32, Inventory, User)
Declaration
public Result TryMoveItems(Item sourceItem, int quantity, Inventory destination, User user = null)
Parameters
Type |
Name |
Description |
Item |
sourceItem |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
User |
user |
|
Returns
TryMoveItems(Type, Int32, Inventory, User)
Declaration
public Result TryMoveItems(Type type, int quantity, Inventory destination, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
type |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
User |
user |
|
Returns
TryMoveItems<TKey>(Item, Int32, Inventory, Func<ItemStack, Boolean>, Func<ItemStack, TKey>, User)
Declaration
public Result TryMoveItems<TKey>(Item sourceItem, int quantity, Inventory destination, Func<ItemStack, bool> sourceStackPredicate = null, Func<ItemStack, TKey> sourceStackOrder = null, User user = null)
Parameters
Type |
Name |
Description |
Item |
sourceItem |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
System.Func<ItemStack, TKey> |
sourceStackOrder |
|
User |
user |
|
Returns
Type Parameters
TryMoveItems<T>(Int32, Inventory, User)
Declaration
public Result TryMoveItems<T>(int quantity, Inventory destination, User user = null)
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
Inventory |
destination |
|
User |
user |
|
Returns
Type Parameters
TryMoveItems<TKey>(Type, Int32, Inventory, Func<ItemStack, Boolean>, Func<ItemStack, TKey>, User)
Declaration
public Result TryMoveItems<TKey>(Type itemType, int quantity, Inventory destination, Func<ItemStack, bool> sourceStackPredicate = null, Func<ItemStack, TKey> sourceStackOrder = null, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
System.Int32 |
quantity |
|
Inventory |
destination |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
System.Func<ItemStack, TKey> |
sourceStackOrder |
|
User |
user |
|
Returns
Type Parameters
TryMoveItems<T, TKey>(Int32, Inventory, Func<ItemStack, Boolean>, Func<ItemStack, TKey>, User)
Declaration
public Result TryMoveItems<T, TKey>(int quantity, Inventory destination, Func<ItemStack, bool> sourceStackPredicate = null, Func<ItemStack, TKey> sourceStackOrder = null, User user = null)
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
Inventory |
destination |
|
System.Func<ItemStack, System.Boolean> |
sourceStackPredicate |
|
System.Func<ItemStack, TKey> |
sourceStackOrder |
|
User |
user |
|
Returns
Type Parameters
TryRemoveItem(Type, User)
Declaration
public Result TryRemoveItem(Type itemType, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
User |
user |
|
Returns
TryRemoveItem<T>(User)
Declaration
public Result TryRemoveItem<T>(User user = null)
where T : Item
Parameters
Type |
Name |
Description |
User |
user |
|
Returns
Type Parameters
TryRemoveItems(ItemStack, User)
Declaration
public Result TryRemoveItems(ItemStack stack, User user = null)
Parameters
Returns
TryRemoveItems(IEnumerable<ItemStack>, User)
Declaration
public Result TryRemoveItems(IEnumerable<ItemStack> stacks, User user = null)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<ItemStack> |
stacks |
|
User |
user |
|
Returns
TryRemoveItems(Type, Int32, User)
Declaration
public Result TryRemoveItems(Type itemType, int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
System.Int32 |
quantity |
|
User |
user |
|
Returns
TryRemoveItems<T>(Int32, User)
Declaration
public Result TryRemoveItems<T>(int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Int32 |
quantity |
|
User |
user |
|
Returns
Type Parameters
TryRemoveItemsAsManyAsPossibleByType(Type, Int32, User)
Remove as much as we can, up to desired quantity, and return results.
Declaration
public ValResult<int> TryRemoveItemsAsManyAsPossibleByType(Type itemType, int quantity, User user = null)
Parameters
Type |
Name |
Description |
System.Type |
itemType |
|
System.Int32 |
quantity |
|
User |
user |
|
Returns
TryRemoveItemsAsManyAsPossibleUnique(Item, Int32, User)
Remove as much as we can, up to desired quantity, and return results. Respects unique properties of item.
Declaration
public ValResult<int> TryRemoveItemsAsManyAsPossibleUnique(Item mustMatchItem, int quantity, User user = null)
Parameters
Type |
Name |
Description |
Item |
mustMatchItem |
|
System.Int32 |
quantity |
|
User |
user |
|
Returns
UseStack(Player, ItemStack)
Declaration
public virtual string UseStack(Player player, ItemStack stack)
Parameters
Returns
Type |
Description |
System.String |
|
Implements
Extension Methods