replaced glib function calls to g_file_get_contents()
[rocksndiamonds.git] / src / game_bd / bd_gameplay.h
index 4fb6ece48f342c0e3edd5ee17b00568f34938fbf..b87a3aeabddf4afc48ac76c6a3c1c56e407164f7 100644 (file)
 /* ... 8 frames of cover animation */
 #define GAME_INT_COVER_ALL             108
 
-typedef enum _gd_gametype
-{
-  GD_GAMETYPE_NORMAL,
-  GD_GAMETYPE_SNAPSHOT,
-  GD_GAMETYPE_TEST,
-  GD_GAMETYPE_REPLAY,
-  GD_GAMETYPE_CONTINUE_REPLAY,
-} GdGameType;
 
 typedef struct _gd_game
 {
@@ -73,16 +65,9 @@ typedef struct _gd_game
   boolean player_move_stick;
   boolean player_fire;
 
-  GdGameType type;
-
   GdCave *cave;             /* Copy of the cave. This is the iterated, changed (ruined...) one */
   GdCave *original_cave;    /* original cave from caveset. used to record highscore */
 
-  GdReplay *replay_record;
-  GdReplay *replay_from;
-
-  GList *replays_recorded;
-
   boolean out_of_window;   /* will be set to true, if player is not visible in the window, and we have to wait for scrolling */
 
   int cave_num;             /* actual playing cave number */
@@ -92,7 +77,12 @@ typedef struct _gd_game
 
   int state_counter;        /* counter used to control the game flow, rendering of caves */
   int **element_buffer;
+  int **last_element_buffer;
+  int **dir_buffer;
   int **gfx_buffer;         /* contains the indexes to the cells; created by *start_level, deleted by *stop_game */
+  int itercycle;
+  int itermax;
+  int itermax_last;
   int animcycle;
   int milliseconds_game;
   int milliseconds_anim;
@@ -121,7 +111,6 @@ void gd_game_free(GdGame *gameplay);
 GdGame *gd_game_new(const int cave, const int level);
 GdGame *gd_game_new_snapshot(GdCave *snapshot);
 GdGame *gd_game_new_test(GdCave *cave, int level);
-GdGame *gd_game_new_replay(GdCave *cave, GdReplay *replay);
 
 void play_game_func(GdGame *game, int action);