Adds a modifier system allowing dynamic modification of weapon
stats and behavior. This includes:
- Creating ModifierLibrary to manage available modifiers.
- Adds ModifierManager to handle equipping and unequipping modifiers
- Adds a new RangedWeaponComponent to handle firing projectiles and
managing modifiers.
- Introduces a DebugUI for in-game modifier management.
- Introduces an "Unlimited Power" modifier that changes the projectile scene.
- Modifies stats components to work with the new modifier system.
This system allows for more flexible and customizable weapon
functionality.
Moves modifier logic to utilize a central StatsComponent for managing and applying stat modifications.
This change centralizes stat management and simplifies the application of modifiers, enhancing code maintainability and reducing redundancy.
It also moves modifier files to the correct directory.
Implements a lightning projectile with visual effects.
The lightning is created using a series of bolt components that dynamically adjust their shape.
Also refactors the projectile system to use a base class.
Removes unused modifiers from player script.
Adds an in-game debug menu that displays performance metrics (FPS, frame times) and hardware/software information.
The menu can be toggled using the F3 key (or a custom input binding). It has different display styles, ranging from a compact FPS display to a detailed view with graphs and system information.