{
struct TextPosInfo level_number;
struct TextPosInfo gems;
+ struct TextPosInfo gems_needed;
+ struct TextPosInfo gems_collected;
+ struct TextPosInfo gems_score;
struct TextPosInfo inventory_count;
struct TextPosInfo inventory_first[NUM_PANEL_INVENTORY];
struct TextPosInfo inventory_last[NUM_PANEL_INVENTORY];
// values for graphics engine customization
int graphics_engine_version;
+ boolean use_native_bd_graphics_engine;
boolean use_native_emc_graphics_engine;
boolean use_native_sp_graphics_engine;
boolean use_masked_pushing;
int scroll_delay_value;
int tile_size;
+ // values for sound engine customization
+ boolean use_native_bd_sound_engine;
+
// constant within running game
int engine_version;
int emulation;
int wind_direction;
boolean explosions_delayed;
- boolean envelope_active;
boolean no_level_time_limit; // (variable only in very special case)
boolean time_limit; // forced by levelset config or setup option
// values for special request dialog control
boolean request_active;
+ boolean envelope_active;
+ boolean any_door_active;
// values for special game control
int centered_player_nr;
void StartGameActions(boolean, boolean, int);
void GameActions(void);
+void GameActions_BD_Main(void);
void GameActions_EM_Main(void);
void GameActions_SP_Main(void);
void GameActions_MM_Main(void);
void RequestQuitGame(boolean);
boolean CheckRestartGame(void);
+boolean checkGameRunning(void);
+boolean checkGamePlaying(void);
boolean checkGameSolved(void);
boolean checkGameFailed(void);
boolean checkGameEnded(void);
+boolean checkRequestActive(void);
unsigned int InitEngineRandom_RND(int);
unsigned int RND(int);