fixed and improved single step mode for all game engines
[rocksndiamonds.git] / src / game.h
index cd388da73abb3f792c094dfbb1a667359ee9cdfa..70df8a252b0b8de56d3a045a5aa31593710e8963 100644 (file)
@@ -122,6 +122,8 @@ struct GameSnapshotInfo
   byte last_action[MAX_PLAYERS];
   boolean changed_action;
   boolean collected_item;
+
+  boolean save_snapshot;
 };
 
 struct GameInfo
@@ -279,6 +281,8 @@ struct PlayerInfo
 
   boolean cannot_move;
 
+  boolean force_dropping;      /* needed for single step mode */
+
   int frame_counter_bored;
   int frame_counter_sleeping;
 
@@ -342,6 +346,8 @@ void DEBUG_SetMaximumDynamite();
 void GetPlayerConfig(void);
 int GetElementFromGroupElement(int);
 
+int getPlayerInventorySize(int);
+
 void DrawGameValue_Time(int);
 void DrawGameDoorValues(void);
 
@@ -350,7 +356,7 @@ void UpdateAndDisplayGameControlValues();
 void InitGameSound();
 void InitGame();
 
-void UpdateEngineValues(int, int);
+void UpdateEngineValues(int, int, int, int);
 void GameWon(void);
 void GameEnd(void);
 
@@ -386,7 +392,8 @@ void FreeEngineSnapshotSingle();
 void FreeEngineSnapshotList();
 void LoadEngineSnapshotSingle();
 void SaveEngineSnapshotSingle();
-boolean SaveEngineSnapshotToList();
+boolean CheckSaveEngineSnapshotToList();
+void SaveEngineSnapshotToList();
 void SaveEngineSnapshotToListInitial();
 boolean CheckEngineSnapshotSingle();
 boolean CheckEngineSnapshotList();