fixed bug with not recognizing ".init_event_action" for global animations
[rocksndiamonds.git] / src / anim.c
index 6fe1cb6dc3c0ba638f5a8be3f237cbb7a17d36c1..a531ceb84548eeec6059fa5ecea9d00100f01318 100644 (file)
@@ -1197,6 +1197,8 @@ static int HandleGlobalAnim_Part(struct GlobalAnimPartControlInfo *part,
     part->anim_delay_counter =
       (c->anim_delay_fixed + GetSimpleRandom(c->anim_delay_random));
 
+    part->post_delay_counter = 0;
+
     part->init_event_state = (c->init_event != ANIM_EVENT_UNDEFINED);
     part->anim_event_state = (c->anim_event != ANIM_EVENT_UNDEFINED);
 
@@ -1633,7 +1635,9 @@ static void DoAnimationExt(void)
 
 static boolean DoGlobalAnim_EventAction(struct GlobalAnimPartControlInfo *part)
 {
-  int anim_event_action = part->control_info.anim_event_action;
+  int anim_event_action = (part->init_event_state ?
+                          part->control_info.init_event_action :
+                          part->control_info.anim_event_action);
 
   if (anim_event_action == -1)
     return FALSE;