index.js 1.76 KB
Newer Older
1
import GameConfig from "./config/GameConfiguration.js";
Alexander Bazo committed
2 3
import Logger from "./utils/Logger.js";
import StarGazer from "./game/StarGazer.js";
4 5
import FakeGazeDataProvider from "./gaze/FakeGazeDataProvider.js";
import GazeDataProvider from "./gaze/GazeDataProvider.js";
6
import NetClient from "./com/NetClient.js";
Alexander Bazo committed
7

8
var canvas = document.querySelector("canvas"),
9
  starScreen = document.querySelector("#startScreen");
Alexander Bazo committed
10

Alexander Bazo committed
11
function init() {
12
  loadOptions();
13
  if (GameConfig.getShowVerboseDebugInfoInConsole() === true) {
14 15
    Logger.enable();
  }
16 17
  document.querySelector("#versionInfo").innerHTML =
    `build ${GameConfig.getVersion()}`;
18
    document.querySelector("#startButton").addEventListener("click", prepareGame);
Alexander Bazo committed
19 20
}

21
function loadOptions() {
22 23 24 25 26 27
  let useMouse = document.querySelector("#useMouseInput").checked,
    showDebug = document.querySelector("#showDebugInfo").checked,
    logToConsole = document.querySelector("#logToConsole").checked;
  GameConfig.setUseMouseInput(useMouse);
  GameConfig.setShowDebugInfoOnScreen(showDebug);
  GameConfig.setShowVerboseDebugInfoInConsole(logToConsole);
28 29
}

30 31 32 33 34 35 36
function testServer() {
  console.log("Testing Server ...");
  let client = new NetClient();
  client.connect("ws://localhost:2567");
  client.joinGame();
}

37
function prepareGame() {
38
  loadOptions();
Alexander Bazo committed
39
  StarGazer.init({
40
    canvas: canvas,
41
    gazeDataProvider: getDataProvider(),
Alexander Bazo committed
42
  });
43
  canvas.requestFullscreen().then(startGame);
Alexander Bazo committed
44 45
}

46
function startGame() {
47 48
  starScreen.classList.add("hidden");
  canvas.classList.remove("hidden");
Alexander Bazo committed
49 50
}

51 52
function getDataProvider() {
  let provider;
53
  if (GameConfig.getUseMouseInput() === true) {
54 55 56 57
    provider = new FakeGazeDataProvider();
  } else {
    provider = new GazeDataProvider();
  }
58
  provider.start(GameConfig.getGazeServerURL());
59
  return provider;
Alexander Bazo committed
60 61 62
}

init();