fixed handling of fake acid for EM engine
[rocksndiamonds.git] / src / game_em / tab_generate.c
index bcdecfe5c27cb664125e9ebd37601b9872bfea52..c532f7d39cd7481242b07c630b6c0e99cf5a43d6 100644 (file)
@@ -22,6 +22,16 @@ int tile_blank[] =
   Xblank, 1,
   Xacid_splash_e, 1,
   Xacid_splash_w, 1,
+#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
+  Xfake_acid_1, 1,
+  Xfake_acid_2, 1,
+  Xfake_acid_3, 1,
+  Xfake_acid_4, 1,
+  Xfake_acid_5, 1,
+  Xfake_acid_6, 1,
+  Xfake_acid_7, 1,
+  Xfake_acid_8, 1,
+#endif
   TILE_MAX
 };
 
@@ -31,6 +41,16 @@ int tile_acid[] =
   Xblank, 1,
   Xacid_splash_e, 1,
   Xacid_splash_w, 1,
+#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
+  Xfake_acid_1, 1,
+  Xfake_acid_2, 1,
+  Xfake_acid_3, 1,
+  Xfake_acid_4, 1,
+  Xfake_acid_5, 1,
+  Xfake_acid_6, 1,
+  Xfake_acid_7, 1,
+  Xfake_acid_8, 1,
+#endif
   Xacid_1, 1,
   Xacid_2, 1,
   Xacid_3, 1,
@@ -42,6 +62,22 @@ int tile_acid[] =
   TILE_MAX
 };
 
+/* 0=stop 1=fake_acid */
+int tile_fake_acid[] =
+{
+#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
+  Xfake_acid_1, 1,
+  Xfake_acid_2, 1,
+  Xfake_acid_3, 1,
+  Xfake_acid_4, 1,
+  Xfake_acid_5, 1,
+  Xfake_acid_6, 1,
+  Xfake_acid_7, 1,
+  Xfake_acid_8, 1,
+#endif
+  TILE_MAX
+};
+
 /* 0=stop 1=amoeba */
 int tile_amoeba[] =
 {
@@ -64,6 +100,16 @@ int tile_android_move[] =
   Xblank, 1,
   Xacid_splash_e, 1,
   Xacid_splash_w, 1,
+#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS
+  Xfake_acid_1, 1,
+  Xfake_acid_2, 1,
+  Xfake_acid_3, 1,
+  Xfake_acid_4, 1,
+  Xfake_acid_5, 1,
+  Xfake_acid_6, 1,
+  Xfake_acid_7, 1,
+  Xfake_acid_8, 1,
+#endif
   Xplant, 1,
   TILE_MAX
 };
@@ -243,8 +289,6 @@ int obj_map[] =
   Xstone_fall, 5,
   Xstone_fall, 6,
   Xstone_fall, 7,
-
-#ifdef BAD_ROLL
   Xpush_stone_e, 0,
   Xpush_stone_e, 1,
   Xpush_stone_e, 2,
@@ -261,8 +305,6 @@ int obj_map[] =
   Xpush_stone_w, 5,
   Xpush_stone_w, 6,
   Xpush_stone_w, 7,
-#endif
-
   Ystone_s, 7,
   Xsand_stoneout_2, 7,
   Xsand_stonein_1, 0,
@@ -363,8 +405,6 @@ int obj_map[] =
   Xnut_fall, 5,
   Xnut_fall, 6,
   Xnut_fall, 7,
-
-#ifdef BAD_ROLL
   Xpush_nut_e, 0,
   Xpush_nut_e, 1,
   Xpush_nut_e, 2,
@@ -381,8 +421,6 @@ int obj_map[] =
   Xpush_nut_w, 5,
   Xpush_nut_w, 6,
   Xpush_nut_w, 7,
-#endif
-
   -1,
   -1,
   Ynut_s, 6,
@@ -1457,8 +1495,6 @@ int obj_map[] =
   Xspring_fall, 5,
   Xspring_fall, 6,
   Xspring_fall, 7,
-
-#ifdef BAD_ROLL
   Xpush_spring_e, 0,
   Xpush_spring_e, 1,
   Xpush_spring_e, 2,
@@ -1475,8 +1511,6 @@ int obj_map[] =
   Xpush_spring_w, 5,
   Xpush_spring_w, 6,
   Xpush_spring_w, 7,
-#endif
-
   -1,
   Yspring_sB, 6,
   -1,
@@ -1919,8 +1953,6 @@ int obj_map[] =
   Xemerald_fall, 5,
   Xemerald_fall, 6,
   Xemerald_fall, 7,
-
-#ifdef BAD_ROLL
   Xpush_emerald_e, 0,
   Xpush_emerald_e, 1,
   Xpush_emerald_e, 2,
@@ -1937,8 +1969,6 @@ int obj_map[] =
   Xpush_emerald_w, 5,
   Xpush_emerald_w, 6,
   Xpush_emerald_w, 7,
-#endif
-
   Xemerald_shine, 0,
   Xemerald_shine, 7,
   Ynut_stone, 7,
@@ -2078,8 +2108,6 @@ int obj_map[] =
   Xdiamond_fall, 5,
   Xdiamond_fall, 6,
   Xdiamond_fall, 7,
-
-#ifdef BAD_ROLL
   Xpush_diamond_e, 0,
   Xpush_diamond_e, 1,
   Xpush_diamond_e, 2,
@@ -2096,8 +2124,6 @@ int obj_map[] =
   Xpush_diamond_w, 5,
   Xpush_diamond_w, 6,
   Xpush_diamond_w, 7,
-#endif
-
   Xdiamond_shine, 0,
   Xdiamond_shine, 7,
   Ydiamond_s, 7,
@@ -2338,8 +2364,6 @@ int obj_map[] =
   Xbomb_fall, 5,
   Xbomb_fall, 6,
   Xbomb_fall, 7,
-
-#ifdef BAD_ROLL
   Xpush_bomb_e, 0,
   Xpush_bomb_e, 1,
   Xpush_bomb_e, 2,
@@ -2356,8 +2380,6 @@ int obj_map[] =
   Xpush_bomb_w, 5,
   Xpush_bomb_w, 6,
   Xpush_bomb_w, 7,
-#endif
-
   Ybomb_s, 7,
   Ybomb_e, 7,
   Ybomb_w, 7,
@@ -4411,6 +4433,9 @@ unsigned char tab_blank[TILE_MAX];
 /* 0=stop 1=acid */
 unsigned char tab_acid[TILE_MAX];
 
+/* 0=stop 1=fake_acid */
+unsigned char tab_fake_acid[TILE_MAX];
+
 /* 0=stop 1=amoeba */
 unsigned char tab_amoeba[TILE_MAX];
 
@@ -4603,6 +4628,7 @@ void tab_generate(void)
 {
   create_tab(tile_blank, tab_blank);
   create_tab(tile_acid, tab_acid);
+  create_tab(tile_fake_acid, tab_fake_acid);
   create_tab(tile_amoeba, tab_amoeba);
   create_tab(tile_android_move, tab_android_move);
   create_explode();