fixed support for wrap-around levels in EM engine for old tapes
[rocksndiamonds.git] / src / game_em / export.h
index 66dd13347f4e3a9c3318d51858bdd48baddc3e5f..e1519ea65659b80544f6b421b8d082511e56d8c9 100644 (file)
@@ -36,14 +36,17 @@ struct GameInfo_EM
   boolean any_player_moving;
   boolean any_player_snapping;
 
-  boolean use_single_button;
-  boolean use_snap_key_bug;
-
   int last_moving_player;
   int last_player_direction[MAX_PLAYERS];
 
   struct LOGIC *lev;
   struct PLAYER *ply[MAX_PLAYERS];
+
+  // flags to handle bugs in and changes between different engine versions
+  boolean use_single_button;
+  boolean use_snap_key_bug;
+  boolean use_old_explosions;
+  boolean use_wrap_around;
 };
 
 struct LevelInfo_EM
@@ -91,7 +94,7 @@ struct EngineSnapshotInfo_EM
 extern struct GlobalInfo_EM global_em_info;
 extern struct GameInfo_EM game_em;
 extern struct LevelInfo_EM native_em_level;
-extern struct GraphicInfo_EM graphic_info_em_object[TILE_MAX][8];
+extern struct GraphicInfo_EM graphic_info_em_object[GAME_TILE_MAX][8];
 extern struct GraphicInfo_EM graphic_info_em_player[MAX_PLAYERS][PLY_MAX][8];
 extern struct EngineSnapshotInfo_EM engine_snapshot_em;
 
@@ -119,4 +122,7 @@ void SaveEngineSnapshotValues_EM(void);
 
 boolean checkIfAllPlayersFitToScreen(void);
 
+int map_em_element_C_to_X(int);
+int map_em_element_X_to_C(int);
+
 #endif // EXPORT_H