#include <stdio.h> #include <stdlib.h> #include "terrain.h" #include "structures.h" #include "personnage.h" #include "deplacements.h" /*! * \file case.c * \brief Fichier contenant le code des fonctions liees aux cases */ Case * init_case(Case * c,int x, int y, Terrain *t){ c->coord_x=x; c->coord_y=y; c->terrain=t; c->occupee=faux; return c; } int get_x(Case *c){ return c->coord_x; } int get_y(Case *c){ return c->coord_y; } boolean est_occupee(Case *c){ return c->occupee; } boolean case_franchissable(Case *c){ return terrain_franchissable(c->terrain); } void marquer_occupee(Case *c){ if (c->occupee==vrai) printf("case d�j� occup�e"); c->occupee=vrai; } void marquer_libre(Case *c){ if (c->occupee==faux) printf("case d�j� libre"); c->occupee=faux; } Terrain* get_terrain(Case *c){ if (c->terrain==NULL){ fprintf(stderr,"pas de terrain"); } return c->terrain; } int init_carte(Carte* c,unsigned short int largeur, unsigned short int hauteur){ int i,j,n; n=0; if (largeur*hauteur>TAILLE_MAX_CARTE){ printf("erreur : taille maximum de la carte d�pass�e"); return 1; } for (i=0;i<(largeur);i++){ for (j=0;j<(hauteur);j++){ init_case(c[n],i,j,NULL); n++; } } return 0; }