2.2.0
Engine support: 5.3
Inventory
Added tag values to component.
Security around TryAddNewItem has been loosened slightly to allow server RPC's to call the function for player controlled actors. Where as before the caller of the function had to be owned by the server.
The multithreaded SortAndMoveItems has been deprecated while a rework is explored.
SplitItem has been reworked slightly to fix some replication and collision issues.
Example Project
Added an example of how to have equipped items attachment widget automatically get added to inventory screen.
Bug fixes
An items default tags weren't being applied in the correct order inside StartComponent if the item didn't have the tag inside the struct, causing CheckCompatibility to always fail.
CheckCompatibility was not taking into account if the destination container belonged to an item it was containing, allowing two items to contain each other.
O_TagValueCalculation was not in the correct folder.
Custom shaped items where the top left index was hidden (Such as the gear item in the example project) would fail removing its own collision.
Internal_TryAddNewItem had incorrect object pointers, leading to some scenarios crashing the game.
ItemUnequipped would pass invalid item location, leading to difficulties managing and wiping the items data.
CheckAllRotationsForSpace would always start at rotation 0, which could cause issues for save files loading correctly.
MoveItem was not updating the item data it was using during its logic. So if the item count was updated while dragging an item, the function would undo the count update once it was dropped.
Internal_TryAddNewItem was not adding default tags and tag values to the created item.