/* $Id: map.h,v 1.1 2003/09/21 20:15:28 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 Sint16 frame; // frame (frame > 0 && FS_stone) Sint32 frameto; // frame to unsigned char special; // to save special stones, or the tunnel number _ex_field ex[4]; // count up every explosion there is on this field for ever direction Sint32 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]; _point tunnel[GAME_MAX_TUNNELS]; // save the destination of the tunnel 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; signed char type; // type of the map (MAPT_*); unsigned char bombs; unsigned char fire; unsigned char shoes; unsigned char mixed; unsigned char death; unsigned char sp_trigger; unsigned char sp_push; unsigned char sp_row; unsigned char state; // state of the map } typedef _map; extern _map map; // mapmenu.c extern void mapmenu (); extern void 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 * fmap); #endif