If what you’re doing here is selecting an inventory item and intending to call functions it contains then yes, you can absolutely spawn the appropriate actor on selection, and destroy it on deselection or on “Expend”. All of your inventory items should inherit from a common base class that contains the interface you’re using as well as the “Expend” functions you intend to call.