Port the start menu, the party menu and the pack outside battle
Checks / web (push) Canceled after 0s

Start opens the original start menu. POKéMON shows the party with the
Pokémon submenu (stats, switching, move order, held items); PACK shows the
four pockets with the field item effects for healing, PP and the Bicycle,
plus giving and tossing. The menu runs on a script draft, and its cursors
persist until a battle clears them. Select keeps the Key Items shortcut.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Sébastien QUEROLandClaude Opus 5.5 committed 2026-09-30 16:10:22 +02:00
1 parent 60e06ae678
commit 1af2beacdc
18 files changed
+1918 -49

No files matched your search

+42 -1
View File
@@ -1,6 +1,6 @@
# Recovered Claude session
Latest continuation: see **Controlled capture comparisons: 2026-09-30**
Latest continuation: see **Start menu, party menu and pack: 2026-09-30**
at the end of this file. Earlier sections are historical snapshots.
Recovered on 2026-09-23 from the local Claude Code transcript
@@ -688,3 +688,44 @@ verified. This handoff-only follow-up records that delivery.
Next: party and bag menus outside battle, MOVE PKMN W/O MAIL and evolution.
PLAN section 2 is complete within its recorded acceptance boundaries.
## Start menu, party menu and pack: 2026-09-30
Resumed from `60e06ae` (clean tree) with "continue" from the handoff: the
next plan items were the party and bag menus outside battle, then
evolution.
- `src/game/scripts/start-menu.ts` (`StartMenuRun`): Start opens the
original start menu (items and descriptions from `StartMenu.Items`, list
from `SetUpMenuItems`). POKéMON: party menu (`PartyMenuStrings`), the
submenu from `MonMenuOptions` (field moves first), STATS, SWITCH,
MOVE (swap moves with PP), ITEM (GIVE from the pack with swap and
pack-full refund, TAKE). PACK: four pockets with left/right, the item
submenus from `MenuHeader_*.MenuData` by permissions and field menu,
TOSS with quantity and confirmation, GIVE, and USE through `ItemEffects`
addresses: HP items, status healers, Full Restore, revives, bitter
herbs, Ethers/Elixers/MysteryBerry and PP Up (one step, because
`wUsePPUp` aliases `wTempPP`), and the Bicycle (queued script after the
menu closes; Oak's warning where it cannot be used).
- It runs on a script draft; saves while open keep the prior state. Menu
cursors persist in memory and reset after battle (`CleanUpBattleRAM`);
the party cursor now reaches the battle's `ChangeHappiness` quirk.
- Select keeps the Key Items shortcut (browser tests moved from Enter to
Shift). New `pack` script effect/choice; `MENU` profile table checked by
`check:reference`; menu, pocket and PP constants moved into the verified
`C` block; `ENGINE_POKEGEAR` added and verified. The text decoder gained
`<POKE>` ($24), needed for "POKéGEAR".
- Notices without changes: POKéDEX, POKéGEAR, trainer card, OPTION, field
moves from the menu, MAIL (giving or reading), SEL, evolution stones,
Rare Candy, vitamins and other field items.
Checks: 353 unit tests with the local ROM (16 new in
`tests/start-menu.test.ts`); 109 Chromium/WebKit browser tests passed, 19
skipped intentionally (one new start-menu flow in both browsers); native
and reference builds, reference, vendor and release checks; `git diff
--check`. No emulator comparison of the menus; no CI or physical-device run.
Next: evolution (`EvolveAfterBattle` after battles and from stones/Rare
Candy, with the level-up flags the battle must record), then vitamins,
MOVE PKMN W/O MAIL, SEL/registered items and field moves from the menu.