This commit is contained in:
Gnieark 2016-07-04 21:54:14 +02:00
parent 4d4f6395ec
commit 8f60d21b04
2 changed files with 66 additions and 15 deletions

View File

@ -83,7 +83,7 @@ switch ($_POST['act']){
die; die;
break; break;
case "play": case "play":
$logs = "";
//check for correct game ID //check for correct game ID
if($_POST['gameId'] <> $_SESSION['gameId']){ if($_POST['gameId'] <> $_SESSION['gameId']){
echo '{"status":"error"}'; echo '{"status":"error"}';
@ -96,20 +96,52 @@ switch ($_POST['act']){
$board[$botCount] = $bots[$botCount]->getTail(); $board[$botCount] = $bots[$botCount]->getTail();
} }
$busyCells = array(); //les cases prises
$responses = array(); $responses = array();
$loosingBots = array();
$targets = array();
for ($botCount = 0; $botCount < count($bots); $botCount ++){ for ($botCount = 0; $botCount < count($bots); $botCount ++){
$messageArr = array(
'game-id' => '',
'action' => 'play-turn',
'game' => 'tron',
'board' => $board,
'player-index' => $botCount, // To do: verifier que ça restera le même à chaque tour
'players' => $_SESSION['players']
);
$responses[$botCount] = get_IA_Response($bots[$botCount]->getURL(),$messageArr);
}
if($bots[$botCount]->getStatus()){
$messageArr = array(
'game-id' => '',
'action' => 'play-turn',
'game' => 'tron',
'board' => $board,
'player-index' => $botCount, // To do: verifier que ça restera le même à chaque tour
'players' => $_SESSION['players']
);
$busyCells = array_merge($busyCells, $bots[$botCount]->getTail());
$responses[$botCount] = get_IA_Response($bots[$botCount]->getURL(),$messageArr);
if(in_array($responses[$botCount]['responseArr'], $busyCells)){
//this bot plays on a non empty cell, it looses
$bots[$botCount]->loose();
$logs.= $bots[$botCount]->getName()." Played on a non empty cell, he loses.<br/>";
$loosingBots[] = $bots[$botCount]->getName();
}else{
$targets[] = $responses[$botCount]['responseArr'];
}
}
}
for ($botCount = 0; $botCount < count($bots); $botCount ++){
if($bots[$botCount]->getStatus()){
}
}
//dans les bots qui restent, y en a t-il qui jouent sur ma ême case?
//save pat game betwin loosing bots
save_draw_bots($loosingBots);
//find losing bots
print_r($responses); print_r($responses);

View File

@ -1,5 +1,22 @@
<?php <?php
function save_draw_bots($arr){
/*
* Recursive function who save all combionaisons of draw matches
*/
if(count($arr) < 2){
return;
}else{
$a = $arr[0];
array_shift($arr)
foreach($arr as $bot){
save_battle('tron',$a,$bot,0);
}
save_draw_bots($arr);
}
}
class TronPlayer{ class TronPlayer{
private $url; private $url;
private $name; private $name;
@ -41,7 +58,6 @@ class TronPlayer{
} }
$headCoords = end($this->tail); $headCoords = end($this->tail);
switch ($dir){ switch ($dir){
case "y+": case "y+":
$targetCoords = array($headCoords[0],$headCoords[1]++); $targetCoords = array($headCoords[0],$headCoords[1]++);
@ -57,13 +73,16 @@ class TronPlayer{
break; break;
default: default:
return false; return false;
} }
$this->tail[] = $targetCoords; $this->tail[] = $targetCoords;
} }
public function loose(){
$this->state = false;
$this->tail = array();
return false;
}
public function __construct($id,$initialX,$initialY,$initialDirection){ public function __construct($id,$initialX,$initialY,$initialDirection){
$lnBdd = conn_bdd(); $lnBdd = conn_bdd();
$rs = mysqli_query($lnBdd, $rs = mysqli_query($lnBdd,