Items with own blueprints/stats

I would like to make an item system where the player is able to pick up and drop items whenever and also have the item itself add it’s own blueprints to the existing ones of the character

For example:
If the character has a sword that has the animations of swinging and throwing fire with the sword the player can pick up a gun with the animation, damage stats, particle effects when hit, and so on and drop the sword and forget the animations and all but adjust to the guns setup with button layouts and all. Along with if a weapon has a special particle or costume that goes along with it, it can change the player model or particle systems around it.

I’m sure there’s a simpler way of doing this but I’m new to ue4 so if there is please let me know but if there is a way to do it this way also let me know like that so I can experiment with both and see which is more productive

Thanks in advance

Without any blueprint to work with or area to trouble shoot all I can offer is some logic, I don’t think this is too complex to do, just will take some time to get everything ordered and flowing properly. But I think a basic set-up would be, create a “master” weapon class. Have all the common components you need for each weapon, so a mesh, particle system, damage amount etc. Make each of those variables editable, then create children of this “master” weapon, and in each child change the mesh, damage and particle system to what you would like. So flaming sword vs gun is something you would change the mesh variable in the children. Then in your player character or wherever you would like to hold the data for what weapon you are holding is where you would build your logic for “pick up” and “drop” weapon, and logic for playing the animation or particle effect you have nested in the children blueprints for the weapon you are holding.