#ifndef TILE_H
#define TILE_H
+#include "main_em.h"
+
+#ifdef EM_ENGINE_BAD_ROLL
+#define BAD_ROLL
+#endif
+
+#ifdef EM_ENGINE_BAD_SPRING
+#define BAD_SPRING
+#endif
+
+
+#if 0
+
/* 2000-07-30T11:06:03Z
*/
#define BAD_ROLL
#define BAD_SPRING
-enum {
- Xblank = 0, /* still */
- Yacid_splash_eB, /* hmm */
- Yacid_splash_wB, /* hmm */
+enum
+{
+ Xblank = 0, /* still */
+ Yacid_splash_eB, /* hmm */
+ Yacid_splash_wB, /* hmm */
#ifdef BAD_ROLL
- Xstone_force_e, /* only use these in eater */
- Xstone_force_w,
- Xnut_force_e,
- Xnut_force_w,
- Xspring_force_e,
- Xspring_force_w,
- Xemerald_force_e,
- Xemerald_force_w,
- Xdiamond_force_e,
- Xdiamond_force_w,
- Xbomb_force_e,
- Xbomb_force_w,
+ Xstone_force_e, /* only use these in eater */
+ Xstone_force_w,
+ Xnut_force_e,
+ Xnut_force_w,
+ Xspring_force_e,
+ Xspring_force_w,
+ Xemerald_force_e,
+ Xemerald_force_w,
+ Xdiamond_force_e,
+ Xdiamond_force_w,
+ Xbomb_force_e,
+ Xbomb_force_w,
#endif
- Xstone,
- Xstone_pause,
- Xstone_fall,
- Ystone_s,
- Ystone_sB,
- Ystone_e,
- Ystone_eB,
- Ystone_w,
- Ystone_wB,
- Xnut,
- Xnut_pause,
- Xnut_fall,
- Ynut_s,
- Ynut_sB,
- Ynut_e,
- Ynut_eB,
- Ynut_w,
- Ynut_wB,
- Xbug_n,
- Xbug_e,
- Xbug_s,
- Xbug_w,
- Xbug_gon,
- Xbug_goe,
- Xbug_gos,
- Xbug_gow,
- Ybug_n,
- Ybug_nB,
- Ybug_e,
- Ybug_eB,
- Ybug_s,
- Ybug_sB,
- Ybug_w,
- Ybug_wB,
- Ybug_w_n,
- Ybug_n_e,
- Ybug_e_s,
- Ybug_s_w,
- Ybug_e_n,
- Ybug_s_e,
- Ybug_w_s,
- Ybug_n_w,
- Ybug_stone,
- Ybug_spring,
- Xtank_n,
- Xtank_e,
- Xtank_s,
- Xtank_w,
- Xtank_gon,
- Xtank_goe,
- Xtank_gos,
- Xtank_gow,
- Ytank_n,
- Ytank_nB,
- Ytank_e,
- Ytank_eB,
- Ytank_s,
- Ytank_sB,
- Ytank_w,
- Ytank_wB,
- Ytank_w_n,
- Ytank_n_e,
- Ytank_e_s,
- Ytank_s_w,
- Ytank_e_n,
- Ytank_s_e,
- Ytank_w_s,
- Ytank_n_w,
- Ytank_stone,
- Ytank_spring,
- Xandroid,
- Xandroid_1_n,
- Xandroid_2_n,
- Xandroid_1_e,
- Xandroid_2_e,
- Xandroid_1_w,
- Xandroid_2_w,
- Xandroid_1_s,
- Xandroid_2_s,
- Yandroid_n,
- Yandroid_nB,
- Yandroid_ne,
- Yandroid_neB,
- Yandroid_e,
- Yandroid_eB,
- Yandroid_se,
- Yandroid_seB,
- Yandroid_s,
- Yandroid_sB,
- Yandroid_sw,
- Yandroid_swB,
- Yandroid_w,
- Yandroid_wB,
- Yandroid_nw,
- Yandroid_nwB,
- Xspring,
- Xspring_pause,
- Xspring_e,
- Xspring_w,
- Xspring_fall,
- Yspring_s,
- Yspring_sB,
- Yspring_e,
- Yspring_eB,
- Yspring_w,
- Yspring_wB,
- Yspring_kill_e,
- Yspring_kill_eB,
- Yspring_kill_w,
- Yspring_kill_wB,
- Xeater_n,
- Xeater_e,
- Xeater_w,
- Xeater_s,
- Yeater_n,
- Yeater_nB,
- Yeater_e,
- Yeater_eB,
- Yeater_s,
- Yeater_sB,
- Yeater_w,
- Yeater_wB,
- Yeater_stone,
- Yeater_spring,
- Xalien,
- Xalien_pause,
- Yalien_n,
- Yalien_nB,
- Yalien_e,
- Yalien_eB,
- Yalien_s,
- Yalien_sB,
- Yalien_w,
- Yalien_wB,
- Yalien_stone,
- Yalien_spring,
- Xemerald,
- Xemerald_pause,
- Xemerald_fall,
- Xemerald_shine,
- Yemerald_s,
- Yemerald_sB,
- Yemerald_e,
- Yemerald_eB,
- Yemerald_w,
- Yemerald_wB,
- Yemerald_eat,
- Yemerald_stone,
- Xdiamond,
- Xdiamond_pause,
- Xdiamond_fall,
- Xdiamond_shine,
- Ydiamond_s,
- Ydiamond_sB,
- Ydiamond_e,
- Ydiamond_eB,
- Ydiamond_w,
- Ydiamond_wB,
- Ydiamond_eat,
- Ydiamond_stone,
- Xdrip_fall,
- Xdrip_stretch,
- Xdrip_stretchB,
- Xdrip_eat,
- Ydrip_s1,
- Ydrip_s1B,
- Ydrip_s2,
- Ydrip_s2B,
- Xbomb,
- Xbomb_pause,
- Xbomb_fall,
- Ybomb_s,
- Ybomb_sB,
- Ybomb_e,
- Ybomb_eB,
- Ybomb_w,
- Ybomb_wB,
- Ybomb_eat,
- Xballoon,
- Yballoon_n,
- Yballoon_nB,
- Yballoon_e,
- Yballoon_eB,
- Yballoon_s,
- Yballoon_sB,
- Yballoon_w,
- Yballoon_wB,
- Xgrass,
- Ygrass_nB,
- Ygrass_eB,
- Ygrass_sB,
- Ygrass_wB,
- Xdirt,
- Ydirt_nB,
- Ydirt_eB,
- Ydirt_sB,
- Ydirt_wB,
- Xacid_ne,
- Xacid_se,
- Xacid_s,
- Xacid_sw,
- Xacid_nw,
- Xacid_1,
- Xacid_2,
- Xacid_3,
- Xacid_4,
- Xacid_5,
- Xacid_6,
- Xacid_7,
- Xacid_8,
- Xball_1,
- Xball_1B,
- Xball_2,
- Xball_2B,
- Yball_eat,
- Xgrow_ns,
- Ygrow_ns_eat,
- Xgrow_ew,
- Ygrow_ew_eat,
- Xwonderwall,
- XwonderwallB,
- Xameuba_1,
- Xameuba_2,
- Xameuba_3,
- Xameuba_4,
- Xameuba_5,
- Xameuba_6,
- Xameuba_7,
- Xameuba_8,
- Xdoor_1,
- Xdoor_2,
- Xdoor_3,
- Xdoor_4,
- Xdoor_5,
- Xdoor_6,
- Xdoor_7,
- Xdoor_8,
- Xkey_1,
- Xkey_2,
- Xkey_3,
- Xkey_4,
- Xkey_5,
- Xkey_6,
- Xkey_7,
- Xkey_8,
- Xwind_n,
- Xwind_e,
- Xwind_s,
- Xwind_w,
- Xwind_nesw,
- Xwind_stop,
- Xexit,
- Xexit_1,
- Xexit_2,
- Xexit_3,
- Xdynamite,
- Ydynamite_eat,
- Xdynamite_1,
- Xdynamite_2,
- Xdynamite_3,
- Xdynamite_4,
- Xbumper,
- XbumperB,
- Xwheel,
- XwheelB,
- Xswitch,
- XswitchB,
- Xsand,
- Xsand_stone,
- Xsand_stonein_1,
- Xsand_stonein_2,
- Xsand_stonein_3,
- Xsand_stonein_4,
- Xsand_stonesand_1,
- Xsand_stonesand_2,
- Xsand_stonesand_3,
- Xsand_stonesand_4,
- Xsand_stoneout_1,
- Xsand_stoneout_2,
- Xsand_sandstone_1,
- Xsand_sandstone_2,
- Xsand_sandstone_3,
- Xsand_sandstone_4,
- Xplant,
- Yplant,
- Xlenses,
- Xmagnify,
- Xdripper,
- XdripperB,
- Xfake_blank,
- Xfake_blankB,
- Xfake_grass,
- Xfake_grassB,
- Xfake_door_1,
- Xfake_door_2,
- Xfake_door_3,
- Xfake_door_4,
- Xfake_door_5,
- Xfake_door_6,
- Xfake_door_7,
- Xfake_door_8,
- Xsteel_1,
- Xsteel_2,
- Xsteel_3,
- Xsteel_4,
- Xwall_1,
- Xwall_2,
- Xwall_3,
- Xwall_4,
- Xround_wall_1,
- Xround_wall_2,
- Xround_wall_3,
- Xround_wall_4,
- Xdecor_1,
- Xdecor_2,
- Xdecor_3,
- Xdecor_4,
- Xdecor_5,
- Xdecor_6,
- Xdecor_7,
- Xdecor_8,
- Xdecor_9,
- Xdecor_10,
- Xdecor_11,
- Xdecor_12,
- Xalpha_0,
- Xalpha_1,
- Xalpha_2,
- Xalpha_3,
- Xalpha_4,
- Xalpha_5,
- Xalpha_6,
- Xalpha_7,
- Xalpha_8,
- Xalpha_9,
- Xalpha_excla,
- Xalpha_quote,
- Xalpha_comma,
- Xalpha_minus,
- Xalpha_perio,
- Xalpha_colon,
- Xalpha_quest,
- Xalpha_a,
- Xalpha_b,
- Xalpha_c,
- Xalpha_d,
- Xalpha_e,
- Xalpha_f,
- Xalpha_g,
- Xalpha_h,
- Xalpha_i,
- Xalpha_j,
- Xalpha_k,
- Xalpha_l,
- Xalpha_m,
- Xalpha_n,
- Xalpha_o,
- Xalpha_p,
- Xalpha_q,
- Xalpha_r,
- Xalpha_s,
- Xalpha_t,
- Xalpha_u,
- Xalpha_v,
- Xalpha_w,
- Xalpha_x,
- Xalpha_y,
- Xalpha_z,
- Xalpha_arrow_e,
- Xalpha_arrow_w,
- Xalpha_copyr,
+ Xstone,
+ Xstone_pause,
+ Xstone_fall,
+ Ystone_s,
+ Ystone_sB,
+ Ystone_e,
+ Ystone_eB,
+ Ystone_w,
+ Ystone_wB,
+ Xnut,
+ Xnut_pause,
+ Xnut_fall,
+ Ynut_s,
+ Ynut_sB,
+ Ynut_e,
+ Ynut_eB,
+ Ynut_w,
+ Ynut_wB,
+ Xbug_n,
+ Xbug_e,
+ Xbug_s,
+ Xbug_w,
+ Xbug_gon,
+ Xbug_goe,
+ Xbug_gos,
+ Xbug_gow,
+ Ybug_n,
+ Ybug_nB,
+ Ybug_e,
+ Ybug_eB,
+ Ybug_s,
+ Ybug_sB,
+ Ybug_w,
+ Ybug_wB,
+ Ybug_w_n,
+ Ybug_n_e,
+ Ybug_e_s,
+ Ybug_s_w,
+ Ybug_e_n,
+ Ybug_s_e,
+ Ybug_w_s,
+ Ybug_n_w,
+ Ybug_stone,
+ Ybug_spring,
+ Xtank_n,
+ Xtank_e,
+ Xtank_s,
+ Xtank_w,
+ Xtank_gon,
+ Xtank_goe,
+ Xtank_gos,
+ Xtank_gow,
+ Ytank_n,
+ Ytank_nB,
+ Ytank_e,
+ Ytank_eB,
+ Ytank_s,
+ Ytank_sB,
+ Ytank_w,
+ Ytank_wB,
+ Ytank_w_n,
+ Ytank_n_e,
+ Ytank_e_s,
+ Ytank_s_w,
+ Ytank_e_n,
+ Ytank_s_e,
+ Ytank_w_s,
+ Ytank_n_w,
+ Ytank_stone,
+ Ytank_spring,
+ Xandroid,
+ Xandroid_1_n,
+ Xandroid_2_n,
+ Xandroid_1_e,
+ Xandroid_2_e,
+ Xandroid_1_w,
+ Xandroid_2_w,
+ Xandroid_1_s,
+ Xandroid_2_s,
+ Yandroid_n,
+ Yandroid_nB,
+ Yandroid_ne,
+ Yandroid_neB,
+ Yandroid_e,
+ Yandroid_eB,
+ Yandroid_se,
+ Yandroid_seB,
+ Yandroid_s,
+ Yandroid_sB,
+ Yandroid_sw,
+ Yandroid_swB,
+ Yandroid_w,
+ Yandroid_wB,
+ Yandroid_nw,
+ Yandroid_nwB,
+ Xspring,
+ Xspring_pause,
+ Xspring_e,
+ Xspring_w,
+ Xspring_fall,
+ Yspring_s,
+ Yspring_sB,
+ Yspring_e,
+ Yspring_eB,
+ Yspring_w,
+ Yspring_wB,
+ Yspring_kill_e,
+ Yspring_kill_eB,
+ Yspring_kill_w,
+ Yspring_kill_wB,
+ Xeater_n,
+ Xeater_e,
+ Xeater_w,
+ Xeater_s,
+ Yeater_n,
+ Yeater_nB,
+ Yeater_e,
+ Yeater_eB,
+ Yeater_s,
+ Yeater_sB,
+ Yeater_w,
+ Yeater_wB,
+ Yeater_stone,
+ Yeater_spring,
+ Xalien,
+ Xalien_pause,
+ Yalien_n,
+ Yalien_nB,
+ Yalien_e,
+ Yalien_eB,
+ Yalien_s,
+ Yalien_sB,
+ Yalien_w,
+ Yalien_wB,
+ Yalien_stone,
+ Yalien_spring,
+ Xemerald,
+ Xemerald_pause,
+ Xemerald_fall,
+ Xemerald_shine,
+ Yemerald_s,
+ Yemerald_sB,
+ Yemerald_e,
+ Yemerald_eB,
+ Yemerald_w,
+ Yemerald_wB,
+ Yemerald_eat,
+ Yemerald_stone,
+ Xdiamond,
+ Xdiamond_pause,
+ Xdiamond_fall,
+ Xdiamond_shine,
+ Ydiamond_s,
+ Ydiamond_sB,
+ Ydiamond_e,
+ Ydiamond_eB,
+ Ydiamond_w,
+ Ydiamond_wB,
+ Ydiamond_eat,
+ Ydiamond_stone,
+ Xdrip_fall,
+ Xdrip_stretch,
+ Xdrip_stretchB,
+ Xdrip_eat,
+ Ydrip_s1,
+ Ydrip_s1B,
+ Ydrip_s2,
+ Ydrip_s2B,
+ Xbomb,
+ Xbomb_pause,
+ Xbomb_fall,
+ Ybomb_s,
+ Ybomb_sB,
+ Ybomb_e,
+ Ybomb_eB,
+ Ybomb_w,
+ Ybomb_wB,
+ Ybomb_eat,
+ Xballoon,
+ Yballoon_n,
+ Yballoon_nB,
+ Yballoon_e,
+ Yballoon_eB,
+ Yballoon_s,
+ Yballoon_sB,
+ Yballoon_w,
+ Yballoon_wB,
+ Xgrass,
+ Ygrass_nB,
+ Ygrass_eB,
+ Ygrass_sB,
+ Ygrass_wB,
+ Xdirt,
+ Ydirt_nB,
+ Ydirt_eB,
+ Ydirt_sB,
+ Ydirt_wB,
+ Xacid_ne,
+ Xacid_se,
+ Xacid_s,
+ Xacid_sw,
+ Xacid_nw,
+ Xacid_1,
+ Xacid_2,
+ Xacid_3,
+ Xacid_4,
+ Xacid_5,
+ Xacid_6,
+ Xacid_7,
+ Xacid_8,
+ Xball_1,
+ Xball_1B,
+ Xball_2,
+ Xball_2B,
+ Yball_eat,
+ Xgrow_ns,
+ Ygrow_ns_eat,
+ Xgrow_ew,
+ Ygrow_ew_eat,
+ Xwonderwall,
+ XwonderwallB,
+ Xamoeba_1,
+ Xamoeba_2,
+ Xamoeba_3,
+ Xamoeba_4,
+ Xamoeba_5,
+ Xamoeba_6,
+ Xamoeba_7,
+ Xamoeba_8,
+ Xdoor_1,
+ Xdoor_2,
+ Xdoor_3,
+ Xdoor_4,
+ Xdoor_5,
+ Xdoor_6,
+ Xdoor_7,
+ Xdoor_8,
+ Xkey_1,
+ Xkey_2,
+ Xkey_3,
+ Xkey_4,
+ Xkey_5,
+ Xkey_6,
+ Xkey_7,
+ Xkey_8,
+ Xwind_n,
+ Xwind_e,
+ Xwind_s,
+ Xwind_w,
+ Xwind_nesw,
+ Xwind_stop,
+ Xexit,
+ Xexit_1,
+ Xexit_2,
+ Xexit_3,
+ Xdynamite,
+ Ydynamite_eat,
+ Xdynamite_1,
+ Xdynamite_2,
+ Xdynamite_3,
+ Xdynamite_4,
+ Xbumper,
+ XbumperB,
+ Xwheel,
+ XwheelB,
+ Xswitch,
+ XswitchB,
+ Xsand,
+ Xsand_stone,
+ Xsand_stonein_1,
+ Xsand_stonein_2,
+ Xsand_stonein_3,
+ Xsand_stonein_4,
+ Xsand_stonesand_1,
+ Xsand_stonesand_2,
+ Xsand_stonesand_3,
+ Xsand_stonesand_4,
+ Xsand_stoneout_1,
+ Xsand_stoneout_2,
+ Xsand_sandstone_1,
+ Xsand_sandstone_2,
+ Xsand_sandstone_3,
+ Xsand_sandstone_4,
+ Xplant,
+ Yplant,
+ Xlenses,
+ Xmagnify,
+ Xdripper,
+ XdripperB,
+ Xfake_blank,
+ Xfake_blankB,
+ Xfake_grass,
+ Xfake_grassB,
+ Xfake_door_1,
+ Xfake_door_2,
+ Xfake_door_3,
+ Xfake_door_4,
+ Xfake_door_5,
+ Xfake_door_6,
+ Xfake_door_7,
+ Xfake_door_8,
+ Xsteel_1,
+ Xsteel_2,
+ Xsteel_3,
+ Xsteel_4,
+ Xwall_1,
+ Xwall_2,
+ Xwall_3,
+ Xwall_4,
+ Xround_wall_1,
+ Xround_wall_2,
+ Xround_wall_3,
+ Xround_wall_4,
+ Xdecor_1,
+ Xdecor_2,
+ Xdecor_3,
+ Xdecor_4,
+ Xdecor_5,
+ Xdecor_6,
+ Xdecor_7,
+ Xdecor_8,
+ Xdecor_9,
+ Xdecor_10,
+ Xdecor_11,
+ Xdecor_12,
+ Xalpha_0,
+ Xalpha_1,
+ Xalpha_2,
+ Xalpha_3,
+ Xalpha_4,
+ Xalpha_5,
+ Xalpha_6,
+ Xalpha_7,
+ Xalpha_8,
+ Xalpha_9,
+ Xalpha_excla,
+ Xalpha_quote,
+ Xalpha_comma,
+ Xalpha_minus,
+ Xalpha_perio,
+ Xalpha_colon,
+ Xalpha_quest,
+ Xalpha_a,
+ Xalpha_b,
+ Xalpha_c,
+ Xalpha_d,
+ Xalpha_e,
+ Xalpha_f,
+ Xalpha_g,
+ Xalpha_h,
+ Xalpha_i,
+ Xalpha_j,
+ Xalpha_k,
+ Xalpha_l,
+ Xalpha_m,
+ Xalpha_n,
+ Xalpha_o,
+ Xalpha_p,
+ Xalpha_q,
+ Xalpha_r,
+ Xalpha_s,
+ Xalpha_t,
+ Xalpha_u,
+ Xalpha_v,
+ Xalpha_w,
+ Xalpha_x,
+ Xalpha_y,
+ Xalpha_z,
+ Xalpha_arrow_e,
+ Xalpha_arrow_w,
+ Xalpha_copyr,
- Xboom_bug, /* passed from explode to synchro (linked explosion); transition to explode_normal */
- Xboom_bomb, /* passed from explode to synchro (linked explosion); transition to explode_normal */
- Xboom_android, /* passed from explode to synchro; transition to boom_2 */
- Xboom_1, /* passed from explode to synchro; transition to boom_2 */
- Xboom_2, /* transition to boom[] */
+ Xboom_bug, /* passed from explode to synchro (linked explosion); transition to explode_normal */
+ Xboom_bomb, /* passed from explode to synchro (linked explosion); transition to explode_normal */
+ Xboom_android, /* passed from explode to synchro; transition to boom_2 */
+ Xboom_1, /* passed from explode to synchro; transition to boom_2 */
+ Xboom_2, /* transition to boom[] */
- Znormal, /* no picture */ /* this tile is passed from synchro to explode, only in next[] */
- Zdynamite, /* no picture */ /* this tile is passed from synchro to explode, only in next[] */
- Zplayer, /* no picture */ /* special code to indicate player */
- ZBORDER, /* no picture */ /* special code to indicate border */
+ Znormal, /* no picture */ /* this tile is passed from synchro to explode, only in next[] */
+ Zdynamite, /* no picture */ /* this tile is passed from synchro to explode, only in next[] */
+ Zplayer, /* no picture */ /* special code to indicate player */
+ ZBORDER, /* no picture */ /* special code to indicate border */
- TILE_MAX
+ TILE_MAX
};
-enum {
- SPR_still = 0,
- SPR_walk = 1,
- SPR_push = 5,
- SPR_spray = 9,
- SPR_MAX = 13
+enum
+{
+ SPR_still = 0,
+ SPR_walk = 1,
+ SPR_push = 5,
+ SPR_spray = 9,
+
+ SPR_MAX = 13
};
+#endif
+
extern unsigned char tab_blank[TILE_MAX];
extern unsigned char tab_acid[TILE_MAX];
-extern unsigned char tab_ameuba[TILE_MAX];
+extern unsigned char tab_amoeba[TILE_MAX];
extern unsigned char tab_android_move[TILE_MAX];
extern unsigned short tab_explode_normal[TILE_MAX];
extern unsigned short tab_explode_dynamite[TILE_MAX];