/*
-----------------------------------------------------------------------------
definition of elements used in the Emerald Mine Club engine;
- the element names have the following properties:
+ the element names (mostly) have the following properties:
- elements that start with 'X' can be stored in a level file
- - elements that start with 'Y' indicate moving elements
+ - elements that start with 'Y' indicate moving or active elements
- elements that end with 'B' are the "backside" of moving elements
-----------------------------------------------------------------------------
*/
{
Xblank = 0,
- Xacid_splash_e,
- Xacid_splash_w,
+ Xsplash_e,
+ Xsplash_w,
Xplant,
Yplant,
Ydrip_2_sB,
Xwonderwall,
- XwonderwallB,
+ Ywonderwall,
Xwheel,
- XwheelB,
+ Ywheel,
Xswitch,
- XswitchB,
+ Yswitch,
Xbumper,
- XbumperB,
+ Ybumper,
Xacid_nw,
Xacid_ne,
Xacid_se,
Xfake_blank,
- Xfake_blankB,
+ Yfake_blank,
Xfake_grass,
- Xfake_grassB,
+ Yfake_grass,
Xfake_amoeba, /* dripper */
- Xfake_amoebaB,
+ Yfake_amoeba,
Xlenses,
Xsand_stonesand_quickout_1, /* newly added to EM engine */
Xsand_stonesand_quickout_2,
- Xslidewall_ns, /* growing wall */
- Yslidewall_ns_blank,
- Xslidewall_ew,
- Yslidewall_ew_blank,
+ Xslide_ns, /* growing wall */
+ Yslide_ns_blank,
+ Xslide_ew,
+ Yslide_ew_blank,
Xwind_n,
Xwind_e,
SOUND_dirt, /* player digs into dirt */
SOUND_acid, /* acid splashes */
SOUND_ball, /* ball places something */
- SOUND_slidewall, /* slide wall grows */
+ SOUND_slide, /* slide wall grows */
SOUND_wonder, /* wonderwall is active */
SOUND_door, /* player goes thru door (gate) */
SOUND_exit_open, /* exit opens */
int exit_x, exit_y; /* kludge for playing player exit sound */
+ boolean android_eater; /* android clone data */
+ boolean android_alien;
+ boolean android_bug;
+ boolean android_tank;
+ boolean android_emerald;
+ boolean android_diamond;
+ boolean android_stone;
+ boolean android_bomb;
+ boolean android_nut;
+ boolean android_spring;
+ boolean android_dynamite;
+ boolean android_balloon;
+ boolean android_amoeba;
+
short cavebuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
short nextbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
short drawbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];