"connectFou"){ error(500,"game non found"); } //What player has to play? if(!isset($_SESSION['currentPlayer'])){ $_SESSION['currentPlayer']=1; $you="X"; $currentBotName=$_SESSION['bot1']['name']; $opponentName=$_SESSION['bot2']['name']; $botUrl=$_SESSION['bot1']['url']; }else{ if($_SESSION['currentPlayer']==1){ $_SESSION['currentPlayer']=2; $you="O"; $opponentName=$_SESSION['bot1']['name']; $currentBotName=$_SESSION['bot2']['name']; $botUrl=$_SESSION['bot2']['url']; }else{ $_SESSION['currentPlayer']=1; $opponentName=$_SESSION['bot2']['name']; $currentBotName=$_SESSION['bot1']['name']; $botUrl=$_SESSION['bot1']['url']; $you="X"; } } //make post datas to send $postDatas=array( 'game' => 'connectFour', 'match_id' => $_SESSION['matchId']."-".$_SESSION['currentPlayer'], 'opponent' => $opponentName, 'you' => $you, 'grid' => json_encode( $_SESSION['map']) ); //send query $anwserPlayer=get_IA_Response($botUrl,$postDatas); //vérifier la validité de la réponse if((isset($_SESSION['map'][5][$anwserPlayer])) && ($_SESSION['map'][5][$anwserPlayer] == "")){ //reponse conforme for($y = 0; $_SESSION['map'][$y][$anwserPlayer] <> ""; $y++){ } $_SESSION['map'][$y][$anwserPlayer]=$you; $strikeX=$anwserPlayer; $strikeY=$y; //does he win? $wins=false; //diagonale \ $count=1; $x=$strikeX; $y=$strikeY; while(($x > 0) && ($y < 5) && ($_SESSION['map'][$y + 1][$x - 1] == $you)){ $x--; $y++; $count++; } $x=$strikeX; $y=$strikeY; while(($x < 6) && ($y > 0) && ($_SESSION['map'][$y - 1][$x + 1] == $you)){ $x++; $y--; $count++; } if($count>3){ $wins=true; } //diagonale / if(!$wins){ $count=1; $x=$strikeX; $y=$strikeY; while(($x < 6) && ($y < 5) && ($_SESSION['map'][$y + 1][$x + 1 ] == $you)){ $x++; $y++; $count++; } $x=$strikeX; $y=$strikeY; while(($x > 0) && ($y > 0) && ($_SESSION['map'][$y - 1][$x - 1 ] == $you)){ $x--; $y--; $count++; } if($count>3){ $wins=true; } } //horizontale if(!$wins){ $count=1; $x=$strikeX; $y=$strikeY; while(($x < 6) && ($_SESSION['map'][$y][$x + 1 ] == $you)){ $x++; $count++; } $x=$strikeX; while(($x >0) && ($_SESSION['map'][$y][$x - 1 ] == $you)){ $count++; $x--; } if($count>3){ $wins=true; } } //verticale if(!$wins){ $count=1; $x=$strikeX; $y=$strikeY; while(($y < 5) && ($_SESSION['map'][$y + 1 ][$x] == $you)){ $y++; $count++; } $y=$strikeY; while(($y >0) && ($_SESSION['map'][$y - 1][$x] == $you)){ $count++; $y--; } if($count>3){ $wins=true; } } if($wins){ $anwserToJS=array( 'continue' => 0, 'strikeX' => $strikeX, 'strikeY' => $strikeY, 'strikeSymbol'=> $you, 'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer"et a gagné" ); }else{ $anwserToJS=array( 'continue' => 1, 'strikeX' => $strikeX, 'strikeY' => $strikeY, 'strikeSymbol'=> $you, 'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer ); } }else{ //reponse non conforme $anwserToJS=array( 'continue' =>0, 'strikeX' => -1, 'strikeY' => -1, 'log' => $you." ".$currentBotName." a fait une réponse non conforme, il perd" ); } echo json_encode($anwserToJS); die; break; default: break; }