feat: Implement Game Over state and UI cleanup

This commit is contained in:
Harald Hoyer 2025-04-05 00:13:56 +02:00
parent 9e5addb59d
commit 0f4737fffd
2 changed files with 88 additions and 15 deletions

View file

@ -43,10 +43,10 @@ nix develop --command bash -c "cargo build"
* ~~Add a `PlayerLives` resource (e.g., starting with 3).~~
* ~~Modify `check_player_enemy_collisions`: Instead of just printing, decrement the lives count.~~
* ~~Implement player destruction (despawn the player sprite) and respawn logic (maybe after a short delay, with temporary invincibility).~~
* **Game Over State:**
* 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.
* ~~**Game Over State:**~~ **(DONE)**
* ~~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.