for write specs
This commit is contained in:
parent
79ab9d0b71
commit
9cbad2f857
|
@ -21,8 +21,6 @@ function is_it_possible_to_place_ships_on_grid($gridWidth,$gridHeight,$nbShipsSi
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function place_ship_on_map($x1,$y1,$x2,$y2,$map){
|
function place_ship_on_map($x1,$y1,$x2,$y2,$map){
|
||||||
if ((($x1 <> $x2) && ($y1 <> $y2))
|
if ((($x1 <> $x2) && ($y1 <> $y2))
|
||||||
OR (!isset($map[$y1][$x1]))
|
OR (!isset($map[$y1][$x1]))
|
||||||
|
@ -68,6 +66,7 @@ function place_ship_on_map($x1,$y1,$x2,$y2,$map){
|
||||||
return $map;
|
return $map;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
switch($_POST['act']){
|
switch($_POST['act']){
|
||||||
case "init":
|
case "init":
|
||||||
$wantedVars=array(
|
$wantedVars=array(
|
||||||
|
@ -208,7 +207,7 @@ switch($_POST['act']){
|
||||||
break;
|
break;
|
||||||
case "fight":
|
case "fight":
|
||||||
//for debog arena
|
//for debog arena
|
||||||
file_put_contents(__DIR__."/log.txt",print_r($_POST,true));
|
file_put_contents(__DIR__."/log.txt",print_r($_POST,true),FILE_APPEND);
|
||||||
|
|
||||||
|
|
||||||
// if((is_int(settype($_POST['width'],"integer"))) && (is_int(settype($_POST['height'],"integer")))){
|
// if((is_int(settype($_POST['width'],"integer"))) && (is_int(settype($_POST['height'],"integer")))){
|
||||||
|
|
|
@ -8,14 +8,14 @@
|
||||||
<h3>"game"</h3>
|
<h3>"game"</h3>
|
||||||
<p>string, sera toujours "Battleship" Peut servir si votre url sert à plusieurs jeux</p>
|
<p>string, sera toujours "Battleship" Peut servir si votre url sert à plusieurs jeux</p>
|
||||||
<h3>"match_id"</h3>
|
<h3>"match_id"</h3>
|
||||||
<p>String. répond à l'expression réguilière suivante: ^[0-9]+-(1|2)$</p>
|
<p>String. répond à l'expression régulière suivante: ^[0-9]+-(1|2)$</p>
|
||||||
<p>Le premier nombre (digits avant le tiret) identifie le match. L'arène ne vous rappelera pas à chaque tour les cases que vous avez déjà ciblé. A vous de les sauvegarder en attendant le tour suivant. D'autant que votre bot peut être amené à disputer plusieurs matchs simultanément (avec des match_id différents). Le numéro après le tiret vous indique si vous êtes le bot 1 ou le bot 2 dans l'ordre de jeu. Ca vous servira notemment à gérer les cas où votre bot joue les deux joueurs.</p>
|
<p>Le premier nombre (digits avant le tiret) identifie le match. Le numéro après le tiret vous indique si vous êtes le bot 1 ou le bot 2 dans l'ordre de jeu.<br/>
|
||||||
|
Ça vous servira si votre IA fait des statistiques sur les matchs.</p>
|
||||||
<h3>"act"</h3>
|
<h3>"act"</h3>
|
||||||
<p> Peut prendre trois valeurs:</p>
|
<p> Peut prendre deux valeurs:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>"init" On démarre la partie, vous devez placer vos bateaux</li>
|
<li>"init" On démarre la partie, vous devez placer vos bateaux</li>
|
||||||
<li>"play" Vous prenez subissez un tir, et envoyez aussi un tir</li>
|
<li>"fight" Vous envoyez un tir</li>
|
||||||
<li>"end" La partie est finie</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<h2>Initialisation de la partie</h2>
|
<h2>Initialisation de la partie</h2>
|
||||||
|
@ -23,7 +23,6 @@
|
||||||
<p>Votre bot recevra les paramètres communs à toutes les phases de jeu (avec act => init) et les suivants:</p>
|
<p>Votre bot recevra les paramètres communs à toutes les phases de jeu (avec act => init) et les suivants:</p>
|
||||||
<h4>"opponent"</h4>
|
<h4>"opponent"</h4>
|
||||||
<p>String identifiant votre adversaire. Ainsi, vous pouvez pousser le délire jusqu'à faire un algorythme qui s'adapte en fonction de l'adversaire et de l'historique des combats avec ce dernier.</p>
|
<p>String identifiant votre adversaire. Ainsi, vous pouvez pousser le délire jusqu'à faire un algorythme qui s'adapte en fonction de l'adversaire et de l'historique des combats avec ce dernier.</p>
|
||||||
|
|
||||||
<h4>"width"</h4>
|
<h4>"width"</h4>
|
||||||
<p>integer, compris entre 1 et 100, bornes incluses, vous indique la largeur de la map.</p>
|
<p>integer, compris entre 1 et 100, bornes incluses, vous indique la largeur de la map.</p>
|
||||||
<h4>"height"</h4>
|
<h4>"height"</h4>
|
||||||
|
@ -40,7 +39,7 @@
|
||||||
<p>integer, compris entre 0 et 10, bornes incluses, Vous indique le nombre de bateaux de longeur 6 cases à placer.</p>
|
<p>integer, compris entre 0 et 10, bornes incluses, Vous indique le nombre de bateaux de longeur 6 cases à placer.</p>
|
||||||
<h3>Ce que doit retourner votre bot</h3>
|
<h3>Ce que doit retourner votre bot</h3>
|
||||||
<p>Il doit retourner la position des navires.</p>
|
<p>Il doit retourner la position des navires.</p>
|
||||||
<p>Vous retournez un tableau JSON ayant autant d'enregistrement que de navires.
|
<p>Vous retournez un tableau JSON ayant autant d'enregistrements que de navires.
|
||||||
Chaque navire est défini par les coordonnées de ses extrémités.</p>
|
Chaque navire est défini par les coordonnées de ses extrémités.</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>La grille commence au point 0,0.</li>
|
<li>La grille commence au point 0,0.</li>
|
||||||
|
@ -48,6 +47,7 @@ Chaque navire est défini par les coordonnées de ses extrémités.</p>
|
||||||
<li>Les deux points définissant les extrémités d'un navire sont séparés par un tiret "-".</li>
|
<li>Les deux points définissant les extrémités d'un navire sont séparés par un tiret "-".</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h4>Exemple:</h4>
|
<h4>Exemple:</h4>
|
||||||
|
|
||||||
<table class="battleshipGrid nofloat" id="tbl1">
|
<table class="battleshipGrid nofloat" id="tbl1">
|
||||||
<tr><td></td><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
|
<tr><td></td><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
|
||||||
<tr><td>0</td><td class="empty" id="bot1-0-0"></td><td class="shipOn" id="bot1-0-1"></td><td class="empty" id="bot1-0-2"></td><td class="empty" id="bot1-0-3"></td><td class="empty" id="bot1-0-4"></td><td class="empty" id="bot1-0-5"></td><td class="empty" id="bot1-0-6"></td><td class="empty" id="bot1-0-7"></td><td class="empty" id="bot1-0-8"></td><td class="empty" id="bot1-0-9"></td></tr>
|
<tr><td>0</td><td class="empty" id="bot1-0-0"></td><td class="shipOn" id="bot1-0-1"></td><td class="empty" id="bot1-0-2"></td><td class="empty" id="bot1-0-3"></td><td class="empty" id="bot1-0-4"></td><td class="empty" id="bot1-0-5"></td><td class="empty" id="bot1-0-6"></td><td class="empty" id="bot1-0-7"></td><td class="empty" id="bot1-0-8"></td><td class="empty" id="bot1-0-9"></td></tr>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user