From 1d0fa7b947de34923a3958e285cc3100d0fcb07e Mon Sep 17 00:00:00 2001 From: MelekTaus Date: Sat, 3 Oct 2026 18:50:41 +0200 Subject: [PATCH] Let the game view zoom up to 20x A small camera on a large screen stopped at 6x. The steps now go on in whole numbers up to 20, both in the zoom menu of the Game tab and for Auto, which takes the largest step that fits whole. - GAME_SCALE_STEPS in playSettings.ts runs 0.25, 0.5, 1 to 20. Prettier wraps the longer line. - e2e 60 keeps its own copy of the steps to work out what Auto should pick. The copy follows the new list. Tests: - view.test.ts: 23 passed (every step is used as its own factor) - e2e 60: ALL PASSED - 19 checks (Auto still picks 4 at 1280x800) Co-Authored-By: Claude Opus 5.5 --- src/core/model/playSettings.ts | 4 +++- tools/e2e/60-release.mjs | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/core/model/playSettings.ts b/src/core/model/playSettings.ts index ab530537..a61418d9 100644 --- a/src/core/model/playSettings.ts +++ b/src/core/model/playSettings.ts @@ -12,7 +12,9 @@ export const DEFAULT_PLAY_FROM: PlayFrom = 'start'; /** How the game view sizes the camera frame: a fixed factor, the largest step that fits, or fitted. */ export type GameScale = 'auto' | 'fit' | number; -export const GAME_SCALE_STEPS = [0.25, 0.5, 1, 2, 3, 4, 5, 6]; +export const GAME_SCALE_STEPS = [ + 0.25, 0.5, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, +]; export const DEFAULT_GAME_SCALE: GameScale = 1; diff --git a/tools/e2e/60-release.mjs b/tools/e2e/60-release.mjs index 7d856660..d0aed3fb 100644 --- a/tools/e2e/60-release.mjs +++ b/tools/e2e/60-release.mjs @@ -7,7 +7,7 @@ const UPDATED = 'Release 60 updated'; // Not a 16:9 multiple of the window on purpose: fitting it would need a scale between the steps. const CAMERA = { width: 300, height: 180 }; /** The zoom steps of the game view (`GAME_SCALE_STEPS`); Auto takes the largest that fits whole. */ -const STEPS = [0.25, 0.5, 1, 2, 3, 4, 5, 6]; +const STEPS = [0.25, 0.5, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]; const RED = '#e0553f'; const BACKGROUND = '#22252c';