Hmm, even if the weapons are significantly different from each other in terms of what they shoot?
Sure - you'd just have subevents, like this (indented means subevent):
+ On shoot
----+ Current weapon is pistol
----> Shoot bullet
----+ Current weapon is grenade
----> Shoot grenade
----> Current weapon is rocket launcher
----> Shoot rocket
etc.
Having separate objects for player and their weapon sounds like a good way to do it - otherwise you have to redraw your player's animations (walking, running, jumping etc.) once for each weapon.