changed frame counter for EM engine counting upward instead of downward
[rocksndiamonds.git] / src / tools.c
index 366303b22e49d5236b65e5ebe2b04186a6cd8f8e..8b8f2a95b43183d4ac7250ab66917eea751d5b2b 100644 (file)
@@ -5763,7 +5763,15 @@ em_object_mapping_list[] =
     Zdynamite,                         FALSE,  FALSE,
     EL_EMPTY,                          -1, -1
   },
+  {
+    Zboom,                             FALSE,  FALSE,
+    EL_EMPTY,                          -1, -1
+  },
 
+  {
+    Xchain,                            FALSE,  FALSE,
+    EL_DEFAULT,                                ACTION_EXPLODING, -1
+  },
   {
     Xboom_bug,                         FALSE,  FALSE,
     EL_BUG,                            ACTION_EXPLODING, -1
@@ -8693,7 +8701,7 @@ void InitGraphicInfo_EM(void)
       boolean has_action_graphics = (graphic != base_graphic);
       boolean has_crumbled_graphics = (base_crumbled != base_graphic);
       struct GraphicInfo *g = &graphic_info[graphic];
-      struct GraphicInfo_EM *g_em = &graphic_info_em_object[i][7 - j];
+      struct GraphicInfo_EM *g_em = &graphic_info_em_object[i][j];
       Bitmap *src_bitmap;
       int src_x, src_y;
       // ensure to get symmetric 3-frame, 2-delay animations as used in EM
@@ -8924,8 +8932,8 @@ void InitGraphicInfo_EM(void)
                 Xspring);
 
        // no separate animation for "smashed by rock" -- use rock instead
-       struct GraphicInfo_EM *g_em = &graphic_info_em_object[i][7 - j];
-       struct GraphicInfo_EM *g_xx = &graphic_info_em_object[e][7 - j];
+       struct GraphicInfo_EM *g_em = &graphic_info_em_object[i][j];
+       struct GraphicInfo_EM *g_xx = &graphic_info_em_object[e][j];
 
        g_em->bitmap            = g_xx->bitmap;
        g_em->src_x             = g_xx->src_x;
@@ -8961,7 +8969,7 @@ void InitGraphicInfo_EM(void)
                       el_act_dir2img(effective_element, effective_action,
                                      direction));
        struct GraphicInfo *g = &graphic_info[graphic];
-       struct GraphicInfo_EM *g_em = &graphic_info_em_player[p][i][7 - j];
+       struct GraphicInfo_EM *g_em = &graphic_info_em_player[p][i][j];
        Bitmap *src_bitmap;
        int src_x, src_y;
        int sync_frame = j;