renamed field in level structure for EM engine
[rocksndiamonds.git] / src / game_em / emerald.h
index 8394414859493a04646233469049fc06a778bc22..b3f285a9d3d5c3803404787b88ab551d4a36f858 100644 (file)
@@ -618,93 +618,76 @@ enum
 // data structure definitions
 // ----------------------------------------------------------------------------
 
-struct LEVEL
+struct LOGIC
 {
-  int home_initial;            /* number of players (initial) */
-  int home;                    /* number of players not yet at home */
-                               /* 0 == all players at home */
-
-  int width;                   /* playfield width */
-  int height;                  /* playfield height */
-
-  int left;                    /* playfield left edge */
-  int top;                     /* playfield top edge */
-  int right;                   /* playfield right edge */
-  int bottom;                  /* playfield bottom edge */
-
-  int player_x[MAX_PLAYERS];   /* player x pos */
-  int player_y[MAX_PLAYERS];   /* player y pos */
-
-  int time_seconds;            /* available time (seconds) */
-  int time_initial;            /* available time (initial) */
-  int time;                    /* time remaining (runtime) */
-
-  boolean killed_out_of_time;  /* kill player due to time out */
+  int width;                   /* cave width */
+  int height;                  /* cave height */
 
-  int required_initial;                /* emeralds needed (initial) */
-  int required;                        /* emeralds needed (runtime) */
+  int left;                    /* cave left edge */
+  int top;                     /* cave top edge */
+  int right;                   /* cave right edge */
+  int bottom;                  /* cave bottom edge */
 
+  int time;                    /* time remaining */
+  int gems_needed;             /* emeralds needed */
   int score;                   /* score */
 
-  /* all below entries must be filled every time a level is read */
-
+  int eater_score;             /* score for killing eater */
   int alien_score;             /* score for killing alien */
-  int amoeba_time;             /* amoeba speed */
-  int android_move_cnt_initial;        /* android move counter (initial) */
-  int android_move_cnt;                /* android move counter */
-  int android_move_time;       /* android move reset time */
-  int android_clone_cnt_initial;/* android clone counter (initial) */
-  int android_clone_cnt;       /* android clone counter */
-  int android_clone_time;      /* android clone reset time */
-  int ball_cnt;                        /* ball counter */
-  int ball_pos;                        /* ball array pos counter */
-  int ball_random;             /* ball is random flag */
-  int ball_state_initial;      /* ball active flag (initial) */
-  int ball_state;              /* ball active flag */
-  int ball_time;               /* ball reset time */
   int bug_score;               /* score for killing bug */
+  int tank_score;              /* score for killing tank */
+  int slurp_score;             /* score for slurping alien with spring */
+  int nut_score;               /* score for cracking nut to emerald */
+  int emerald_score;           /* score for collecting emerald */
   int diamond_score;           /* score for collecting diamond */
   int dynamite_score;          /* score for collecting dynamite */
-  int eater_pos;               /* eater array pos */
-  int eater_score;             /* score for killing eater */
-  int emerald_score;           /* score for collecting emerald */
-  int exit_score;              /* score for entering exit */
   int key_score;               /* score for colleting key */
-  int lenses_cnt_initial;      /* lenses counter (initial) */
-  int lenses_cnt;              /* lenses counter */
   int lenses_score;            /* score for collecting lenses */
-  int lenses_time;             /* lenses reset time */
-  int magnify_cnt_initial;     /* magnify counter (initial) */
-  int magnify_cnt;             /* magnify counter */
   int magnify_score;           /* score for collecting magnifier */
-  int magnify_time;            /* magnify reset time */
-  int nut_score;               /* score for cracking nut */
-  int shine_cnt;               /* shine counter for emerald/diamond */
-  int slurp_score;             /* score for slurping alien */
-  int tank_score;              /* score for killing tank */
-  int wheel_cnt_initial;       /* wheel counter (initial) */
-  int wheel_cnt;               /* wheel counter */
-  int wheel_x_initial;         /* wheel x pos (initial) */
+  int exit_score;              /* score for entering exit */
+
+  int android_move_time;       /* android move reset time */
+  int android_clone_time;      /* android clone reset time */
+  int ball_time;               /* ball reset time */
+  int amoeba_time;             /* amoeba speed */
+  int wonderwall_time;         /* wonderwall time */
+  int wheel_time;              /* wheel reset time */
   int wheel_x;                 /* wheel x pos */
-  int wheel_y_initial;         /* wheel y pos (initial) */
   int wheel_y;                 /* wheel y pos */
-  int wheel_time;              /* wheel reset time */
-  int wind_cnt_initial;                /* wind counter (initial) */
-  int wind_cnt;                        /* wind time counter */
-  int wind_direction_initial;  /* wind direction (initial) */
-  int wind_direction;          /* wind direction */
+  int lenses_time;             /* lenses reset time */
+  int magnify_time;            /* magnify reset time */
   int wind_time;               /* wind reset time */
-  int wonderwall_state_initial;        /* wonderwall active flag (initial) */
+  int wind_direction;          /* wind direction */
+
+  int ball_random;             /* ball is random flag */
+  int ball_state;              /* ball active flag */
   int wonderwall_state;                /* wonderwall active flag */
-  int wonderwall_time_initial; /* wonderwall time (initial) */
-  int wonderwall_time;         /* wonderwall time */
-  short eater_array[8][9];     /* eater data */
-  short ball_array[8][8];      /* ball data */
-  short android_array[TILE_MAX];/* android clone table */
+  int wheel_cnt;               /* wheel counter */
+  int lenses_cnt;              /* lenses counter */
+  int magnify_cnt;             /* magnify counter */
+  int wind_cnt;                        /* wind time counter */
+
+  int android_move_cnt;                /* android move counter */
+  int android_clone_cnt;       /* android clone counter */
+  int ball_cnt;                        /* ball counter */
+  int ball_pos;                        /* ball array pos counter */
+  int eater_pos;               /* eater array pos */
+  int shine_cnt;               /* shine counter for emerald/diamond */
+
   int num_ball_arrays;         /* number of ball data arrays used */
 
+  int home_initial;            /* number of players (initial) */
+  int home;                    /* number of players not yet at home */
+                               /* 0 == all players at home */
+
+  boolean killed_out_of_time;  /* kill player due to time out */
+
   int exit_x, exit_y;          /* kludge for playing player exit sound */
 
+  short eater_array[8][9];             /* eater data */
+  short ball_array[8][8];              /* ball data */
+  short android_array[TILE_MAX];       /* android clone data */
+
   short cavebuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
   short nextbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
   short drawbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];