import GameConfig from "./config/GameConfiguration.js"; import Logger from "./utils/Logger.js"; import StarGazer from "./game/StarGazer.js"; import FakeGazeDataProvider from "./gaze/FakeGazeDataProvider.js"; import GazeDataProvider from "./gaze/GazeDataProvider.js"; var canvas = document.querySelector("canvas"), starScreen = document.querySelector("#startScreen"); function init() { loadOptions(); if (GameConfig.getShowVerboseDebugInfoInConsole() === true) { Logger.enable(); } document.querySelector("#versionInfo").innerHTML = `build ${GameConfig.getVersion()}`; document.querySelector("#startButton").addEventListener("click", prepareGame); } function loadOptions() { let useMouse = document.querySelector("#useMouseInput").checked, showDebug = document.querySelector("#showDebugInfo").checked, logToConsole = document.querySelector("#logToConsole").checked, gameServerUrl = document.querySelector("#gameServerUrl").value; GameConfig.setUseMouseInput(useMouse); GameConfig.setShowDebugInfoOnScreen(showDebug); GameConfig.setShowVerboseDebugInfoInConsole(logToConsole); GameConfig.setGameServerURL(gameServerUrl); } function prepareGame() { loadOptions(); StarGazer.init({ canvas: canvas, gazeDataProvider: getDataProvider(), }); canvas.requestFullscreen().then(startGame); } function startGame() { starScreen.classList.add("hidden"); canvas.classList.remove("hidden"); } function getDataProvider() { let provider; if (GameConfig.getUseMouseInput() === true) { provider = new FakeGazeDataProvider(); } else { provider = new GazeDataProvider(); } provider.start(GameConfig.getGazeServerURL()); return provider; } init();