feat: add start menu with interactive button
- Add StartMenu as the default game state - Create StartMenuUI and StartButton components - Implement menu UI with BGLGA title and Start Game button - Add button interaction system with hover effects - Set up proper state transitions from menu to game - Update TODO.md to mark task as completed 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
aee3c9c91b
commit
28e4e53da9
4 changed files with 110 additions and 2 deletions
|
|
@ -18,6 +18,7 @@ use resources::{ // Added StageConfigurations
|
|||
};
|
||||
use game_state::{
|
||||
cleanup_game_entities, cleanup_game_over_ui, setup_game_over_ui, AppState,
|
||||
setup_start_menu_ui, cleanup_start_menu_ui, start_menu_button_system,
|
||||
};
|
||||
use player::{
|
||||
check_player_enemy_collisions, manage_invincibility, move_player, player_shoot,
|
||||
|
|
@ -112,6 +113,9 @@ fn main() {
|
|||
.run_if(in_state(AppState::Playing)),
|
||||
)
|
||||
// UI and state management systems
|
||||
.add_systems(OnEnter(AppState::StartMenu), setup_start_menu_ui)
|
||||
.add_systems(OnExit(AppState::StartMenu), cleanup_start_menu_ui)
|
||||
.add_systems(Update, start_menu_button_system.run_if(in_state(AppState::StartMenu)))
|
||||
.add_systems(OnEnter(AppState::GameOver), setup_game_over_ui)
|
||||
.add_systems(OnExit(AppState::Playing), cleanup_game_entities)
|
||||
.add_systems(OnExit(AppState::GameOver), cleanup_game_over_ui)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue