diff --git a/html/testBotScripts/connectfour.html b/html/testBotScripts/connectfour.html
index 4b13fb8..638e4dc 100644
--- a/html/testBotScripts/connectfour.html
+++ b/html/testBotScripts/connectfour.html
@@ -222,7 +222,7 @@ function play(player){
var arrToSend= {
"game-id": "" + gameId,
"action" : "play-turn",
- "game" : "connectfour",
+ "game" : "connectFour",
"players" : 2,
"board" : board,
"you" : symbol,
@@ -301,9 +301,9 @@ function startGame(){
var xhr = new XMLHttpRequest();
xhr.open("POST", document.getElementById('url' + p).value, false);
xhr.setRequestHeader("Content-Type", "application/json");
- xhr.send(' {"game-id":"' + gameId + '","action":"init","game":"connectfour","players":2,"board":"","player-index":' + (p - 1) +'}');
+ xhr.send(' {"game-id":"' + gameId + '","action":"init","game":"connectFour","players":2,"board":"","player-index":' + (p - 1) +'}');
if(xhr.status == 200) {
- addLog('Message d\'init envoyé au bot player ' + p + ' {"game-id":"' + gameId + '","action":"init","game":"connectfour","players":2,"board":"","player-index":' + (p - 1) +'}
il a répondu ' + xhr.responseText );
+ addLog('Message d\'init envoyé au bot player ' + p + ' {"game-id":"' + gameId + '","action":"init","game":"connectFour","players":2,"board":"","player-index":' + (p - 1) +'}
il a répondu ' + xhr.responseText );
}else{
addLog('player ' + p + ' n est pas joignable ' + xhr.status);
return;
diff --git a/src/arenas/connectFour/act.php b/src/arenas/connectFour/act.php
index 9d1fabb..74902fd 100644
--- a/src/arenas/connectFour/act.php
+++ b/src/arenas/connectFour/act.php
@@ -2,10 +2,11 @@
require_once(__DIR__."/functions.php");
$bots=get_Bots_Array('connectFou');
-
+$new=false;
switch ($_POST['act']){
case "newFight":
+ $new=true;
//remove $_SESSION less xd_check
$xd=$_SESSION['xd_check'];
session_unset();
@@ -63,13 +64,15 @@ switch ($_POST['act']){
get_IA_Response($_SESSION['bot1']['url'],$params[0]); //don't care about result
get_IA_Response($_SESSION['bot2']['url'],$params[1]); //don't care about result
-
-
- //echo "plop".json_encode($_SESSION['map']);
+
case "fight":
if($_SESSION['game'] <> "connectFou"){
- error(500,"game non found");
+ error(500,"game non found");
+ die;
+ }
+ if((!$new) && ($_POST['gameId'] <> $_SESSION['matchId'])){
+ error (512, "not correct gameId");
}
//What player has to play?
@@ -245,7 +248,8 @@ switch ($_POST['act']){
'strikeY' => $strikeY,
'strikeSymbol'=> $you,
'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer." et a gagné",
- 'cellsWin' => json_encode($cellsWin)
+ 'cellsWin' => json_encode($cellsWin),
+ 'gameId' => $_SESSION['matchId']
);
if($_SESSION['currentPlayer']==1){
save_battle('connectFou',$_SESSION['bot1']['name'],$_SESSION['bot2']['name'],1);
@@ -273,7 +277,8 @@ switch ($_POST['act']){
'strikeX' => $strikeX,
'strikeY' => $strikeY,
'strikeSymbol'=> $you,
- 'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer." match nul"
+ 'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer." match nul",
+ 'gameId' => $_SESSION['matchId']
);
}else{
@@ -283,7 +288,8 @@ switch ($_POST['act']){
'strikeX' => $strikeX,
'strikeY' => $strikeY,
'strikeSymbol'=> $you,
- 'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer
+ 'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer,
+ 'gameId' => $_SESSION['matchId']
);
}
}
@@ -294,7 +300,8 @@ switch ($_POST['act']){
'continue' =>0,
'strikeX' => -1,
'strikeY' => -1,
- 'log' => $you." ".$currentBotName." a fait une réponse non conforme, il perd"
+ 'log' => $you." ".$currentBotName." a fait une réponse non conforme, il perd".json_encode($tempPlayer),
+ 'gameId' => $_SESSION['matchId']
);
if($_SESSION['currentPlayer']==1){
save_battle('connectFou',$_SESSION['bot1']['name'],$_SESSION['bot2']['name'],2);
diff --git a/src/arenas/connectFour/js.js b/src/arenas/connectFour/js.js
index 4f88e38..045fc2b 100644
--- a/src/arenas/connectFour/js.js
+++ b/src/arenas/connectFour/js.js
@@ -18,9 +18,10 @@ function createElem(type,attributes){
{elem.setAttribute(i,attributes[i]);}
return elem;
}
-function connectFour(bot1,bot2,xd_check, newGame){
+function connectFour(bot1,bot2,xd_check, gameId, newGame){
if (newGame === undefined){
- newGame = true;
+ newGame = true;
+ gameId=0;
}
if (newGame){
@@ -58,6 +59,7 @@ function connectFour(bot1,bot2,xd_check, newGame){
}
//log
document.getElementById('logs').innerHTML += reponse['log'] + '
';
+
//fill the grid
if( reponse['strikeX'] > -1){
document.getElementById('td' + reponse['strikeX'] + '_' + reponse['strikeY']).innerHTML = reponse['strikeSymbol'];
@@ -76,8 +78,11 @@ function connectFour(bot1,bot2,xd_check, newGame){
//if game isn't finished, continue
if(reponse['continue'] == 1){
- connectFour(bot1,bot2,xd_check, false);
+ connectFour(bot1,bot2,xd_check,reponse['gameId'], false);
}
+ }else if(xhr.status == 512){
+ //just forget
+ return;
}else{
alert ('error ' + xhr.status);
return;
@@ -90,5 +95,5 @@ function connectFour(bot1,bot2,xd_check, newGame){
}else{
var act='fight';
}
- xhr.send('act=' + act + '&bot1=' + bot1 + '&bot2=' + bot2 + '&xd_check=' + xd_check);
+ xhr.send('act=' + act + '&bot1=' + bot1 + '&bot2=' + bot2 + '&xd_check=' + xd_check + '&gameId=' + gameId);
}
diff --git a/src/arenas/connectFour/public.php b/src/arenas/connectFour/public.php
index 9cfbe7e..1e12634 100644
--- a/src/arenas/connectFour/public.php
+++ b/src/arenas/connectFour/public.php
@@ -23,5 +23,5 @@ $bots=get_Bots_Array('connectFou');
?>