Port the trainer card and the play time
The player's name in the start menu opens TrainerCard: page 1 with the name, ID, money, Pokédex count and play time, page 2 with the Johto leaders and the badges owned, turned and closed with the original buttons. The card picture, leader faces and animated badges come from the ROM with _CGB_TrainerCard's palettes. GameTimer now counts the play time from the end of the introduction, capped at 999:59:59, and saves keep it. Closes #23 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
38b9562bd3
commit
47698565ab
24 files changed
+954
-30
No files matched your search
@@ -15,7 +15,7 @@ import { generatePartyMon } from "../src/game/party/pokemon";
|
||||
import type { Evolution } from "../src/game/rom/pokemon";
|
||||
import { readMovement } from "../src/game/scripts/movement";
|
||||
import { defaultTextContext, readText } from "../src/game/scripts/text";
|
||||
import { settle, walkTo } from "./world-driver";
|
||||
import { settle, walkTo, withoutPlayTime } from "./world-driver";
|
||||
import { drawTile } from "../src/game/rendering/pixels";
|
||||
import { CRYSTAL_ROM } from "../src/rom/validate";
|
||||
import { VECTORS, type Direction } from "../src/game/world/types";
|
||||
@@ -393,7 +393,7 @@ describe.skipIf(!existsSync(romPath))(
|
||||
"ELM: Think it over\ncarefully.",
|
||||
"Your partner is\nimportant.",
|
||||
]);
|
||||
expect(world.save()).toEqual(before);
|
||||
expect(withoutPlayTime(world.save())).toEqual(withoutPlayTime(before));
|
||||
});
|
||||
it("jumps over representative Route 29 ledges from the actual collision data", () => {
|
||||
const assets = load();
|
||||
|
||||
Reference in new issue
Block a user