- if (part->restart)
- {
-#if 0
- printf("::: RESTART %d.%d\n", part->anim_nr, part->nr);
-#endif
-
- if (!part->waiting)
- {
-#if 0
- printf("::: WAITING %d.%d\n", part->anim_nr, part->nr);
-#endif
-
- ResetDelayCounterExt(&part->init_delay, anim_sync_frame);
-
- part->init_delay_value =
- (cp->init_delay_fixed + GetSimpleRandom(cp->init_delay_random));
-
- part->waiting = TRUE;
- }
-
- if (!DelayReachedExt(&part->init_delay, part->init_delay_value,
- anim_sync_frame))
- return;
-
-#if 0
- printf("::: RUNNING %d.%d\n", part->anim_nr, part->nr);
-#endif
-
- part->waiting = FALSE;
- part->running = TRUE;
- }
-
-#if 0
- printf("::: DO PART %d.%d [%d, %d, %d] [%d]\n", part->anim_nr, part->nr,
- part->restart, part->waiting, part->running,
- anim->running);
-#endif
-
- part->restart = HandleGlobalAnim_Part(part, part->restart);
-
- if (part->restart)
- part->running = FALSE;