Всем доброго времени суток!
Имеется swf файл с анимацией персонажа. Внутри распиханы картинки, метки и скрипты. Например зацикливание проигрывания одной метки, переход от анимации удала к другой метки (к метке стояния). И ко всему этому я могу обратиться только через метки. Заранее оговорено представление меток:

Код:
<action>_<dir>
Например:

Код:
stay_left
walk_down_right
И вот я решил сделать функцию разворота animTurnLeft(), которая бы поворачивала объект против часовой стрелки. При этом я знаю какая в текущий момент выполняется анимация и какое направление:

Код AS1/AS2:
// Анимация
public static const TYPE_STAY :uint = 0;
public static const TYPE_WALK :uint = 1;
public static const TYPE_POUNCH :uint = 2;
public static const TYPE_FALL :uint = 3;
// Направление
public static const DIR_UP :uint = 0;
public static const DIR_UP_RIGHT :uint = 1;
public static const DIR_RIGHT :uint = 2;
public static const DIR_DOWN_RIGHT :uint = 3;
public static const DIR_DOWN :uint = 4;
public static const DIR_DOWN_LEFT :uint = 5;
public static const DIR_LEFT :uint = 6;
public static const DIR_UP_LEFT :uint = 7;
protected var animType :uint = TYPE_STAY; // Текущий тип
protected var animDir :uint = DIR_UP; // Текущее направление
Беру текущее направление и высчитываю новое. Но если бы я переходил просто по метке:

Код AS3:
gotoAndPlay("walk_left");
Потом:

Код AS3:
gotoAndPlay("walk_up_left");
То у меня каждый раз анимация начиналась бы сначала. А было бы здорово продолжать её с того же локального кадра (конечно с учётом что количество кадров в одном типе анимации одинакова - а так оно и есть). Через currentFrame я могу получить индекс текущего кадра, например запомнить его при повороте, но он текущий, а не локальный. Как реализовать то что я задумал?