Yun-Kun:
You want to learn more about blueprint systems in general. You want to think about your system like a list of features and you’ll have to think about how to setup such features. Maybe combine several tutorials and your knowledge to build these features one by one.
Your feature list could look like this:
a weapon being displayed on the FPS mesh
different ability to shoot based on the weapon equipped
the ability to switch from a weapon to another
the ability to display the list of weapons
the ability to display the current weapon and its ammo
weapons should have ammo and a reload function
Lots of different systems and setups can lead you to this. What path you choose depends on the rest of your game.
To give you a simple lead: I would create a Weapon Actor, a Weapon List Widget and a Current Weapon Widget (in addition to the Player Character obviously).
Weapons can be interacted with. It has a reference to a class of Weapon Actor.
When picked up, it is added as reference to an array of Weapon contained in the Player Character.
All weapons in the list are not visible. They are all attached to the right socket on the Third Person mesh of the Player Character.
It tells the Widget List to add a weapon there.
It automatically equips the new weapon and is added as a reference in a variable of the Player Character (Current Weapon).
It tells the Widget Current Weapon to switch to that weapon. The Current Weapon is made visible.
Weapon Actors would have different shoot behaviors.
When Character presses left mouse button, it triggers the shoot behavior of his Current Weapon.
When wheel scrolling, it switches Current Weapon from a weapon to another contained within the array in the Player Character.
It tells the Widget Current Weapon to reflect that.
Etc.
Quote me if you want more details.
Hey sorry that i haven’t responded to you (i moved last month and i havent really had time to work on anything) but i would like too know more. Thank you.