#include "../macros.h"
#define MAX_NPERSO 20
#include "../sprites.h"

/*--Structures--*/
typedef struct {
  int x;
  int y;
}Coord;

typedef struct {
  int type;
  Sprite *elem;
  int anim;
  int frame;
  int params[260];
  /* Structure simplifiée par rapport au jeu */
  int nparams;
  int sol;
  int fixe;
}Case;


const char legende[]="LÉGENDE :
_		sol
+		mur
#		bloc
T[case]		téléportation[case de 0 à 240]
O[case]		bouton[idem]
>[sens] 	flèche[0:haut, 1:bas, 2:gauche, 3:droite]
=[direction]    tunnel[0:<v>, 1:<^>,  2:^v>, 3:<^v, 4:<^, 5:^>, 6:<v, 7:v>, 8:^v, 9:<>, 10:<^v>]
*		fontaine(régénération)\n";



int NB_PERSO, VITESSE, REGEN, LFLAMMES, NBOMBES, REBOURS, BONUSFREQ;
int pleinecran;
Uint32 flags;
char repertoire[256];
char prefixeniv[256], prefixespr[256];
char niv[256];

Case pl[18][15];
Coord persopos[8];
Coord actif;

Sprite *nived;
Sprite *elemliste[50];
Sprite *nb[8];

char graphtype[256];
int decl;
SDL_Rect tout, plateau, recdroite;

SDL_Surface *ecran;
Uint8 *clavier;

int compteur;
int encore;

Case elemactif;
int *paramsbuf, nparamsbuf;

int aleat(int max);
void erreur(char message[200], char param[20]);
void animsplus(Sprite *sprite, int anim, int vitesse, int duree, int x, int y);
void rscaseplus(int x, int y);
void rdplateau(void);
void blitsprit(Sprite *spr, int anim, int frame, int x, int y);
void initliste(void);
