Могу ли я передать параметры из и external .swf с помощью Actionscript 3.0?

StackOverflow https://stackoverflow.com/questions/763575

Вопрос

У меня есть main .fla-файл, который я использую для загрузки последовательности из трех игр.Если пользователь выигрывает игру, он переходит к следующей игре.Можно ли каким-либо образом перейти к основному проекту, независимо от того, выиграл ли пользователь игру?Я пробовал использовать loader.content, но, похоже, это не работает.Я использую Flash CS3.

Это было полезно?

Решение

Вы можете передавать данные в загруженные SWFS-файлы и из них без проблем.Похоже, что вы пытаетесь выполнить обмен данными из загруженного swf-файла в загружаемый swf-файл.Идеальный способ сделать это - отправить событие в загруженный swf-файл и прослушать его в загружаемом swf-файле.Грубо говоря (не проверял, потому что я спешу), вам нужно что-то вроде этого.Загрузите swf-файл.Имейте обработчик завершения загрузки.Получите содержимое загрузчика и прослушайте пользовательское событие.Вы можете передать все, что захотите, на этом пользовательском событии.

var myLoader:Loader = new Loader(); 
var url:URLRequest = new URLRequest("myExternalMovie.swf"); 
myLoader.load(url);
myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, function(event : Event)
{
    var contenet : MovieClip = event.target.content;
    content.addEventListener(yourGameEvent.GAME_COMPLETE, yourGameEventHandler);

}

Если вы никогда раньше не использовали пользовательские события, проверьте эту ссылку (или Google для получения дополнительной информации).

http://www.adobe.com/devnet/flash/articles/creating_events.html

В качестве отказа от ответственности это быстрый способ перенести данные в ваш основной класс.Лично я не большой поклонник передачи данных в events.Я бы предпочел запустить пустое событие и получить данные из свойств запускающего объекта)...но это всего лишь личные предпочтения.

Другие советы

Вы можете использовать LocalConnection класс.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top