Разве так не работает?

Код AS3:
public function eatingAnimation( ):void {
clip.gotoAndPlay("animation");
clip.addEventListener(Event.ENTER_FRAME, animation);
}

Код AS3:
public function animation(e:Event):void {
if (clip.currentFrame == clip.totalFrames) {
trace("ВСЕ КАДРЫ ПРОИГРАНЫ");
// КАКИЕ-ТО ДЕЙСТВИЯ
clip.removeEventListener(Event.ENTER_FRAME, animation);
}
}