Могу ли я передать параметры и из внешнего .swf с помощью Actionscript 3.0? - PullRequest
0 голосов
/ 18 апреля 2009

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

Ответы [ 2 ]

2 голосов
/ 18 апреля 2009

Вы можете без проблем передавать данные в и из загруженных SWF-файлов. То, что вы пытаетесь сделать, это связать загруженный 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

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

0 голосов
/ 26 марта 2010

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

...