botsArena/src/arenas/Battleship/js.js

84 lines
2.7 KiB
JavaScript
Raw Normal View History

2015-12-10 20:50:19 +01:00
function Ajx(){
var request = false;
try {request = new ActiveXObject('Msxml2.XMLHTTP');}
catch (err2) {
try {request = new ActiveXObject('Microsoft.XMLHTTP');}
catch (err3) {
try { request = new XMLHttpRequest();}
catch (err1) {
request = false;
}
}
}
return request;
}
2015-12-11 11:40:36 +01:00
function createElem(type,attributes)
{
var elem=document.createElement(type);
for (var i in attributes)
{elem.setAttribute(i,attributes[i]);}
return elem;
}
2015-12-11 12:57:48 +01:00
function battleship(bot1,bot2,gridWidth,gridHeight,nbShip1,nbShip2,nbShip3,nbShip4,nbShip5,nbShip6,xd_check){
var bot1IdName = bot1.split("-");
var bot2IdName = bot2.split("-");
2015-12-11 11:40:36 +01:00
document.getElementById('fightResult').innerHTML = '';
//dessiner les deux grilles
2015-12-11 12:57:48 +01:00
var tableAdv=createElem("table",{"id":"tblAdv","class":"battleshipGrid"});
var tableMe=createElem("table",{"id":"tblAdv","class":"battleshipGrid"});
2015-12-11 13:20:45 +01:00
//ligne de titre
var trTitre1=createElem("tr");
var trTitre2=createElem("tr");
2015-12-11 13:22:29 +01:00
var tdTitre1=createElem("th",{"colspan":gridWidth});
var tdTitre2=createElem("th",{"colspan":gridWidth});
2015-12-11 13:20:45 +01:00
tdTitre1.innerHTML = bot1IdName[1];
tdTitre2.innerHTML = bot2IdName[1];
trTitre1.appendChild(tdTitre1);
tableAdv.appendChild(trTitre1);
trTitre2.appendChild(tdTitre2);
tableMe.appendChild(trTitre2);
2015-12-11 11:40:36 +01:00
2015-12-11 12:57:48 +01:00
for (var i=0; i < gridHeight ; i++){
var trAdv=createElem("tr");
var trMe=createElem("tr");
for (var j=0; j < gridWidth ; j++){
var tdAdv=createElem("td",{"id":"adv" + i +"-" + j,"class": "empty"});
var tdMe=createElem("td",{"id":"me" + i +"-" + j,"class": "empty"});
2015-12-11 11:40:36 +01:00
trAdv.appendChild(tdAdv);
trMe.appendChild(tdMe);
}
tableAdv.appendChild(trAdv);
tableMe.appendChild(trMe);
}
document.getElementById('fightResult').appendChild(tableAdv);
document.getElementById('fightResult').appendChild(tableMe);
2015-12-11 13:59:14 +01:00
var divLogs=createElem("div",{"id":"logs"});
document.getElementById('fightResult').appendChild(divLogs);
2015-12-11 11:40:36 +01:00
2015-12-11 13:59:14 +01:00
2015-12-11 11:40:36 +01:00
2015-12-10 20:50:19 +01:00
var xhr = Ajx();
xhr.onreadystatechange = function(){if(xhr.readyState == 4){
if(xhr.status == 200) {
2015-12-12 10:33:33 +01:00
//debug
document.getElementById('logs').innerHTML = xhr.responseText;
2015-12-10 20:50:19 +01:00
}
}};
xhr.open("POST", '/Battleship', true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
2015-12-11 14:03:25 +01:00
xhr.send(
2015-12-12 10:49:01 +01:00
'act=initGame&bot1=' + bot1IdName[0]
+ '&bot2=' + bot2IdName[0]
2015-12-11 14:03:25 +01:00
+ '&gridWidth=' + gridWidth
+ '&gridHeight=' + gridHeight
+ '&nbShip1=' + nbShip1
2015-12-12 10:53:29 +01:00
+ '&nbShip2=' + nbShip2
2015-12-11 14:03:25 +01:00
+ '&nbShip3=' + nbShip3
+ '&nbShip4=' + nbShip4
+ '&nbShip5=' + nbShip5
+ '&nbShip6=' + nbShip6
+ '&xd_check=' + xd_check
);
2015-12-11 13:59:14 +01:00
2015-12-10 20:50:19 +01:00
}