The lobby hub replaced the between-fights map, leaving the whole map
subsystem unused. Remove it:
- Delete MapScreen.tscn + map_screen.gd (the dead screen) and map_node.gd
(the MapNode class).
- Strip map generation + navigation from run_state.gd (~90 lines:
_generate_map/_link_rows/reachable/select_node/node_at/current_node/
run_complete/complete_current_level, plus map/player_row/col/pending_row/col).
ensure_run() now guards on a _run_active flag instead of the map array, so
the shell reloading for each fight still can't wipe the run in progress.
- Simplify active_level() to the lobby flow (override -> lobby -> gate -> arena).
- Drop the now-unread LevelDef.color / is_boss fields and the _make_level args.
- Remove the map test from logic_test.gd.
Live flow unchanged (lobby gates via choose_level, wins via return_to_lobby).
Full headless suite green; menu + shell boot into the lobby clean.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FBbGXbzg3SD6ZBSadPPF5H