Weapon system with multiple weapons. Weapons defined with Entities containing WeaponComponents. Player has an InventoryComponent that can hold weapons. Current weapon shown in GUI and can be changed with Tab.
Projectiles dynamically created off current weapon