var transition = {pid: '', port: '8080' }; // BERT Protocol var players = ["Gabrielo","Mustafa","Alina","Me"]; function handle_web_socket(body) { // console.log(dec(body).value[0][2].value); switch (dec(body).value[0][2].value) { case 'okey_game_info': var a = dec(body).value[0][3][0].value[0][1]; console.log("Players: " + a.length); for (var i=0;i'; slot.parentNode.replaceChild(svg(html),slot); } function rand(lo,hi) { return Math.floor((Math.random()*hi)+lo); } function loadScene() { reload("Kakaranet-7-Refined.svg", "Refined"); for (var i=1;i<16;i++) { empty_card(i,2); empty_card(i,1); } drawSampleCards(); } function findPlace() { for (var y=1;y<3;y++) for (var x=1;x<15;x++) { var e = document.getElementById(slotName(x,y)); if (e.childElementCount == 0) { var pos = e.attributes['id'].value.split("-")[1].split(","); console.log("Free"); console.log(pos[0]); console.log(pos[1]); return { y: pos[0], x: pos[1] }; } } } function findCardOnTable(c,v) { console.log("Find Card " + c + " " + v); for (var y=1;y<3;y++) for (var x=1;x<15;x++) { var e = document.getElementById(slotName(x,y)); if (e.childElementCount > 0) { var value = e.lastChild.textContent; var col = color.indexOf(e.lastChild.attributes['fill'].value) + 1; console.log(col + " " + value); if (c == col && v == value) return { 'x': x, 'y': y }; } } console.log("Card Not Found"); return ""; } function loadAppend(file, animation, name) { loadFile(file, function() { var slot = document.getElementById(name); var r = template_engine(localStorage.getItem(file),{'name': animation}); document.getElementById(name).appendChild(svg(r)); }); } function loadAnimationForButton(a, b) { return loadAppend('templates/ButtonAnimation.svg', a, b); } // TODO: Rollout Monadic Chain here loadFile('templates/Card.svg', function() { loadFile('Kakaranet-7-Refined.svg', function() { loadScene(); var a = [{button: "Create", pathes: ["CreateShow", "CreateHide"]}, {button: "Play", pathes: ["PlayShow", "PlayHide"]}]; for (var y=0;y