Commit Graph

4 Commits

Author SHA1 Message Date
Brian Fertig 9a40e9a23a Add BootScene and MenuScene, update game initialization and UI
- Import and register new `BootScene` and `MenuScene` in `main.js`.
- Create `BootScene` to generate all shared textures once at startup and then start the menu.
- Implement full-featured `MenuScene` with background asteroids, wandering alien, title, controls panel, and start button (including ENTER key support).
- Remove texture generation logic and helper from `GameScene`; it now relies on textures created by `BootScene`.
- Change game‑over handling to return to the menu instead of restarting the game.
2026-02-21 08:27:35 -07:00
Brian Fertig 33d340ef10 Add alien‑ship warp‑out effect and bullet ownership handling
- Added `warpOut()` to `AlienShip` with spin‑shrink animation and black‑hole ring visual.
- Modified `spawnAlienBullet` to pass the firing ship to `Bullet`.
- Extended `Bullet` constructor with `ownerEntity` to store the originating `AlienShip`.
- Updated collision callbacks in `GameScene` to trigger `warpOut()` on the owning ship when its bullet hits the player or when the player collides with an alien, and to remove the ship from the alien list.
- Fixed overlap order for alien bullets vs. player.

These changes give alien ships a dramatic disappearance animation and ensure proper cleanup after collisions.
2026-02-20 22:16:39 -07:00
Brian Fertig 9ac607d2e7 Remove unused review sub‑agent and clarify ES6 import/export usage; differentiate bullet speeds for player and alien; add `Player.die()` to hide the ship and set immediate invincibility; delay player respawn after a hit; introduce dynamic background‑color changes per level. 2026-02-20 21:51:06 -07:00
Brian Fertig 054166e5b0 initial commit 2026-02-20 21:34:27 -07:00