Как определить, закончен ли AVM1Movie? - PullRequest
1 голос
/ 31 октября 2011

Я использую Loader для добавления AMV1Movie (фильм, созданный с использованием Toon Boom Studio ) к моей сцене AS3.0.Как определить, когда AMV1Movie воспроизводит свой последний кадр?

Ответы [ 2 ]

1 голос
/ 13 ноября 2011

Без отправки чего-либо из исходного фильма вам нужно будет опросить его свойства currentFrame и numFrames, и это будет точным, только если основная временная шкала точно отображает анимацию / программу.Если AVM1Movie анимирует с помощью кода или имеет вложенные мувиклипы, нет никакого способа узнать, когда он «закончен».

Лучше всего открыть его и добавить событие в конец.

0 голосов
/ 13 ноября 2012

Я использую ForcibleLoader для загрузки AVM1Movie как MovieClip:

var uic: UIComponent = ....
 ...
var loader:Loader = Loader(1uic.addChild(new Loader()));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, startPlay);
var fLoader:ForcibleLoader = new ForcibleLoader(loader);
fLoader.load(new URLRequest("....swf"));

, затем я проверяю, если (movie.currentFrame + 1> = movie.totalFrames)

Я использую эту функцию для управления uic.click событие, чтобы остановить и воспроизвести фильм:

private function controlSwf(event: Event): void {
    var e: Event = event;
    var movie: MovieClip = MovieClip(Loader(event.target).content);
    if (movie.currentFrame + 1 >= movie.totalFrames) {
        movie.gotoAndPlay(1);
        play = true;
    } else if (play) {
        play = false;
        movie.stop();
    } else {
        play = true;
        movie.play();

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...