diff --git a/client/scripts/interface/mainmenu/join.js b/client/scripts/interface/mainmenu/join.js new file mode 100644 index 0000000..41966f3 --- /dev/null +++ b/client/scripts/interface/mainmenu/join.js @@ -0,0 +1,12 @@ +import * as net from "../../net/netcode.js" +import {Picker} from "./picker.js" +import {tileArray, menuArray} from "../../display/tileRenderer.js" +import * as util from "../../util.js" +import {ID} from "../../util.js" +import * as status from "../../net/status.js" + +var colorPicker; + +export function init(){ + colorPicker = new Picker("joinGameSelectColorBar", tileArray, [8, 16], null, 0, null) +} diff --git a/client/scripts/interface/mainmenu/menu.js b/client/scripts/interface/mainmenu/menu.js index da5776b..b4ec0c2 100644 --- a/client/scripts/interface/mainmenu/menu.js +++ b/client/scripts/interface/mainmenu/menu.js @@ -1,7 +1,7 @@ import * as status from "../../net/status.js" // import {joinGame, createGame} from "../../net/netcode.js" import { changeScene } from "../scene.js" -import * as createMenu from "./create.js" + import {ID} from "../../util.js" const joinType = ID("joinType") @@ -15,14 +15,12 @@ codeInput.addEventListener("input", e => { ID("gotoCreate").addEventListener("click", e => { -joinType.style.display = "none" -createGameMenu.style.display = "" -createMenu.init() +changeScene("newgame") }) ID("gotoJoin").addEventListener("click", e => { -joinType.style.display = "none" -joinGameMenu.style.display = ""; + if (codeInput.value.length !== 6) return console.log("error") +net.initJoin(codeInput.value) }) ID("joinGameButton").addEventListener("click", e => { diff --git a/client/scripts/interface/scene.js b/client/scripts/interface/scene.js index 89bd0a2..80b6a12 100644 --- a/client/scripts/interface/scene.js +++ b/client/scripts/interface/scene.js @@ -1,13 +1,33 @@ +import {ID} from "../util.js" +import * as createMenu from "./mainmenu/create.js" +import * as joinMenu from "./mainmenu/join.js" +const menu = ID('menu') +const game = ID('game') +const joinType = ID("joinType") +const joinGameMenu = ID("joinGame") +const createGameMenu = ID("createGame") + export function changeScene(scene) { - if (scene == "game") { - document.getElementById('menu').style = "display: none;" - document.getElementById('game').style = "" - // picker.create(); - } - if (scene == "mainmenu") { - document.getElementById('menu').style = "" - document.getElementById('game').style = "display: none;" - // picker.destroy(); + console.log(`Changing scene to ${scene}`) + switch (scene) { + case "game": + menu.style = "display: none;" + game.style = "" + break; + case "mainmenu": + menu.style = "" + game.style = "display: none;" + break; + case "newgame": + joinType.style.display = "none"; + createGameMenu.style.display = ""; + createMenu.init(); + break; + case "joingame": + joinType.style.display = "none"; + joinGameMenu.style.display = ""; + joinMenu.init(); + break; } }; diff --git a/client/scripts/net/netcode.js b/client/scripts/net/netcode.js index 9978429..ad662a7 100644 --- a/client/scripts/net/netcode.js +++ b/client/scripts/net/netcode.js @@ -11,6 +11,10 @@ export function joinGame(data){ socket.emit('joinGame', data); } +export function initJoin(code){ + socket.emit('initJoin', code) +} + export function createGame(data){ socket.emit('createGame', data); } diff --git a/client/www/game.html b/client/www/game.html index 3afd104..05685c2 100644 --- a/client/www/game.html +++ b/client/www/game.html @@ -2,7 +2,6 @@