A new game now runs NewGame's InitGender and OakSpeech natively before the bedroom: Boy or Girl, InitClock's hour and minute steppers with their YES/NO confirmations, Oak's speech with Wooper, and NamePlayer's preset names or naming field (a blank name takes CHRIS or KRIS). Texts, menus and time strings come from a new INTRO profile table verified by check:reference; Oak's and the player's pictures decode from TrainerPicPointers, ChrisPic/KrisPic and TrainerPalettes. The chosen time is kept as a minute offset from the device clock, which time of day, the weekday, NPC hours and the daily reset now read. The intro runs only when nothing is saved; a save made during it starts it again. Saves gain intro and clock.minuteOffset, migrated by absence. The shell's name and character fields are gone. Intentional change: the steppers start at the device time rather than 10:00. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
5a0fe1e313
commit
b13fd20be4
28 files changed
+975
-101
No files matched your search
@@ -90,7 +90,7 @@ describe("native ROM formats", () => {
|
||||
sceneOwner: () => undefined,
|
||||
timeMask: () => 2,
|
||||
clock: () => ({ weekday: 0, hours: 12, minutes: 0 }),
|
||||
deviceWeekday: () => 0,
|
||||
clockDay: () => 0,
|
||||
text: () => defaultTextContext("KAWA"),
|
||||
};
|
||||
const yes = new ScriptRun(new RomReader(bytes), 0, state, host);
|
||||
@@ -260,7 +260,7 @@ describe.skipIf(!existsSync(romPath))(
|
||||
expect(save.scenes).toEqual({ "24:6": 1 });
|
||||
expect(save.phone).toEqual([1]);
|
||||
// 2026-09-22 is a Tuesday; the chosen Monday is six days ahead.
|
||||
expect(save.clock).toEqual({ weekdayOffset: 6, dst: true });
|
||||
expect(save.clock).toEqual({ minuteOffset: 0, weekdayOffset: 6, dst: true });
|
||||
expect(world.clock().weekday).toBe(1);
|
||||
expect(world.state.flags.size).toBe(flags + 2);
|
||||
expect(world.state.events.has(1735)).toBe(true);
|
||||
@@ -839,7 +839,7 @@ describe.skipIf(!existsSync(romPath))(
|
||||
sceneOwner: () => undefined,
|
||||
timeOfDay: () => 1,
|
||||
clock: () => ({ weekday: 0, hours: 12, minutes: 0 }),
|
||||
deviceWeekday: () => 0,
|
||||
clockDay: () => 0,
|
||||
text: () => defaultTextContext("CHRIS"),
|
||||
data: assets.pokemon,
|
||||
player: () => ({ id: 0, gender: 0 as const }),
|
||||
|
||||
Reference in new issue
Block a user