rnd-20091024-1-src
[rocksndiamonds.git] / src / game_sp / export.h
index ffd787839b2e2b0be04ccd905108ae39e1852dad..4438990fde5cd979b4fb9c66cf1b8b01ee844b4a 100644 (file)
@@ -80,20 +80,29 @@ struct GlobalInfo_SP
 
 struct GameInfo_SP
 {
+  boolean LevelSolved;
+  boolean GameOver;
+};
+
+struct DemoInfo_SP
+{
+  boolean is_available;                /* structure contains valid demo */
+
+  int level_nr;                        /* number of corresponding level */
+
+  int length;                  /* number of demo entries */
+  byte data[SP_MAX_TAPE_LEN];  /* array of demo entries */
 };
 
 struct LevelInfo_SP
 {
   LevelInfoType header;
 
-  byte playfield[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
-
   int width, height;
 
-  boolean demo_available;
+  byte playfield[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
 
-  byte demo[SP_MAX_TAPE_LEN];
-  int demo_length;
+  struct DemoInfo_SP demo;
 };
 
 struct GraphicInfo_SP
@@ -125,6 +134,7 @@ struct EngineSnapshotInfo_SP
 /* ------------------------------------------------------------------------- */
 
 extern struct GlobalInfo_SP global_sp_info;
+extern struct GameInfo_SP game_sp_info;
 extern struct LevelInfo_SP native_sp_level;
 extern struct GraphicInfo_SP graphic_info_sp_object[TILE_MAX][8];
 extern struct GraphicInfo_SP graphic_info_sp_player[MAX_PLAYERS][SPR_MAX][8];
@@ -150,4 +160,7 @@ extern void DrawGameDoorValues_SP();
 extern void LoadEngineSnapshotValues_SP();
 extern void SaveEngineSnapshotValues_SP();
 
+extern int map_key_RND_to_SP(int);
+extern int map_key_SP_to_RND(int);
+
 #endif /* GAME_SP_EXPORT_H */