#define MAX_COMMANDS 8 #define MAX_SOUND_LENGTH 1024 #define MAX_SOUNDS 50 #define MAX_STRING_LENGTH 256 #define MAX_NUMBER_OF_FILES 100 typedef struct stDisplay { unsigned int Width; unsigned int Height; unsigned short Depth; short Mode; short Fullscreen; short Filtermode; short Zoom; unsigned short FrameSkip; } stDisplay; typedef struct stDevice { SDL_Joystick *Joystick; SDL_Event Event; } stDevice; typedef struct stLevelControl { // level control int command; // used to give a command to playgame_levelmanager() int chglevelto; // parameter to LVLC_CHANGE_LEVEL int tobonuslevel; // if 1 player will warp to bonus level on return to WM (for ep1) // data about current level int curlevel; // number of current level char success; // 1 if level was finished, 0 if he died char isfinallevel; // 1 if this is the final level char canexit; // 1 if player is allowed to use the exit door char gameovermode; // 1 if "Game Over" is displayed char dokeensleft; // 1 if we need to do the "Keens Left" char dark; // 1 if level is currently dark (lights are out) int episode; // which episode we're playing (1-3) bool hardmode; // array of which levels have been completed (have "Done" tiles over them // on the world map) int levels_completed[MAX_LEVELS+1]; // exitXpos: the X pixel position (not <