Xfake_acid_7,
Xfake_acid_8,
+ Xfake_acid_1_player, /* newly added to EM engine */
+ Xfake_acid_2_player,
+ Xfake_acid_3_player,
+ Xfake_acid_4_player,
+ Xfake_acid_5_player,
+ Xfake_acid_6_player,
+ Xfake_acid_7_player,
+ Xfake_acid_8_player,
+
Xgrass,
Ygrass_nB,
Ygrass_eB,
struct PLAYER
{
+ int num; /* player number */
int anim;
+
int x;
int y;
int prev_x;
int prev_y;
- int num; /* player number */
-
boolean exists; /* flag if player exists in cave */
boolean alive; /* flag if player is alive */
int last_move_dir;
- int joy_n:1;
- int joy_e:1;
- int joy_s:1;
- int joy_w:1;
- int joy_snap:1;
- int joy_drop:1;
- int joy_stick:1;
+ boolean joy_n;
+ boolean joy_e;
+ boolean joy_s;
+ boolean joy_w;
+ boolean joy_snap;
+ boolean joy_drop;
+ boolean joy_stick;
};
struct LOGIC
int eater_pos; /* counter for eater array position */
int shine_cnt; /* counter for emerald/diamond shining */
+ int num_eater_arrays; /* number of eater data arrays used */
int num_ball_arrays; /* number of ball data arrays used */
int home_initial; /* number of players (initial) */
/* 0 == all players at home */
boolean testmode; /* test mode */
+ boolean infinite; /* flag for infinitely wide cave */
+ boolean infinite_true; /* flag for truely infinitely wide cave */
boolean killed_out_of_time; /* kill player due to time out */
int exit_x, exit_y; /* kludge for playing player exit sound */