diff --git a/proprietary/fonts/OpenFront.ttf b/proprietary/fonts/OpenFront.ttf new file mode 100644 index 000000000..4425bcdc5 Binary files /dev/null and b/proprietary/fonts/OpenFront.ttf differ diff --git a/src/client/Main.ts b/src/client/Main.ts index 2f418c030..10f0168b5 100644 --- a/src/client/Main.ts +++ b/src/client/Main.ts @@ -1,5 +1,6 @@ import version from "resources/version.txt?raw"; import { UserMeResponse } from "../core/ApiSchemas"; +import { assetUrl } from "../core/AssetUrls"; import { EventBus } from "../core/EventBus"; import { GAME_ID_REGEX, @@ -266,6 +267,13 @@ class Client { await customElements.whenDefined("mobile-nav-bar"); await customElements.whenDefined("desktop-nav-bar"); + const openFrontFont = new FontFace( + "OpenFront", + `url(${assetUrl("fonts/OpenFront.ttf")})`, + ); + document.fonts.add(openFrontFont); + openFrontFont.load().catch(() => {}); + const versionElements = document.querySelectorAll( "#game-version, .game-version-display", ); @@ -275,6 +283,7 @@ class Client { const trimmed = version.trim(); const displayVersion = trimmed.startsWith("v") ? trimmed : `v${trimmed}`; versionElements.forEach((el) => { + (el as HTMLElement).style.fontFamily = '"OpenFront", Inter, sans-serif'; el.textContent = displayVersion; }); } diff --git a/src/client/styles.css b/src/client/styles.css index 4232caf91..a7549e6e1 100644 --- a/src/client/styles.css +++ b/src/client/styles.css @@ -6,6 +6,7 @@ @theme { --default-ring-width: 3px; --default-ring-color: var(--color-malibu-blue); + --font-display: "OpenFront", Inter, Arial, sans-serif; /* Openfront.io brand palette — see Openfront_Brand_Guidelines.pdf §4 */ --color-malibu-blue: #0084d1;