var elems = { games: document.getElementById("games"), overlay: document.getElementById("overlay"), }; function makeGame(game) { var a = document.createElement("a"); a.innerText = game; a.href = "javascript:void(0)"; a.onclick = ipc.run.bind(null, game); return a; } ipc.init(8085, () => { elems.overlay.className = ""; }); ipc.ongamestopped = () => { console.log("Game stopped."); elems.overlay.className = ""; } ipc.ongamestart = () => { console.log("Game started."); elems.overlay.className = "active"; } ipc.ongamelist = games => { elems.games.innerHTML = ""; games.forEach(g => elems.games.appendChild(makeGame(g))); } ipc.onerror = msg => { alert(msg); }