1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| int coup(char* joueur, char grille_joueur[27][27], char grille_adversaire[27][27], int taille)
{
char abscisse, ordonnee;
int colonne, ligne, valeur_retour, continue_saisie, vidage, pa=0;
while ((vidage=getchar())!='\n');
do
{
printf("%s : saisissez votre coup ", joueur);
abscisse = getchar();
/*printf("%c", abscisse);*/
ordonnee = getchar();
/*printf("%c\n", ordonnee);*/
colonne = valide_abscisse(abscisse);
ligne = valide_ordonnee(ordonnee);
continue_saisie = 1;
if ((colonne != -1) && (ligne != -1))
if (grille_joueur[ligne][colonne] == '.')
continue_saisie = 0;
else
{
printf("colonne vaut %d\n",colonne);
printf("ligne vaut %d\n",ligne);
printf("Coup deja joue\n");
}
} while (continue_saisie);
if (grille_adversaire[ligne][colonne] == '.')
{
grille_joueur[ligne][colonne] = 'o';
printf("a l'eau !\n");
valeur_retour = 0;
}
else if (grille_adversaire[ligne][colonne] == 'P')
{
grille_joueur[ligne][colonne] = 'x';
/*-------------Le problème est ici ----------------------------*/
pa=pa+1;
if (pa!=5)
{
printf("Porte-avions touche %d !\n",pa);
}
else
{
printf("Porte-avions coule !\n");
}
/*-----------------------------------------------------------*/
valeur_retour = 1;
}
else if (grille_adversaire[ligne][colonne] == 'C')
{
grille_joueur[ligne][colonne] = 'x';
printf("Croiseur touche !\n");
valeur_retour = 1;
}
else if (grille_adversaire[ligne][colonne] == 'D')
{
grille_joueur[ligne][colonne] = 'x';
printf("Destroyer touche !\n");
valeur_retour = 1;
}
else if (grille_adversaire[ligne][colonne] == 'S')
{
grille_joueur[ligne][colonne] = 'x';
printf("Sous-marin touche !\n");
valeur_retour = 1;
}
return valeur_retour;
} |
Partager