actionscript3 в чем смысл addFrameScript

Я хочу спросить о addFrameScript.

addFrameScript(0, frame1);   

что означает этот скрипт? почему его 0?

можно ли заменить 0 другим номером или словом?

public function try()
{
    addFrameScript(0, frame1);
    return;

}// end function

Если кто-то может помочь мне понять?

2 ответа

Этот недокументированный метод используется для вызова функции, когда MovieClip Экземпляр воспроизведения достигает указанного кадра, в этом случае 1-й кадр, 0 (Индекс на основе 0). Вы, конечно, ограничены доступным количеством кадров; Например, чтобы добавить скрипт, который вы последний кадр, вы бы использовали:

mc.addFrameScript(mc.totalFrames-1, lastFrameReached);

function lastFrameReached():void {
    trace("stopping the animation");
    mc.stop();
}

Просто думайте об этом как о фрейме с некоторым кодом внутри инструмента разработки Flash.

Кадр - это временной интервал во флеш-плеере. Поэтому, если ваш fps установлен на 12 кадров в секунду, сценарию в этом кадре будет уделено внимание (выполнено) в течение 1/12 секунды.

addFrameScript вряд ли документирован, возможно, чтобы препятствовать его использованию разработчиками. Таким образом, в основном, в коде вы инициализируете класс таймера и вручную управляете своими временными срезами.

Кадры снова представлены в виде массива с нулевым индексом, с набором исполняемых файлов, называемых сценарием кадров. Поэтому, когда вы добавляете рамочный скрипт самостоятельно, вы просто делаете то, что мог бы сделать конструктор класса Frame (внутренне), если вы поместите его на панель as3 рамки в IDE.

Короче, addFrameScript(0, frame1); что-то параллельно frameScripts[0] = frame1; где frameScripts может быть внутренним массивом.

Другие вопросы по тегам