I have no idea what is going on here. So, currently you are detaching the character (which doesn’t really make sense), and also you are spawning a gun casted to ABasePawn? Is the “gun” a character/pawn?
Thanks. One more question. Is destroying worse than hiding if there’s a chance that same mesh will be used later?
For example:
I’ve got two weapons and I can choose freely.
It very much depends on the project. Hiding the weapon is totally viable as well, as long as you only have a couple of weapons in the game. But if you want to have lots of guns, or customizable guns, I think that spawning and destroying weapons is a better approach.