changed only handling pointer-style animations clicks in request dialogs
[rocksndiamonds.git] / src / anim.c
index 6d761f43b296ce0783c5889aa24472d1844d81e6..7ef6d6904b6a6243923e98dcfb5909aedbf6b32e 100644 (file)
@@ -398,8 +398,8 @@ static boolean isPausedOnPlayfieldOrDoor(struct GlobalAnimPartControlInfo *part)
   if (!part->class_playfield_or_door)
     return FALSE;
 
-  // only pause animations when engine is paused or request dialog is open(ing)
-  if (!tape.pausing && !game.request_active_or_moving)
+  // only pause animations when engine is paused or request dialog is active
+  if (!tape.pausing && !game.request_active)
     return FALSE;
 
   return TRUE;
@@ -2139,6 +2139,11 @@ static boolean InitGlobalAnim_Clicked(int mx, int my, int clicked_event)
       {
        struct GlobalAnimPartControlInfo *part = &anim->part[part_nr];
 
+       // if request dialog is active, only handle pointer-style animations
+       if (game.request_active &&
+           part->control_info.class != get_hash_from_key("pointer"))
+         continue;
+
        if (clicked_event == ANIM_CLICKED_RESET)
        {
          part->clicked = FALSE;