Best option to combine existing blueprint functionalities

I came across two particular blueprints that I like from the marketplace and I want to combine their functionalities into one item. One is a pickup item blueprint that allows items to be picked up by the player and store into an item manager.
The other is an ax that can be thrown. Both items are blueprints derived from the actor class, idk if that info is relevant.

My understanding is that blueprints can only inherit from one class and therefore the only option here is to manually copy and paste the functionality from one BP onto the other. The pickup blueprint is much lighter than the ax, so It would not be too hard to add the pickup functionality to the ax. But I feel like this opens up annoying casting scenarios in the item management system since now I have two different types of items that can be picked up. I know I can create a child of the pickup_bp and recreate the ax functionality on top of the new BP. That way I won’t have to worry about casting, but the ax has a lot of blueprint “code”.

Is there another option that I don’t see? Just looking to be as lazy as possible here.

HI,

Try looking into Blueprint Interface. Might be the solution you’re after.

When you say combine, do you mean pick up the axe and put if in the inventory? Does that work?

Hello,

Blueprint merging compatibility will vary from blueprint to blueprint. It’s hard to say what the path of least resistance would be without knowing the specific blueprints. If you could post screenshots of the relevant blueprint code, I would love to investigate further for you.

However, at face value - Copying and pasting the code of the smaller blueprint is good first step, but you have to make sure that the dependencies in it’s home blueprint get copied, too. This includes any blueprint specific variables, references to self, and as you mentioned, references to different blueprint types. If any specific node has compatibility issues, we’ll need to find a workaround or a separate node.