Flash запускает код AS на кадре - PullRequest
0 голосов
/ 24 мая 2011

Я разработчик Flex, который должен был написать код во Flash, поэтому мое понимание того, как поместить действие на временную шкалу, несколько ограничено.

Я пытаюсь прикрепить это действие кПервый кадр фильма, который я планирую сыграть.Когда я впервые играю в фильм, код выполняется так, как ожидалось.Однако, когда я перезагружаюсь или перематываюсь на первый кадр фильма, код больше не выполняется.Я не уверен, почему это происходит, поскольку казалось, что добавленный код ActionScript к кадру выглядит довольно просто.

import flash.utils.Timer;
import flash.net.URLLoader;
import flash.net.URLRequest;


var urlLoader:URLLoader;
var timer:Timer;

startAdPlay();

function startAdPlay():void
{
    if( urlLoader == null ) {
        urlLoader = new URLLoader();
    }

    urlLoader.load( new URLRequest(  "http://localhost:20081/startadplay/15" ) );

    timer = new Timer( (15 * 1000) );
    timer.addEventListener(TimerEvent.TIMER, stopAdPlay );
    timer.start();
}

function stopAdPlay(event:TimerEvent):void
{
    urlLoader.load( new URLRequest(  "http://localhost:20081/stopadplay" ) );

    timer.stop();
    stop();
}

Ответы [ 2 ]

2 голосов
/ 24 мая 2011

Учитывая, что вы уже являетесь разработчиком Flex и, таким образом, привыкли писать свой код в отдельных файлах вне Flash, я бы рекомендовал продолжать делать это и размещать как можно меньше кода на временной шкале. Пуристы вообще не будут рекомендовать код на временной шкале, но я буду помещать вызовы функций и команды dispatchEvent () на временной шкале. Однако вызываемая функция определена в отдельном файле .as.

Так что в вашем случае я бы просто поставил startAdPlay (); вызовите функцию на временной шкале и поместите фактическое тело функции в отдельный класс, связанный с фильмом Flash в окне «Свойства». Это сделает его более логичным, когда и где определена функция.

1 голос
/ 24 мая 2011

Полагаю, вы не звоните startAdPlay() при перезапуске фильма в приложении

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