Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.06.2013, 22:36
Larry вне форума Посмотреть профиль Отправить личное сообщение для Larry Найти все сообщения от Larry
  № 1  
Ответить с цитированием
Larry

Регистрация: Jun 2013
Сообщений: 4
По умолчанию Передача данных о flashVars между двух .swf файлов

Всем привет!
Проблема выглядит следующим образом. Есть двa .swf файла, один preloader, второй - игра как таковая. Preloader грузит в себя .swf игры, и после визуализирует игру. Нужно передать игре flashVars, полученные preloader'ом.
Проект полностью на Flash Builder'e. Я пробовал использовать вызов метода в preloader'е из класса игры после окончания ее полной загрузки, который принимает эти FlashVars, например:
Код AS3:
//file preloader.as;
_loader.content.setFlashVars(FlashVars.getData());
Процедура, в принципе, стандартная, но. На этапе компиляции Flash Builder ругается, что нет такого метода и это понятно. Как его заткнуть? Пробовал отключить строгий режим компиляции, но все-равно пишет ошибку.

Старый 11.06.2013, 23:19
belv вне форума Посмотреть профиль Отправить личное сообщение для belv Найти все сообщения от belv
  № 2  
Ответить с цитированием
belv
[+1 16.07.13]
[+4 16.07.13]

Регистрация: Oct 2005
Сообщений: 217
Можно в загружаемом swf написать условие
if(this.parent is Loader)
{
тут обратится к переменной прелоадера
}
но чтобы , этот код работал нужно поместить в приемник слушателя события ADDED_TO_STAGE
Такой подход не вызовет ошибки при компиляции и можно обратится к переменной которая сохранена в прилоадере.
Это как вариант , может я и не прав , может есть другие варианты .


Последний раз редактировалось belv; 11.06.2013 в 23:50.
Старый 12.06.2013, 08:09
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 3  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Не нужно никаких методов создавать.
Прелодер грузит флешку в себя, в подгружаемой флешке слушаем событие Event.ADDED_TO_STAGE.
И как только она добавлена, можно получить флешварсы так:
Код AS3:
var flashVars:Object = stage.loaderInfo.parameters;
объект stage все равно будет единым для прелодера и для подгруженной флешки, так что и флешварсы там будут одни и те же

Старый 12.06.2013, 11:48
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 4  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Можно это сделать без заморочек.
Надо просто передать параметры в URL при загрузке: "file_to_load.swf?flashVar0=0&flashVar1=1"
А в загруженной file_to_load.swf они будут доступны как flashVars

Создать новую тему Ответ Часовой пояс GMT +4, время: 04:05.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 04:05.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.