3.9 KiB
3.9 KiB
TODO
1. Core Gameplay Loop & State Management
- GAL-1: Player Lives
- GAL-2: Add a
PlayerLivesresource. - GAL-3: Decrement lives on collision.
- GAL-4: Implement player destruction and respawn with temporary invincibility.
- GAL-2: Add a
- GAL-5: Game Over State
- GAL-6: Use Bevy's
States(Playing,GameOver). - GAL-7: Transition to
GameOverwhen lives reach zero. - GAL-8: Display a "Game Over" message.
- GAL-6: Use Bevy's
- GAL-9: Scoring
- GAL-10: Add a
Scoreresource. - GAL-11: Increment score when an enemy is hit.
- GAL-10: Add a
- GAL-12: Levels/Stages
- GAL-13: Add
CurrentStageandStageConfigurationsresources. - GAL-14: Define criteria for clearing a stage.
- GAL-15: Advance to the next stage with increasing difficulty.
- GAL-13: Add
2. Enemy Behavior - Formations & Attack Patterns
- GAL-16: Enemy Formations
- GAL-17: Define target positions for formations (
FormationLayout). - GAL-18: Enemies have an
Enteringstate to fly to their position. - GAL-19: Enemies have an
InFormationstate.
- GAL-17: Define target positions for formations (
- GAL-20: Enemy Attack Dives
- GAL-21: Enemies have an
Attackingstate with differentAttackPatterns (Swoop, Direct, Kamikaze). - GAL-22: Periodically trigger random enemies to start an attack dive.
- GAL-23: Enemies fire bullets during their dives.
- GAL-24: Enemies are despawned when they fly off-screen after an attack.
- GAL-21: Enemies have an
- GAL-25: Enemy Variety
- GAL-26:
EnemyTypeenum (Grunt,Boss). - GAL-27: Different behaviors, points, and colors based on type.
- GAL-26:
3. Advanced Galaga Mechanics
- GAL-28: Boss Galaga & Capture Beam
- GAL-29: Create a "Boss" enemy type.
- GAL-30: Implement the tractor beam attack logic (
boss_capture_attacksystem). - GAL-31: Player has a
Capturedcomponent when hit by the beam. - GAL-32: Boss has a
ReturningWithCaptivestate to go back to the formation. - GAL-33: Improve the tractor beam visual effect (currently a simple rectangle).
- Completed on branch gal-33-improve-tractor-beam-visual, commit
52b0919— 2-layer glow beam with pulse animation, 8 unit tests
- Completed on branch gal-33-improve-tractor-beam-visual, commit
- GAL-34: Dual Fighter (Rescuing Captured Ship)
- GAL-35: Allow the player to shoot a Boss that is holding a captured ship.
- GAL-36: Implement the logic to free the captured ship upon shooting the Boss.
- GAL-37: Implement the dual fighter mode (controlling two ships, firing two bullets).
- GAL-38: Challenging Stages
- GAL-39: Implement a special stage type (e.g., every 3-4 levels).
- GAL-40: Design and implement intricate flight patterns for enemies that do not shoot.
- GAL-41: Award bonus points for destroying all enemies in the stage.
4. Polish and User Interface
- GAL-42: Visuals
- GAL-43: Replace placeholder geometric shapes with actual sprites.
- GAL-44: Add explosion animations/effects.
- Branch:
gal-44-add-explosion-effects - Comment: 2026-05-06 — Implementation complete with commit
2ff561e
- Branch:
- GAL-45: Implement a scrolling starfield background.
- GAL-46: Audio
- GAL-47: Integrate
bevy_audio. - GAL-48: Add sound effects (shooting, explosions, player death, tractor beam, etc.).
- GAL-49: Add background music.
- GAL-47: Integrate
- GAL-50: UI
- GAL-51: Display Score, Lives, and Stage in the window title.
- GAL-52: Display Score, Lives, and Stage on the screen using
bevy_ui. - GAL-53: Implement a High Score system (saving/loading).
- GAL-54: Create a Start Menu state with a "Start Game" button.
- GAL-55: Add a "Press R to Restart" message to the
GameOverscreen and implement restart logic.