added dirty workaround to open program window on specified display
[rocksndiamonds.git] / src / game.h
index 5739ecf0668eb82c770c3c568264b5a86cd47fa6..26c186fe6df4cf457180ecdf1b7e9b6dc5f477a3 100644 (file)
 #define STR_SNAPSHOT_MODE_EVERY_COLLECT        "every_collect"
 #define STR_SNAPSHOT_MODE_DEFAULT      STR_SNAPSHOT_MODE_OFF
 
+#define STR_SCORES_TYPE_LOCAL_ONLY      "local_scores_only"
+#define STR_SCORES_TYPE_SERVER_ONLY     "server_scores_only"
+#define STR_SCORES_TYPE_LOCAL_AND_SERVER "local_and_server_scores"
+#define STR_SCORES_TYPE_DEFAULT                 STR_SCORES_TYPE_LOCAL_AND_SERVER
+
 #define SNAPSHOT_MODE_OFF              0
 #define SNAPSHOT_MODE_EVERY_STEP       1
 #define SNAPSHOT_MODE_EVERY_MOVE       2
@@ -157,6 +162,7 @@ struct GameInfo
   boolean use_native_sp_graphics_engine;
   boolean use_masked_pushing;
   boolean use_masked_elements;
+  boolean use_masked_elements_initial;
   int forced_scroll_delay_value;
   int scroll_delay_value;
   int tile_size;
@@ -197,7 +203,11 @@ struct GameInfo
 
   boolean explosions_delayed;
   boolean envelope_active;
-  boolean no_time_limit;       // (variable only in very special case)
+  boolean no_level_time_limit; // (variable only in very special case)
+  boolean time_limit;          // forced by levelset config or setup option
+
+  int time_final;              // time (in seconds) or steps left or played
+  int score_time_final;                // time (in frames) or steps played
 
   int score;
   int score_final;
@@ -369,7 +379,7 @@ struct PlayerInfo
   int push_delay;
   int push_delay_value;
 
-  unsigned int actual_frame_counter;
+  DelayCounter actual_frame_counter;
 
   int drop_delay;
   int drop_pressed_delay;
@@ -414,6 +424,8 @@ void UpdateEngineValues(int, int, int, int);
 void GameWon(void);
 void GameEnd(void);
 
+void MergeServerScore(void);
+
 void InitPlayerGfxAnimation(struct PlayerInfo *, int, int);
 void Moving2Blocked(int, int, int *, int *);
 void Blocked2Moving(int, int, int *, int *);
@@ -465,8 +477,8 @@ boolean CheckEngineSnapshotList(void);
 
 void CreateGameButtons(void);
 void FreeGameButtons(void);
+void MapLoadSaveButtons(void);
 void MapUndoRedoButtons(void);
-void UnmapUndoRedoButtons(void);
 void ModifyPauseButtons(void);
 void MapGameButtons(void);
 void UnmapGameButtons(void);