feat: Implement scoring and stage management systems

This commit is contained in:
Harald Hoyer 2025-04-05 00:20:40 +02:00
parent 0f4737fffd
commit fe5579727f
2 changed files with 181 additions and 60 deletions

View file

@ -47,14 +47,14 @@ nix develop --command bash -c "cargo build"
* ~~Use Bevy's `States` (e.g., `Playing`, `GameOver`).~~
* ~~Transition to `GameOver` when `PlayerLives` reaches zero.~~
* ~~In the `GameOver` state: stop enemy spawning, stop player controls, display a "Game Over" message (using `bevy_ui`), potentially offer a restart option.~~
* **Scoring:**
* Add a `Score` resource.
* Increment the score in `check_bullet_collisions` when an enemy is hit.
* ~~**Scoring:**~~ **(DONE)**
* ~~Add a `Score` resource.~~
* ~~Increment the score in `check_bullet_collisions` when an enemy is hit.~~
* Consider different point values for different enemy types or hitting enemies during dives later.
* **Levels/Stages:**
* Add a `CurrentStage` resource.
* Define criteria for clearing a stage (e.g., destroying all enemies in a wave/formation).
* Implement logic to advance to the next stage, potentially increasing difficulty (enemy speed, firing rate, different formations).
* ~~**Levels/Stages:**~~ **(DONE)**
* ~~Add a `CurrentStage` resource.~~
* ~~Define criteria for clearing a stage (e.g., destroying all enemies in a wave/formation).~~
* ~~Implement logic to advance to the next stage, potentially increasing difficulty (enemy speed, firing rate, different formations).~~
**2. Enemy Behavior - Formations & Attack Patterns:**