-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcuriosity.h
51 lines (35 loc) · 1.04 KB
/
curiosity.h
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
#ifndef CURIOSITY_H
#define CURIOSITY_H
#include <stdbool.h>
#define tailleCarte 255
#define PLAIN '.'
#define MARK 'M'
#define WATER '~'
#define ROCK '#'
#define TARGET '@'
enum { CPLAIN, CMARK, CWATER, CROCK, CTARGET, CURIOSITY }; /* colors */
enum { RATE, CIBLERATEE, REUSSI, VICTOIRE };
struct carte
{
int carte_num;
unsigned int hauteur;
unsigned int largeur;
char map[tailleCarte][tailleCarte];
bool marques[tailleCarte][tailleCarte]; /* marques à vérifier quand Curiosity atteint la cible */
};
extern struct carte mars;
extern unsigned int cX,cY; // Position de curiosity (cX,cY)
extern int dX,dY; // Direction de curiosity (dX,dY)=(1,0)|(-1,0)|(0,1)|(0,-1)
void initCarte (int carte_num);
void ajoutLigneCarte (char*);
bool verifieMarques (void);
void lireCarte(void);
void afficherCarte(void);
int avance(void);
/* renvoie VICTOIRE si cible atteinte, RATE en cas de problème, et REUSSI si
* le déplacement est effectué */
void droite(void);
void gauche(void);
int mesure(int);
void pose(int);
#endif