From 771adddea679c9c991ce72eac9271b84fca11350 Mon Sep 17 00:00:00 2001 From: Gnieark Date: Mon, 9 Nov 2015 18:46:55 +0100 Subject: [PATCH] let's fight --- morpionsFights/Master/index.php | 138 +++++++++++++++++++++++++++++ morpionsFights/Master/stupidIa.php | 23 +++++ morpionsFights/README.md | 53 +++++++++++ 3 files changed, 214 insertions(+) create mode 100755 morpionsFights/Master/index.php create mode 100644 morpionsFights/Master/stupidIa.php create mode 100644 morpionsFights/README.md diff --git a/morpionsFights/Master/index.php b/morpionsFights/Master/index.php new file mode 100755 index 0000000..bfbf31d --- /dev/null +++ b/morpionsFights/Master/index.php @@ -0,0 +1,138 @@ + + +Arbitre Morpion + + + + +

Arène à morpions

+
+
+

+ /> + /> +

+

+ /> + /> + +

+

+

+
+ '','0-1' => '','0-2' => '',
+        '1-0' => '','1-1' => '','1-2' => '',
+        '2-0' => '','2-1' => '','2-2' => '');
+    
+    $end=false;
+    $playerEnCours=1;
+    while($end==false){
+        switch($playerEnCours){
+            case  1:
+                $playerURL=$_POST['ia1URL'];
+                $playerCHAR=$_POST['youIA1'];
+                break;
+            case 2:
+                $playerURL=$_POST['ia2URL'];
+                $playerCHAR=$_POST['youIA2'];
+                break;
+                
+            default:
+                echo "une erreur est survenue";
+                die;
+        }
+       $playerRep=htmlentities(getIAResponse($playerCHAR,$playerURL,$grille));
+      	echo "Reponse: ".$playerRep."\n"; 
+	//tester la validité de la réponse
+       if((isset($grille[$playerRep])) && ($grille[$playerRep]=="")){
+            //reponse conforme
+            echo  $playerCHAR." joue en ".$playerRep." la nouvelle grille est \n";       
+            $grille[$playerRep]=$playerCHAR;
+            for($j=0;$j<3;$j++){
+                for($i=0;$i<3;$i++){
+                    echo $grille[$j."-".$i];
+                    if ($grille[$j."-".$i]==""){
+                        echo " ";
+                    }
+                }
+                echo "\n";
+            }
+            //tester si trois caracteres allignés
+            if(
+                    (($grille['0-0']==$grille['0-1'])&&($grille['0-1']==$grille['0-2'])&&($grille['0-2']!==""))
+                OR  (($grille['1-0']==$grille['1-1'])&&($grille['1-1']==$grille['1-2'])&&($grille['1-2']!==""))
+                OR  (($grille['2-0']==$grille['2-1'])&&($grille['2-1']==$grille['2-2'])&&($grille['2-2']!==""))
+                OR  (($grille['0-0']==$grille['1-0'])&&($grille['1-0']==$grille['2-0'])&&($grille['2-0']!==""))
+                OR  (($grille['0-1']==$grille['1-1'])&&($grille['1-1']==$grille['2-1'])&&($grille['2-1']!==""))
+                OR  (($grille['0-2']==$grille['1-2'])&&($grille['1-2']==$grille['2-2'])&&($grille['2-2']!==""))
+                OR  (($grille['0-0']==$grille['1-1'])&&($grille['1-1']==$grille['2-2'])&&($grille['2-2']!==""))
+                OR  (($grille['0-2']==$grille['1-1'])&&($grille['1-1']==$grille['2-0'])&&($grille['2-0']!==""))
+            ){
+                echo "le joueur ".$playerCHAR." a gagné.";
+                $end=true;
+                break;
+            }
+            //tester si toutes les cases ne seraient pas prises
+            $full=true;
+            
+             foreach($grille as $char){
+                if($char==""){
+                    $full=false;
+                    break;
+                }
+            }
+            if($full){
+                echo "Match nul";
+                $end=true;
+                break;
+            }
+            
+            //on change de joueur
+            if($playerEnCours==1){
+                $playerEnCours=2;
+            }else{
+                $playerEnCours=1;
+            }
+       }else{
+            echo "le joueur ".$playerCHAR." a fait une réponse non conforme. Il perd";
+            break;
+       
+       }
+    }
+}
+
+function getIAResponse($youChar,$iaBaseUrl,$grille){
+    $paramsGrille="";
+    foreach($grille as $key => $case){
+        $paramsGrille.="&".$key."=".$case;
+    }
+    $url=$iaBaseUrl."?you=".$youChar.$paramsGrille;
+   echo "\n".$url."\n"; 
+    //return http_get($url);
+    $ch = curl_init();
+    curl_setopt($ch, CURLOPT_URL, $url);
+    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
+    // $output contains the output string
+     $output = curl_exec($ch);
+    // close curl resource to free up system resources
+    curl_close($ch);   
+    return $output;
+}
+
+?>
+
+
+ + diff --git a/morpionsFights/Master/stupidIa.php b/morpionsFights/Master/stupidIa.php new file mode 100644 index 0000000..3bbe532 --- /dev/null +++ b/morpionsFights/Master/stupidIa.php @@ -0,0 +1,23 @@ +