Thomas ea6e16358f Add in-game level editor with auto-discovered tile/entity palettes
Implements a full level editor that runs inside the game engine as an
alternative mode, accessible via --edit flag or E key during gameplay.
The editor auto-discovers available tiles from the tileset texture and
entities from a new central registry, so adding new game content
automatically appears in the editor without any editor-specific changes.

Editor features: tile painting (pencil/eraser/flood fill) across 3
layers, entity placement with drag-to-move, player spawn point tool,
camera pan/zoom, grid overlay, .lvl save/load, map resize, and test
play (P to play, ESC to return to editor).

Supporting changes:
- Entity registry centralizes spawn functions (replaces strcmp chain)
- Mouse input + raw keyboard access added to input system
- Camera zoom support for editor overview
- Zoom-aware rendering in tilemap, renderer, and sprite systems
- Powerup and drone sprites/animations wired up (were defined but unused)
- Bitmap font renderer for editor UI (4x6 pixel glyphs, no dependencies)
2026-02-28 20:24:43 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
2026-02-28 18:03:47 +00:00
Description
No description provided
25 MiB
Languages
C 95%
Python 2.4%
HTML 1.5%
Makefile 1%
Dockerfile 0.1%