From 39b37e9afa595ba32a8e4a7806a323ae16d7935b Mon Sep 17 00:00:00 2001 From: evanpelle Date: Sat, 23 Aug 2025 20:20:42 -0700 Subject: [PATCH] allow manually setting pattern --- src/client/SinglePlayerModal.ts | 11 +++++++---- src/core/game/UserSettings.ts | 5 +++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/client/SinglePlayerModal.ts b/src/client/SinglePlayerModal.ts index 420ad3c6fe..d2b4ee56ee 100644 --- a/src/client/SinglePlayerModal.ts +++ b/src/client/SinglePlayerModal.ts @@ -426,9 +426,12 @@ export class SinglePlayerModal extends LitElement { console.warn("Flag input element not found"); } const patternName = this.userSettings.getSelectedPatternName(); - const pattern = patternName - ? (await getCosmetics())?.patterns[patternName] - : undefined; + let pattern: string | undefined = undefined; + if (this.userSettings.getDevOnlyPattern()) { + pattern = this.userSettings.getDevOnlyPattern(); + } else if (patternName) { + pattern = (await getCosmetics())?.patterns[patternName]?.pattern; + } this.dispatchEvent( new CustomEvent("join-lobby", { detail: { @@ -444,7 +447,7 @@ export class SinglePlayerModal extends LitElement { flagInput.getCurrentFlag() === "xx" ? "" : flagInput.getCurrentFlag(), - pattern: pattern?.pattern, + pattern: pattern, }, ], config: { diff --git a/src/core/game/UserSettings.ts b/src/core/game/UserSettings.ts index b2a9fa08ad..70f8c98630 100644 --- a/src/core/game/UserSettings.ts +++ b/src/core/game/UserSettings.ts @@ -111,6 +111,11 @@ export class UserSettings { } } + // For development only. Used for testing patterns, set in the console manually. + getDevOnlyPattern(): string | undefined { + return localStorage.getItem("dev-pattern") ?? undefined; + } + getSelectedPatternName(): string | undefined { return localStorage.getItem(PATTERN_KEY) ?? undefined; }