Functions
Pro Inventory System — Functions
This page lists every Blueprint function available across all components of Pro Inventory System, with beginner-friendly explanations.
A full interactive Blueprint preview is available here: Blueprint All Functions Library
Blueprint Node Preview
Understanding the Structure
The plugin is split into five function groups:
| Group | What it's for |
|---|---|
AC Item | Read and write data on a single item (name, quantity, image…) |
AC ItemsBag | Manage a bag: add, remove, find, and organise items inside it |
AC Shop | Manage a shop: prices, sales, purchases, and moving items to a bag |
Blueprint Function Library | Global helpers: manage multiple bags at once, validate objects |
Save Game | Persist and restore inventory/shop data between sessions |
Naming Conventions
Many functions come in three variants — they do the same thing but locate the target differently:
| Suffix | How it finds the target | Example |
|---|---|---|
| (none) | Uses the current/default reference | RemoveItem |
ByIndex | Uses the item's position number in the array | RemoveItemByIndex |
ByName | Uses the item's name string | RemoveItemByName |
Tip for beginners: Start with
ByNamevariants — they're the most readable and easiest to debug.
AC Item
The AC Item component lives on your item Blueprints (collectables, weapons, food, etc.).
It holds the item's data and provides functions to read or change it.
Getters — Read item data
| Function | Returns | Description |
|---|---|---|
getName | FString | The display name of the item |
getQuantity | int | How many of this item the player currently has |
getLimit | int | The maximum stack size allowed |
getItemType | ObjectType | The category of this item (weapon, consumable, etc.) |
getImage | Texture2D | The current image reference |
getImageSize | FVector2D | The dimensions of the image |
getItemImage | Texture2D | The item-specific image |
Setters — Change item data
| Function | Returns | Description |
|---|---|---|
setQuantity | void | Set a new quantity for the item |
setLimit | void | Set a new max stack size |
setItemType | bool | Change the item's type. Returns true if successful |
setImage | void | Set a new image with its dimensions |
setImageSize | void | Update only the image dimensions |
setItemImage | void | Set a new item image |
Adding to a Bag
| Function | Returns | Description |
|---|---|---|
AddToBag | bool | Add this item to the default bag. Returns false if no bag found |
AddToBagByName | bool | Add this item to a bag found by name |
AddToThisBag | bool | Add this item to a specific bag reference |
Checking Space
| Function | Returns | Description |
|---|---|---|
hasSpaceFor | bool | true if the default bag has room for this item |
hasSpaceForItemInBag | bool | true if a specific bag reference has room |
hasSpaceForItemInBagByName | bool | true if the bag with the given name has room |
Always call a
hasSpaceForfunction before callingAddToBagto avoid silent failures.
AC ItemsBag
The AC ItemsBag component lives on your Character Blueprint.
It is the actual container that holds items and exposes functions to manage them.
Reading the Bag
| Function | Returns | Description |
|---|---|---|
getBagName | String | The name of this bag (e.g. "Weapons", "Consumables") |
getBagCapacity | int | Maximum number of item slots |
getNumberOfItems | int | How many items are currently stored |
getAllItems | TArray<FS_Item> | Every item in the bag as an array |
getItemByName | FS_Item | Get a single item by its name |
getItemByIndex | FS_Item | Get a single item by its position in the array |
getCurrentBag | Bag | The currently active bag reference |
getIsCurrentBag | bool | true if this bag is currently active |
Checking the Bag
| Function | Returns | Description |
|---|---|---|
hasBagSpace | bool | true if at least one slot is free |
isBagEmpty | bool | true if the bag contains no items |
IsInBag | bool | true if the given item exists in the bag |
IsInBagByName | bool | true if an item with the given name exists |
FindItem | int | Returns the index of an item, or -1 if not found |
FindItemByName | int | Returns the index of an item by name, or -1 |
Modifying Bag Capacity
| Function | Returns | Description |
|---|---|---|
setBagCapacity | void | Set an exact capacity value |
addBagCapacity | void | Increase the capacity by a given amount |
removeBagCapacity | void | Decrease the capacity by a given amount |
Adding / Setting / Removing Quantities
| Function | Returns | Description |
|---|---|---|
AddItemQuantity | bool | Add quantity to the default item |
AddItemQuantityByIndex | bool | Add quantity by index |
AddItemQuantityByName | bool | Add quantity by name |
setItemQuantity | bool | Set an exact quantity |
setItemQuantityByIndex | bool | Set quantity by index |
setItemQuantityByName | bool | Set quantity by name |
RemoveItemQuantity | bool | Remove quantity from default item |
RemoveItemQuantityByIndex | bool | Remove quantity by index |
RemoveItemQuantityByName | bool | Remove quantity by name |
Managing Limits (Max Stack Size)
| Function | Returns | Description |
|---|---|---|
AddItemLimit | bool | Increase the item limit |
AddItemLimitByIndex | bool | Increase limit by index |
AddItemLimitByName | bool | Increase limit by name |
setItemLimit | bool | Set an exact limit |
setItemLimitByIndex | bool | Set limit by index |
setItemLimitByName | bool | Set limit by name |
Removing Items
| Function | Returns | Description |
|---|---|---|
RemoveItem | bool | Remove an item from the bag |
RemoveItemByIndex | bool | Remove item at a given index |
ClearBag | bool | Remove all items from the bag |
Bag Settings
| Function | Returns | Description |
|---|---|---|
setBagName | bool | Rename this bag |
setIsCurrentBag | void | Mark this bag as the active one |
AC Shop
The AC Shop component turns any Blueprint into a shop. Items can have prices, promo prices, and purchased states.
Reading & Searching
| Function | Returns | Description |
|---|---|---|
getShopName | String | The shop's display name |
getItemsShop | TArray | All items listed in the shop |
getItemByName | FS_ShopItem | A single shop item by name |
getItemByIndex | FS_ShopItem | A single shop item by index |
FindItem | int | Index of an item, -1 if not found |
FindItemByName | int | Index by name, -1 if not found |
Prices & Promo Prices
| Function | Returns | Description |
|---|---|---|
getPrice / ByIndex / ByName | float | Read the regular price |
getPromoPrice / ByIndex / ByName | float | Read the promotional price |
SetPrice / ByIndex / ByName | bool | Set the regular price |
SetPromoPrice / ByIndex / ByName | bool | Set the promo price |
Sale, Currency & Purchase State
| Function | Returns | Description |
|---|---|---|
getOnSale / ByIndex / ByName | bool | true if item is on sale |
SetOnSale / ByIndex / ByName | bool | Mark item as on sale |
getCurrency / ByIndex / ByName | String | Read currency label |
SetCurrency / ByIndex / ByName | bool | Set currency label |
getIsPurchased / ByIndex / ByName | bool | true if item was purchased |
SetIsPurchased / ByIndex / ByName | bool | Mark item as purchased |
Shop Actions
| Function | Returns | Description |
|---|---|---|
AddItemToShop | bool | Add a new item to the shop listing |
RemoveItemFromShop | bool | Remove an item from the shop |
RemoveItemFromShopByName | bool | Remove item by name |
MoveFromShopToBagByName | bool | Transfer a purchased item into the player's bag (by name) |
RemoveFromShopToBagByIndex | bool | Transfer item to bag by index |
SetShopName | bool | Rename the shop |
Blueprint Function Library
Global helpers that can be called from anywhere in your Blueprints — not tied to a specific component.
Bag Management
| Function | Returns | Description |
|---|---|---|
GetNumberOfBags | int | Total number of bags the character has |
GetAllBags | Array | All bags as an array |
GetAllBagNames | Array | All bag names as a string array |
RemoveBagByName | bool | Remove a specific bag by name |
RemoveAllBag | bool | Remove every bag from the character |
hasBagSpace | bool | true if any bag has available space |
MoveFromShopToBagByName | bool | Move a shop item into a named bag |
Validation
| Function | Returns | Description |
|---|---|---|
IsValidBag | — | Check a bag reference is valid before using it |
IsValidItem | — | Check an item reference is valid |
IsValidShopItem | — | Check a shop item reference is valid |
Always validate references with these functions before calling other functions on them to avoid Blueprint runtime errors.
Save Game
Persist inventory data between sessions so players don't lose their items when the game is closed.
| Function | Returns | Description |
|---|---|---|
SaveBag | bool | Save a single bag to disk |
SaveAllBags | bool | Save every bag at once |
SaveShop | bool | Save a single shop |
SaveAllShops | bool | Save every shop at once |
LoadAllSavedBags | bool | Load all previously saved bags |
LoadAllSavedShops | bool | Load all previously saved shops |
DeleteInventorySave | bool | Wipe the entire save file |
SaveAllBags when the player pauses, exits a level, or quits the game. Call LoadAllSavedBags on Begin Play of your Character Blueprint to restore their inventory automatically.