diff --git a/src/map.h b/src/map.h new file mode 100644 index 0000000..407e8a0 --- /dev/null +++ b/src/map.h @@ -0,0 +1,58 @@ +/* $Id: map.h,v 1.1 2003/07/16 15:27:48 stpohle Exp $ */ +/* map.h */ + +#ifndef _MAP_H_ +#define _MAP_H_ + +struct __ex_field { + unsigned char count; + unsigned char frame; +} typedef _ex_field; + + +struct __field { + unsigned char type; + signed char mixframe; // data for the mixed frame + short int frame; // frame (frame > 0 && FS_stone) + int frameto; // frame to + unsigned char special; // to save special stones + _ex_field ex[4]; // count up every explosion there is on this field for ever direction + int ex_nr; // number to identify the explosion. +} typedef _field; + + +struct __map { + _point size; // dimension of the field + + _field field[MAX_FIELDSIZE_X][MAX_FIELDSIZE_Y]; + unsigned char bfield[MAX_FIELDSIZE_X][MAX_FIELDSIZE_Y]; // will hold informations if ther is a bomb + + char tileset [LEN_TILESETNAME]; + signed char random_tileset; + char map [LEN_PATHFILENAME]; + signed char map_selection; + + unsigned char bombs; + unsigned char fire; + unsigned char shoes; + unsigned char sp_trigger; + unsigned char sp_push; + unsigned char sp_row; +} typedef _map; + + +extern _map map; + +// mapmenu.c +extern void mapmenu (); +extern void display_mapinfo (); + +// map.c +extern void map_random (); +extern void map_genrandom (); +extern void init_map_tileset(); +extern void map_new (char *filename); +extern void map_set_playerposition (int usermap); +extern void map_load (FILE * map); + +#endif