Page principale | Liste des fichiers | Portée globale

Référence du fichier jeu.c

fonctions jeu Plus de détails...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ncurses.h>
#include "affichage.h"
#include "test.h"
#include "reseau.h"

Graphe des dépendances par inclusion de jeu.c:

Aller au code source de ce fichier.

Fonctions

int init_matrices ()
 Initialise les cases des deux matrices à 0.
int interdit (int flag)
 Affiche une erreur lors de l'appel a une action interdite.
int set (char *msg)
 fonction de placement des bateaux sur la grille locale
int unset (char *msg)
 fonction permettant d'enlever de la grille un bateau placé
void demarre_jeu ()
 Démarrer la partie quand les deux joueurs sont pret.
void adv_go ()
 Recupére l'etat de l'adversaire et démarre le jeu si le joueur est pret.
int help ()
 Affichage l'aide pour le placement des bateaux.
int shoot (char *msg)
 Tirer sur une case de l'adversaire.
void recv_shoot (char *msg)
 Traitement des tirs envoyés par l'adversaire.
void rep_shoot (char *msg)
 Analyse la réponse renvoyé suite à un tir.
int interpretation (char *msg)
 Controler la chaine de caractére pour trouver l'action a effectuer.

Variables

int goflag = 0
 1: joueur pret à jouer
int advgoflag = 0
 1: joueur adverse pret à jouer
int flagjeu = 0
 1: le joueur doit jouer
int shoot_ligne = 0
 ligne du tir joué
int shoot_colonne = 0
 colonne du tir joué
int matrice_locale [10][10]
 matrice contenant les positions des bateaux du joueur
int matrice_adverse [10][10]
 matrice contenant les coups joués
int bateaux_dispo [6] = {1,1,1,1,1,1}
 tableau contenant la disponibilité des bateaux


Description détaillée

fonctions jeu

implémentation de l'interface, des tours de jeu, des tirs et réponses, manipulation des matrices de jeu

Auteur:
D.Bernaudeau

J. Vehent

Définition dans le fichier jeu.c.


Documentation des fonctions

void adv_go  ) 
 

Recupére l'etat de l'adversaire et démarre le jeu si le joueur est pret.

Définition à la ligne 281 du fichier jeu.c.

Références advgoflag, demarre_jeu(), et goflag.

Référencé par recv_msg().

Voici le graphe d'appel pour cette fonction:

void demarre_jeu  ) 
 

Démarrer la partie quand les deux joueurs sont pret.

Définition à la ligne 272 du fichier jeu.c.

Références afficher_erreur(), afficher_etat(), et flagjeu.

Référencé par adv_go(), et interpretation().

Voici le graphe d'appel pour cette fonction:

int help  ) 
 

Affichage l'aide pour le placement des bateaux.

Renvoie:
0 si tout se passe bien

Définition à la ligne 293 du fichier jeu.c.

Référencé par interpretation().

int init_matrices  ) 
 

Initialise les cases des deux matrices à 0.

Renvoie:
0 si tout se passe bien

Définition à la ligne 110 du fichier jeu.c.

Références matrice_adverse, et matrice_locale.

Référencé par client(), et serveur().

int interdit int  flag  ) 
 

Affiche une erreur lors de l'appel a une action interdite.

Paramètres:
[in] flag le code d'erreur a afficher
Renvoie:
0 si tout s'est bien passé

Définition à la ligne 129 du fichier jeu.c.

Références afficher_erreur().

Référencé par interpretation(), set(), et shoot().

Voici le graphe d'appel pour cette fonction:

int interpretation char *  msg  ) 
 

Controler la chaine de caractére pour trouver l'action a effectuer.

Paramètres:
[in] msg la chaine de caractère saisie par le joueur
Renvoie:
0 si tout s'est bien passé, -1 en cas d'erreur

Définition à la ligne 525 du fichier jeu.c.

Références advgoflag, afficher_erreur(), bateaux_dispo, demarre_jeu(), flagjeu, goflag, help(), interdit(), set(), shoot(), et unset().

Référencé par send_msg().

Voici le graphe d'appel pour cette fonction:

void recv_shoot char *  msg  ) 
 

Traitement des tirs envoyés par l'adversaire.

Paramètres:
[in] msg la chaine de caractéres contenant les coordonnées du tir
Couler le bateau une case touchée a un id négatif, si le bateau est coulé on soustrait 10 a cet id

Définition à la ligne 371 du fichier jeu.c.

Références afficher_erreur(), afficher_etat(), afficher_matrice(), couler(), flagjeu, matrice_locale, perdu(), et send_rep_shoot().

Référencé par recv_msg().

Voici le graphe d'appel pour cette fonction:

void rep_shoot char *  msg  ) 
 

Analyse la réponse renvoyé suite à un tir.

Paramètres:
[in] msg la chaine de caractéres contenant la réponse au tir
si un bateau est coulé, on vérifie que la partie n'est pas terminée

Couler le bateau une case touchée a un id négatif, si le bateau est coulé on soustrait 10 a cet id

Définition à la ligne 464 du fichier jeu.c.

Références afficher_erreur(), afficher_etat(), afficher_matrice(), flagjeu, matrice_adverse, perdu(), shoot_colonne, et shoot_ligne.

Référencé par recv_msg().

Voici le graphe d'appel pour cette fonction:

int set char *  msg  ) 
 

fonction de placement des bateaux sur la grille locale

Paramètres:
[in] msg la chaine de caractéres contenant les paramétres de placement
Renvoie:
0 si tout s'est bien passé, -1 en cas d'erreur

Définition à la ligne 152 du fichier jeu.c.

Références afficher_erreur(), afficher_matrice(), bateaux_dispo, effacer_bateau(), interdit(), matrice_locale, set_collision(), et sortie_matrice().

Référencé par interpretation().

Voici le graphe d'appel pour cette fonction:

int shoot char *  msg  ) 
 

Tirer sur une case de l'adversaire.

Paramètres:
[in] msg la chaine de caractéres contenant les coordonnées du tir
Renvoie:
0 si tout se passe bien

Définition à la ligne 320 du fichier jeu.c.

Références interdit(), matrice_adverse, send_shoot(), shoot_colonne, et shoot_ligne.

Référencé par interpretation(), et recv_msg().

Voici le graphe d'appel pour cette fonction:

int unset char *  msg  ) 
 

fonction permettant d'enlever de la grille un bateau placé

Paramètres:
msg la chaine de caractéres contenant les paramétres du bateau à déplacer
Renvoie:
0

Définition à la ligne 263 du fichier jeu.c.

Références afficher_erreur().

Référencé par interpretation().

Voici le graphe d'appel pour cette fonction:


Documentation des variables

advgoflag = 0
 

1: joueur adverse pret à jouer

Définition à la ligne 40 du fichier jeu.c.

Référencé par adv_go(), et interpretation().

bateaux_dispo = {1,1,1,1,1,1}
 

tableau contenant la disponibilité des bateaux

sont disponibles: 1 porte-avion (n°1), 3 croiseurs( n°2 à 4) et 2 corvettes (n°5 et 6)

Définition à la ligne 98 du fichier jeu.c.

Référencé par interpretation(), et set().

flagjeu = 0
 

1: le joueur doit jouer

Définition à la ligne 46 du fichier jeu.c.

Référencé par demarre_jeu(), interpretation(), recv_shoot(), et rep_shoot().

goflag = 0
 

1: joueur pret à jouer

Définition à la ligne 34 du fichier jeu.c.

Référencé par adv_go(), et interpretation().

matrice_adverse
 

matrice contenant les coups joués

Définition à la ligne 88 du fichier jeu.c.

Référencé par init_matrices(), rep_shoot(), et shoot().

matrice_locale
 

matrice contenant les positions des bateaux du joueur

MATRICES DES GRILLES DE JEU les matrices sont remplient avec les infos suivantes: 0: case vide, c'est de l'eau 1: case vide touchée par un tir 4: porte avion 5: croiseur 1 6: croiseur 2 7: croiseur 3 8: corvette 1 9: corvette 2

les valeurs opposée des bateaux signifie qu'ils sont touchés

quand on bateau est coulé, ses cases ont la valeur opposées moins 10 ex: porte avion coulée: toutes ses cases ont la valeur -14

Définition à la ligne 82 du fichier jeu.c.

Référencé par init_matrices(), recv_shoot(), et set().

shoot_colonne = 0
 

colonne du tir joué

Définition à la ligne 58 du fichier jeu.c.

Référencé par rep_shoot(), et shoot().

shoot_ligne = 0
 

ligne du tir joué

Définition à la ligne 52 du fichier jeu.c.

Référencé par rep_shoot(), et shoot().


Généré le Sun Apr 30 17:46:01 2006 pour SeaBattle par  doxygen 1.4.4