"Repack Atlas" after replacing frames.

How it works end-to-end:

  1. Atlas Manager replaces a frame — stores replacement in replacedFrames[frameName] (in-memory canvas)
  2. "Repack Atlas" button — calls repackAtlas()buildAtlasWithReplacements() which composites all original + replaced frames into a new atlas PNG + JSON
  3. Saved with _ prefix — e.g. _game_ui.png / _game_ui.json (or _game_asset.* for explosions)
  4. On next game launchphaser-game.html:checkEditorAtlases() does HEAD requests to detect _prefixed files, sets window.__editorAtlases
  5. BootScene.preload() — checks window.__editorAtlases and loads _game_ui.png instead of game_ui.png (likewise for game_asset)
  6. All sprites using that atlas automatically show the new frames because Phaser looks up frames by key name from the loaded atlas texture

titleCopyright.gif (game_ui atlas)

explosion0.gif–explosion06.gif (game_asset atlas)

Key requirement