moved game values for score and health from player to game structure
[rocksndiamonds.git] / src / game.h
index 553ec4b7498b516879a041fafb2f736e304189f7..602922bdff6c207b8ddddea3e02e78f9c2648cd3 100644 (file)
@@ -186,10 +186,24 @@ struct GameInfo
   int belt_dir_nr[4];
   int switchgate_pos;
   int wind_direction;
+
   boolean explosions_delayed;
   boolean envelope_active;
   boolean no_time_limit;       // (variable only in very special case)
 
+  int score;
+  int score_final;
+
+  int health;
+  int health_final;
+
+  int gems_still_needed;
+  int sokoban_fields_still_needed;
+  int sokoban_objects_still_needed;
+  int lights_still_needed;
+  int players_still_needed;
+  int friends_still_needed;
+
   // values for the new EMC elements
   int lenses_time_left;
   int magnify_time_left;
@@ -221,6 +235,19 @@ struct GameInfo
 
   // values for game engine snapshot control
   struct GameSnapshotInfo snapshot;
+
+  // values for handling states for solved level and game over
+  boolean LevelSolved;
+  boolean GameOver;
+
+  boolean LevelSolved_GameWon;
+  boolean LevelSolved_GameEnd;
+  boolean LevelSolved_SaveTape;
+  boolean LevelSolved_SaveScore;
+
+  int LevelSolved_CountingTime;
+  int LevelSolved_CountingScore;
+  int LevelSolved_CountingHealth;
 };
 
 struct PlayerInfo
@@ -234,6 +261,7 @@ struct PlayerInfo
 
   boolean killed;              // player maybe present/active, but killed
   boolean reanimated;          // player maybe killed, but reanimated
+  boolean buried;              // player finally killed and removed
 
   int index_nr;                        // player number (0 to 3)
   int index_bit;               // player number bit (1 << 0 to 1 << 3)
@@ -268,17 +296,6 @@ struct PlayerInfo
 
   boolean gravity;
 
-  boolean LevelSolved, GameOver;
-
-  boolean LevelSolved_GameWon;
-  boolean LevelSolved_GameEnd;
-  boolean LevelSolved_SaveTape;
-  boolean LevelSolved_SaveScore;
-
-  int LevelSolved_CountingTime;
-  int LevelSolved_CountingScore;
-  int LevelSolved_CountingHealth;
-
   int last_move_dir;
 
   boolean is_active;
@@ -340,17 +357,6 @@ struct PlayerInfo
 
   int step_counter;
 
-  int score;
-  int score_final;
-
-  int health;
-  int health_final;
-
-  int gems_still_needed;
-  int sokobanfields_still_needed;
-  int lights_still_needed;
-  int players_still_needed;
-  int friends_still_needed;
   int key[MAX_NUM_KEYS];
   int num_white_keys;
   int dynabomb_count, dynabomb_size, dynabombs_left, dynabomb_xl;