2009-04-18 5 views
0

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

ответ

2

Вы можете передавать данные в и из загруженных 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

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

0

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

 Смежные вопросы

  • Нет связанных вопросов^_^