#ifndef DRAW_H
#define DRAW_H

void loadgfx(void);

void drawstring(int xpos, int ypos, const char* str);
void drawbigstring(int xpos, int ypos, const char* str);

void centerbig(int y, const char* str);

void addsprite(int x, int y, figure* fig);
void plotsprites(void);
void erasesprites(void);
void clearsprites(void);
void clearspritelist(void);

int tovideox(int x);
int tovideoy(int y);

int screentoarrayx(int x);
int screentoarrayy(int y);
int arraytoscreenx(int x);
int arraytoscreeny(int y);

void failure(char* str, ...);

extern int fontxsize, fontysize;
extern int bigfontxsize, bigfontysize, bigfontyspace;

/* On screen array variables */
extern int arraynumx, arraynumy, arraystartx, arraystarty, arrayspacex, arrayspacey;

/* Animation specific #defines */
#define NUMBOMBFRAMES 10
#define NUMWALKFRAMES 60
#define NUMFLAMEFRAMES 80
#define NUMDEATHFRAMES 41


extern figure blocks[3], blocksx[9], bombs1[MAXSETS][NUMBOMBFRAMES], bombs2[MAXSETS][NUMBOMBFRAMES], flamefigs[MAXSETS][NUMFLAMEFRAMES], tiles[15],
	death[NUMDEATHFRAMES];

#endif
