14 proto external IEntity GetOwner();
17 proto external
bool CanInsertItemInStorage(IEntity item, BaseInventoryStorageComponent storage,
int slotID = -1);
20 proto external
bool CanInsertResourceInStorage(ResourceName resourceName, BaseInventoryStorageComponent storage,
int slotID = -1);
24 proto external
bool TryInsertItemInStorage(IEntity item, BaseInventoryStorageComponent storage,
int slotID = -1,
InventoryOperationCallback cb =
null);
26 proto external
bool CanReplaceItem(IEntity item, BaseInventoryStorageComponent storage,
int slotID);
27 proto external
bool TryReplaceItem(IEntity item, BaseInventoryStorageComponent storage,
int slotID,
InventoryOperationCallback cb =
null);
28 proto external
bool CanRemoveItemFromStorage(IEntity item, BaseInventoryStorageComponent storage);
30 proto external
bool TryRemoveItemFromStorage(IEntity item, BaseInventoryStorageComponent storage,
InventoryOperationCallback cb =
null);
31 proto external
bool CanMoveItemToStorage(IEntity item, BaseInventoryStorageComponent to,
int slotID = -1);
33 proto external
bool TryMoveItemToStorage(IEntity item, BaseInventoryStorageComponent to,
int slotID = -1,
InventoryOperationCallback cb =
null);
34 proto external
bool CanSwapItemStorages(IEntity itemA, IEntity itemB);
42 proto external
int GetStorages(out notnull array<BaseInventoryStorageComponent> outStorages,
EStoragePurpose purpose =
EStoragePurpose.PURPOSE_ANY);
44 proto external
int GetItems(out notnull array<IEntity> outItems);
46 proto external
bool Contains(IEntity item);
50 proto external BaseInventoryStorageComponent FindStorageForResource(ResourceName resourceName,
EStoragePurpose purpose =
EStoragePurpose.PURPOSE_ANY);
52 proto external BaseInventoryStorageComponent FindStorageForInsert(IEntity item, BaseInventoryStorageComponent fromStorage,
EStoragePurpose purpose =
EStoragePurpose.PURPOSE_ANY);
54 proto external BaseInventoryStorageComponent FindStorageForResourceInsert(ResourceName resourceName, BaseInventoryStorageComponent fromStorage,
EStoragePurpose purpose =
EStoragePurpose.PURPOSE_ANY);
56 proto external
int GetDepositItemCountByEntity(IEntity entity);
58 proto external
int GetDepositItemCountByResource(ResourceName resourceName);
90 proto external
int FindItems(out notnull array<IEntity> foundItems, InventorySearchPredicate predicate,
EStoragePurpose purpose =
EStoragePurpose.PURPOSE_DEPOSIT);
104 proto external
int FindItemsWithComponents(out notnull array<IEntity> foundItems, array<typename> componentsQuery,
EStoragePurpose purpose =
EStoragePurpose.PURPOSE_DEPOSIT);
110 proto external
int GetGrenadesCount();
115 event protected void OnItemAdded(BaseInventoryStorageComponent storageOwner, IEntity item);
117 event protected void OnItemRemoved(BaseInventoryStorageComponent storageOwner, IEntity item);
119 event protected void OnStorageAdded(BaseInventoryStorageComponent storage);
121 event protected void OnStorageRemoved(BaseInventoryStorageComponent storage);
123 event protected void FillInitialStorages(out array<BaseInventoryStorageComponent> storagesToAdd);
125 event protected void FillInitialPrefabsToStore(out array<ResourceName> prefabsToSpawn);
127 event protected bool ShouldForbidRemoveByInstigator(
InventoryStorageManagerComponent instigatorManager, BaseInventoryStorageComponent fromStorage, IEntity item) {
return false; };