35 lines
1.0 KiB
TypeScript
35 lines
1.0 KiB
TypeScript
// @ts-ignore
|
|
const {$, doAfterLoad, footer, header, nav} = window.fwdekker;
|
|
import {waitForForkAwesome} from "./Common";
|
|
import {BasicIconFont, ForkAwesomeFont} from "./Display";
|
|
import {Game} from "./Game";
|
|
import {Preferences} from "./Preferences";
|
|
|
|
|
|
doAfterLoad(() => {
|
|
// Initialize template
|
|
$("#nav").appendChild(nav("/Tools/Minesweeper/"));
|
|
$("#header").appendChild(header({title: "Minesweeper"}));
|
|
$("#footer").appendChild(footer({
|
|
vcsURL: "https://git.fwdekker.com/tools/minesweeper/",
|
|
version: "v%%VERSION_NUMBER%%"
|
|
}));
|
|
$("main").classList.remove("hidden");
|
|
|
|
|
|
// Start game
|
|
const preferences = new Preferences();
|
|
waitForForkAwesome(
|
|
() => {
|
|
preferences.font = new ForkAwesomeFont();
|
|
new Game(preferences);
|
|
},
|
|
() => {
|
|
alert("External font could not be loaded. Using fallback font. Is a browser extension blocking fonts?");
|
|
preferences.font = new BasicIconFont();
|
|
new Game(preferences);
|
|
},
|
|
3000
|
|
);
|
|
});
|