The cleanest way to do this is to have a base class for all the weapons. If you have multiple pawns/characters that do not inherit from the same base class where you could store what weapon is equipped you could look at having interfaces return which weapon class you have. You can then have an enum inside the base weapon class that has weapon types. Games usually use this for changing holding animations. (Hip, Rifle, Pistol, RPG, etc)
2 Likes