#define EM_MAX_CAVE_HEIGHT 102
/* define these for backwards compatibility */
-#define BAD_ROLL
-#define BAD_SPRING
+#define EM_ENGINE_BAD_ROLL
+#define EM_ENGINE_BAD_SPRING
enum
{
Yacid_splash_eB, /* hmm */
Yacid_splash_wB, /* hmm */
-#ifdef BAD_ROLL
+#ifdef EM_ENGINE_BAD_ROLL
Xstone_force_e, /* only use these in eater */
Xstone_force_w,
Xnut_force_e,
Ygrow_ew_eat,
Xwonderwall,
XwonderwallB,
- Xameuba_1,
- Xameuba_2,
- Xameuba_3,
- Xameuba_4,
- Xameuba_5,
- Xameuba_6,
- Xameuba_7,
- Xameuba_8,
+ Xamoeba_1,
+ Xamoeba_2,
+ Xamoeba_3,
+ Xamoeba_4,
+ Xamoeba_5,
+ Xamoeba_6,
+ Xamoeba_7,
+ Xamoeba_8,
Xdoor_1,
Xdoor_2,
Xdoor_3,
TILE_MAX
};
+enum
+{
+ SAMPLE_blank = 0, /* player walks on blank */
+ SAMPLE_roll, /* player pushes stone/bomb/nut/spring */
+ SAMPLE_stone, /* stone hits ground */
+ SAMPLE_nut, /* nut hits ground */
+ SAMPLE_crack, /* stone hits nut */
+ SAMPLE_bug, /* bug moves */
+ SAMPLE_tank, /* tank moves */
+ SAMPLE_android, /* android places something */
+ SAMPLE_spring, /* spring hits ground/wall/bumper, stone hits spring */
+ SAMPLE_slurp, /* spring kills alien */
+ SAMPLE_eater, /* eater sits/eats diamond */
+ SAMPLE_alien, /* alien moves */
+ SAMPLE_collect, /* player collects object */
+ SAMPLE_diamond, /* diamond/emerald hits ground */
+ SAMPLE_squash, /* stone squashes diamond */
+ SAMPLE_wonderfall, /* object falls thru wonderwall */
+ SAMPLE_drip, /* drip hits ground */
+ SAMPLE_push, /* player pushes balloon/android */
+ SAMPLE_dirt, /* player walks on dirt */
+ SAMPLE_acid, /* acid splashes */
+ SAMPLE_ball, /* ball places something */
+ SAMPLE_grow, /* growing wall grows */
+ SAMPLE_wonder, /* wonderwall moves (is active) */
+ SAMPLE_door, /* player goes thru door */
+ SAMPLE_exit, /* player goes in exit */
+ SAMPLE_dynamite, /* player places dynamite */
+ SAMPLE_tick, /* dynamite ticks */
+ SAMPLE_press, /* player presses wheel/wind/switch */
+ SAMPLE_wheel, /* wheel moves */
+ SAMPLE_boom, /* explosion */
+ SAMPLE_time, /* time runs out */
+ SAMPLE_die, /* player dies */
+
+ SAMPLE_MAX
+};
+
struct LEVEL
{
unsigned int home_initial; /* number of players (initial) */
/* fill in all below /every/ time you read a level */
unsigned int alien_score; /* alien popped by stone/spring score */
- unsigned int ameuba_time; /* ameuba speed */
+ unsigned int amoeba_time; /* amoeba speed */
unsigned int android_move_cnt_initial; /* android move time counter (initial) */
unsigned int android_move_cnt; /* android move time counter */
unsigned int android_move_time; /* android move reset time */
struct LevelInfo_EM
{
- struct LEVEL lev;
- struct PLAYER ply1, ply2;
+ struct LEVEL *lev;
+ struct PLAYER *ply1, *ply2;
unsigned short cave[EM_MAX_CAVE_WIDTH][EM_MAX_CAVE_HEIGHT];
-
- unsigned short **Boom;
- unsigned short **Cave;
- unsigned short **Next;
- unsigned short **Draw;
};
#endif /* MAIN_EM_H */