changed order of game elements in EM engine (no functional change)
[rocksndiamonds.git] / src / game_em / emerald.h
index 55f90e4705f3ba1d4d053ac15c6476d8a4e67f80..e07ff1d1feeeb0a8dda0759326b8f71e004fe6ef 100644 (file)
@@ -48,22 +48,9 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 // constant definitions
 // ----------------------------------------------------------------------------
 
-/* define these for backwards compatibility */
-#define EM_ENGINE_BAD_ROLL
-#define EM_ENGINE_BAD_SPRING
-
 /* define these to use additional elements */
 #define EM_ENGINE_USE_ADDITIONAL_ELEMENTS
 
-/* internal definitions for EM engine */
-#ifdef EM_ENGINE_BAD_ROLL
-#define BAD_ROLL
-#endif
-
-#ifdef EM_ENGINE_BAD_SPRING
-#define BAD_SPRING
-#endif
-
 /* one border for Zborder elements, one border for steelwall, if needed */
 #define EM_MAX_CAVE_WIDTH              (MAX_PLAYFIELD_WIDTH  + 2 + 2)
 #define EM_MAX_CAVE_HEIGHT             (MAX_PLAYFIELD_HEIGHT + 2 + 2)
@@ -81,42 +68,99 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 enum
 {
   Xblank = 0,
+
   Xacid_splash_e,
   Xacid_splash_w,
 
-#ifdef EM_ENGINE_BAD_ROLL
-  Xpush_stone_e,
-  Xpush_stone_w,
-  Xpush_nut_e,
-  Xpush_nut_w,
-  Xpush_spring_e,
-  Xpush_spring_w,
-  Xpush_emerald_e,
-  Xpush_emerald_w,
-  Xpush_diamond_e,
-  Xpush_diamond_w,
-  Xpush_bomb_e,
-  Xpush_bomb_w,
+  Xplant,
+  Yplant,
+
+  Xacid_1,
+  Xacid_2,
+  Xacid_3,
+  Xacid_4,
+  Xacid_5,
+  Xacid_6,
+  Xacid_7,
+  Xacid_8,
+
+#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
+  Xfake_acid_1,
+  Xfake_acid_2,
+  Xfake_acid_3,
+  Xfake_acid_4,
+  Xfake_acid_5,
+  Xfake_acid_6,
+  Xfake_acid_7,
+  Xfake_acid_8,
 #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,
+  Xgrass,
+  Ygrass_nB,
+  Ygrass_eB,
+  Ygrass_sB,
+  Ygrass_wB,
+
+  Xdirt,
+  Ydirt_nB,
+  Ydirt_eB,
+  Ydirt_sB,
+  Ydirt_wB,
+
+  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,
+
+  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,
+
   Xbug_1_n,
   Xbug_1_e,
   Xbug_1_s,
@@ -143,6 +187,7 @@ enum
   Ybug_n_w,
   Ybug_stone,
   Ybug_spring,
+
   Xtank_1_n,
   Xtank_1_e,
   Xtank_1_s,
@@ -169,72 +214,7 @@ enum
   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_alien_e,
-  Yspring_alien_eB,
-  Yspring_alien_w,
-  Yspring_alien_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,
@@ -246,7 +226,7 @@ enum
   Yemerald_w,
   Yemerald_wB,
   Yemerald_blank,
-  Ynut_stone,
+
   Xdiamond,
   Xdiamond_pause,
   Xdiamond_fall,
@@ -259,14 +239,17 @@ enum
   Ydiamond_wB,
   Ydiamond_blank,
   Ydiamond_stone,
-  Xdrip_fall,
-  Xdrip_stretch,
-  Xdrip_stretchB,
-  Xdrip,
-  Ydrip_1_s,
-  Ydrip_1_sB,
-  Ydrip_2_s,
-  Ydrip_2_sB,
+
+  Xstone,
+  Xstone_pause,
+  Xstone_fall,
+  Ystone_s,
+  Ystone_sB,
+  Ystone_e,
+  Ystone_eB,
+  Ystone_w,
+  Ystone_wB,
+
   Xbomb,
   Xbomb_pause,
   Xbomb_fall,
@@ -277,6 +260,81 @@ enum
   Ybomb_w,
   Ybomb_wB,
   Ybomb_blank,
+
+  Xnut,
+  Xnut_pause,
+  Xnut_fall,
+  Ynut_s,
+  Ynut_sB,
+  Ynut_e,
+  Ynut_eB,
+  Ynut_w,
+  Ynut_wB,
+  Ynut_stone,
+
+  Xspring,
+  Xspring_pause,
+  Xspring_e,
+  Xspring_w,
+  Xspring_fall,
+  Yspring_s,
+  Yspring_sB,
+  Yspring_e,
+  Yspring_eB,
+  Yspring_w,
+  Yspring_wB,
+  Yspring_alien_e,
+  Yspring_alien_eB,
+  Yspring_alien_w,
+  Yspring_alien_wB,
+
+  Xpush_emerald_e,
+  Xpush_emerald_w,
+  Xpush_diamond_e,
+  Xpush_diamond_w,
+  Xpush_stone_e,
+  Xpush_stone_w,
+  Xpush_bomb_e,
+  Xpush_bomb_w,
+  Xpush_nut_e,
+  Xpush_nut_w,
+  Xpush_spring_e,
+  Xpush_spring_w,
+
+  Xdynamite,
+  Ydynamite_blank,
+  Xdynamite_1,
+  Xdynamite_2,
+  Xdynamite_3,
+  Xdynamite_4,
+
+  Xkey_1,
+  Xkey_2,
+  Xkey_3,
+  Xkey_4,
+  Xkey_5,
+  Xkey_6,
+  Xkey_7,
+  Xkey_8,
+
+  Xdoor_1,
+  Xdoor_2,
+  Xdoor_3,
+  Xdoor_4,
+  Xdoor_5,
+  Xdoor_6,
+  Xdoor_7,
+  Xdoor_8,
+
+  Xfake_door_1,
+  Xfake_door_2,
+  Xfake_door_3,
+  Xfake_door_4,
+  Xfake_door_5,
+  Xfake_door_6,
+  Xfake_door_7,
+  Xfake_door_8,
+
   Xballoon,
   Yballoon_n,
   Yballoon_nB,
@@ -286,56 +344,13 @@ enum
   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,
   Yball_1,
   Xball_2,
   Yball_2,
   Yball_blank,
 
-#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
-  Ykey_1_blank,
-  Ykey_2_blank,
-  Ykey_3_blank,
-  Ykey_4_blank,
-  Ykey_5_blank,
-  Ykey_6_blank,
-  Ykey_7_blank,
-  Ykey_8_blank,
-  Ylenses_blank,
-  Ymagnify_blank,
-  Ygrass_blank,
-  Ydirt_blank,
-#endif
-
-  Xslidewall_ns,       /* growing wall */
-  Yslidewall_ns_blank,
-  Xslidewall_ew,
-  Yslidewall_ew_blank,
-  Xwonderwall,
-  XwonderwallB,
   Xamoeba_1,
   Xamoeba_2,
   Xamoeba_3,
@@ -344,108 +359,100 @@ enum
   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_any,
-  Xwind_stop,
-  Xexit,
-  Xexit_1,
-  Xexit_2,
-  Xexit_3,
-  Xdynamite,
-  Ydynamite_blank,
-  Xdynamite_1,
-  Xdynamite_2,
-  Xdynamite_3,
-  Xdynamite_4,
-  Xbumper,
-  XbumperB,
+
+  Xdrip,
+  Xdrip_fall,
+  Xdrip_stretch,
+  Xdrip_stretchB,
+  Ydrip_1_s,
+  Ydrip_1_sB,
+  Ydrip_2_s,
+  Ydrip_2_sB,
+
+  Xwonderwall,
+  XwonderwallB,
+
   Xwheel,
   XwheelB,
+
   Xswitch,
   XswitchB,
+
+  Xbumper,
+  XbumperB,
+
+  Xacid_nw,
+  Xacid_ne,
+  Xacid_sw,
+  Xacid_s,
+  Xacid_se,
+
+  Xfake_blank,
+  Xfake_blankB,
+
+  Xfake_grass,
+  Xfake_grassB,
+
+  Xfake_amoeba,                /* dripper */
+  Xfake_amoebaB,
+
+  Xlenses,
+
+  Xmagnify,
+
   Xsand,
   Xsand_stone,
   Xsand_stonein_1,
   Xsand_stonein_2,
   Xsand_stonein_3,
   Xsand_stonein_4,
+  Xsand_sandstone_1,
+  Xsand_sandstone_2,
+  Xsand_sandstone_3,
+  Xsand_sandstone_4,
   Xsand_stonesand_1,
   Xsand_stonesand_2,
   Xsand_stonesand_3,
   Xsand_stonesand_4,
-
+  Xsand_stoneout_1,
+  Xsand_stoneout_2,
 #ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
   Xsand_stonesand_quickout_1,
   Xsand_stonesand_quickout_2,
 #endif
 
-  Xsand_stoneout_1,
-  Xsand_stoneout_2,
-  Xsand_sandstone_1,
-  Xsand_sandstone_2,
-  Xsand_sandstone_3,
-  Xsand_sandstone_4,
-  Xplant,
-  Yplant,
-  Xlenses,
-  Xmagnify,
-  Xfake_amoeba,                /* dripper */
-  Xfake_amoebaB,
-  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,
+  Xslidewall_ns,       /* growing wall */
+  Yslidewall_ns_blank,
+  Xslidewall_ew,
+  Yslidewall_ew_blank,
 
-#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
-  Xfake_acid_1,
-  Xfake_acid_2,
-  Xfake_acid_3,
-  Xfake_acid_4,
-  Xfake_acid_5,
-  Xfake_acid_6,
-  Xfake_acid_7,
-  Xfake_acid_8,
-#endif
+  Xwind_n,
+  Xwind_e,
+  Xwind_s,
+  Xwind_w,
+  Xwind_any,
+  Xwind_stop,
+
+  Xexit,
+  Xexit_1,
+  Xexit_2,
+  Xexit_3,
 
-  Xsteel_1,
-  Xsteel_2,
-  Xsteel_3,
-  Xsteel_4,
   Xwall_1,
   Xwall_2,
   Xwall_3,
   Xwall_4,
+
   Xroundwall_1,
   Xroundwall_2,
   Xroundwall_3,
   Xroundwall_4,
+
+  Xsteel_1,
+  Xsteel_2,
+  Xsteel_3,
+  Xsteel_4,
+
   Xdecor_1,
   Xdecor_2,
   Xdecor_3,
@@ -458,6 +465,7 @@ enum
   Xdecor_10,
   Xdecor_11,
   Xdecor_12,
+
   Xalpha_0,
   Xalpha_1,
   Xalpha_2,
@@ -505,6 +513,21 @@ enum
   Xalpha_arrow_w,
   Xalpha_copyr,
 
+#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
+  Ykey_1_blank,
+  Ykey_2_blank,
+  Ykey_3_blank,
+  Ykey_4_blank,
+  Ykey_5_blank,
+  Ykey_6_blank,
+  Ykey_7_blank,
+  Ykey_8_blank,
+  Ylenses_blank,
+  Ymagnify_blank,
+  Ygrass_blank,
+  Ydirt_blank,
+#endif
+
   Xboom_bug,           /* passed from explode to synchro (linked explosion);
                           transition to explode_normal */
   Xboom_bomb,          /* passed from explode to synchro (linked explosion);
@@ -532,14 +555,17 @@ enum
 enum
 {
   PLY_still = 0,
+
   PLY_walk_n,
   PLY_walk_e,
   PLY_walk_s,
   PLY_walk_w,
+
   PLY_push_n,
   PLY_push_e,
   PLY_push_s,
   PLY_push_w,
+
   PLY_shoot_n,
   PLY_shoot_e,
   PLY_shoot_s,