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; }