示例#1
0
 //Trouver où cette position est (son indice) dans le tableau de positions du navire.
 int trouverIndicePosition(Navire nav, Pos p)
 {
     int indice = 0;
     while ((nav._pos[indice]._x != p._x || nav._pos[indice]._y != p._y) && indice < nav._pos.Length)
     {
         ++indice;
     }
     if (indice >= nav._pos.Length)
     {
         //position non trouvée
         return -1;
     }
     return indice;
 }
示例#2
0
 //Vérifie si toutes les positions du navire sont touchées
 bool bateauEstCoule(Navire nav)
 {
     bool estCoule = true;
     for (int p = 0; p < nav._pos.Length && estCoule == true; ++p)
     {
         if (nav._pos[p]._estTouche == false)
         {
             estCoule = false;
         }
     }
     return estCoule;
 }
示例#3
0
 void toucherBateau(Navire nav, Pos p)
 {
     int indice = trouverIndicePosition(nav, p);
     nav._pos[indice]._estTouche = true;
 }
示例#4
0
 /// <summary>
 /// Cette méthode guide l'usager pour qu'il place un bateau et limite ses actions pour que ça convienne au bateau courant
 /// </summary>
 /// <param name="navire"></param>
 private void placerBateaux(Navire navire)
 {
     ecrireAuLog("Veuillez placer votre " + navire._nom + "  (" + navire._pos.Length + ")");
     nomBateauCourant = navire._nom;
     grandeurBateauCourant = navire._pos.Length;
 }