changed setup option to disable global animations to only affect toons
[rocksndiamonds.git] / src / anim.c
index e836ff6a3aaf8ff85dabe6b0679111df38133f88..b651ac6fc5cbe1e31556d82b2585415a6149a180 100644 (file)
@@ -531,10 +531,6 @@ static void InitGlobalAnimControls(void)
 
       anim->state = ANIM_STATE_INACTIVE;
 
-      // if draw order is undefined, set to default value "0"
-      if (anim->control_info.draw_order == ARG_UNDEFINED_VALUE)
-       anim->control_info.draw_order = 0;
-
       part_nr = 0;
 
       for (p = 0; p < NUM_GLOBAL_ANIM_PARTS_ALL; p++)
@@ -606,10 +602,6 @@ static void InitGlobalAnimControls(void)
        if (part->control_info.class == get_hash_from_key("pointer") &&
            part->control_info.style == STYLE_DEFAULT)
          part->control_info.style |= STYLE_PASSTHROUGH;
-
-       // if draw order is undefined, inherit it from main animation
-       if (part->control_info.draw_order == ARG_UNDEFINED_VALUE)
-         part->control_info.draw_order = anim->control_info.draw_order;
       }
 
       if (anim->num_parts > 0 || anim->has_base)
@@ -788,7 +780,7 @@ static void DrawGlobalAnimationsExt(int drawing_target, int drawing_stage)
   int mode_nr;
   int i;
 
-  if (!setup.toons)
+  if (!setup.global_animations)
     return;
 
   if (drawing_stage == DRAW_GLOBAL_ANIM_STAGE_1 &&
@@ -898,6 +890,11 @@ static void DrawGlobalAnimationsExt(int drawing_target, int drawing_stage)
     int frame;
     int last_anim_random_frame = gfx.anim_random_frame;
 
+    if (!setup.toons &&
+       part->graphic >= IMG_TOON_1 &&
+       part->graphic <= IMG_TOON_20)
+      continue;
+
     // when preparing source fading buffer, only draw animations to be stopped
     if (drawing_target == DRAW_TO_FADE_SOURCE &&
        game_mode_anim_action[part->mode_nr] != ANIM_STOP)