Просмотр полной версии : Как наиболее правильно менять две интерактивные сцены?
TryToBeASuperStar
27.11.2005, 19:30
Привет,
такая задача...
Есть 2 сцены. Обе сцены шибко интерактивные (у каждой сцены свой фон, у каждой свои подгружаемые данные, у каждой куча своих интерактивно создаваемых кнопок в корне сцены по списку из txt файла). Объединяет эти сцены только расположение - они должны быть на сайте в точно одном месте, и суть - это две стороны одного вопроса, возникшего у посетителя... повсему этому, я хочу, чтобы для перехода от одной сцены к другой человеку не приходилось обновлять html страницу и вообще переход осуществлялся как можно быстрее...
Попробовал сделать отдельный файл mcall.swf который занимая 2Кб подгружает внутрь себя mc1.swf и mc2.swf в mc1 и mc2 соответственно... Оба swf подгрузились, но вот вся интерактивность их пропала :( тоесть данные не закачиваются, кнопки не появляются, списки не верстаются и т.д... только фон...
Если же грузить в root - интерактивность сохраняется, но мне непонятно как быть со всеми элементами - как их быстро скрыть и отрисовать элементы другой сцены?
Как правильно сделать?
В подгружаемых пишем _lockroot = true;
TryToBeASuperStar
27.11.2005, 19:39
Безтолку... FlashMX вообще не распознаёт параметр "_lockroot"
Это не Flash MX не распознает, это 6 плеер не распознает.
Значит либо уходить в другой кадр, рисуя там, либо (если надо сохранить лейаут, допустим) написать функцию, которой передаются два списка -- что скрывать и что отображать. Можно также список нужных транзиженов передавать.
TryToBeASuperStar
27.11.2005, 19:51
setProperty(mc1, _visible, false); / setProperty(mc2, _visible, true); ?
Как при этом поведут себя свежесозданные интерактивные кнопки ?
Не понял сути вопроса. Вне зависимости от свежесозданности мувиклипы mc1 и mc2, если они существуют на Сцене в момент исполнения кода, буту скрыты/показаны, соответственно. Если разрешения соответствующие есть (кросс-доменная загрузка данных, т.п.)
А с чего вдруг такие сложности со старым синтаксисом?
TryToBeASuperStar
27.11.2005, 19:58
Кнопки во flash очень наглые - всё время выскакивают наверх ;)
Я спрашивал - после visible=false кнопки скрытые не будут выскакивать перебивать кнопки показываемые?
Не будут.
Вообще это называется "непроникание событий". Легко обходится.
А чего просто в 2 кадрах не раместить?
TryToBeASuperStar
28.11.2005, 02:29
Фигня в том, чот кнопки динамически создаются каждый раз при загрузке сцены - значит при переключении кадров каждый раз будут заново создаваться все итерактивные объекты... это как-то непрально
Добавь флаги и создаваться будет то, что захочешь
TryToBeASuperStar
28.11.2005, 02:54
можно поподробнее, плиз
Во втором кадре
if(!isInit) createButtons();
TryToBeASuperStar
28.11.2005, 03:20
Типа загрузили кадр 1, там отстроили сцену 1, по кнопке переходим на кадр 2, отстраиваем сцену 2... затем переходим обратно к сцене 1 - к кадру 1... и ничего не отстраивая там уже всё есть?!?! Вроде как по логике там должно быть пусто... это же типа муви... :-/
Кто сказал, что там должно быть пусто?
TryToBeASuperStar
28.11.2005, 11:23
Flash = Ничего не понимаю! (с)
:) ладно, если успею, сделаю пример сегодня
TryToBeASuperStar
28.11.2005, 17:13
Буду очень благодарен!
TryToBeASuperStar
29.11.2005, 13:18
Сделал всё в одном кадре root - mc1 и mc2 в каждом из которых работает своя сцена. Смена происходит показом/скрыванием visible=true/false. Всё ок, кроме одного момента:
Раньше все координаты интерактивно создаваемых объектов были для root, теперь все объекты плавно переехали право-вниз. Есть функция изменяющая место 0 в муви? Или придёться пересчитывать и переписывать все координаты в txt?
Ещё пара примитивных вопросов:
1. Как проверить существует ли нужный для подгрузки файл?
2. Можно ли узнать файл (swf/jpg) с каким именем подгружен в данный муви?
У мувов 0 по центру. В руте - лево-верх. Можно передвигать mc1 mc2 или пользовать метод mc.localToGlobal(), mc.globalToLocal().
TryToBeASuperStar
29.11.2005, 16:09
Именно об этом я и спрашивал.... только можно на примере, а то непонятно к чему применять этот метод... в скобках писать координаты, а mc=parent? иил как ваще?
TryToBeASuperStar
29.11.2005, 22:32
Ну давай ка посмотрим, что там у нас в хелпе....
раздел "globalToLocal method" - Help\Flash\html\13_movieclips6.html - нихрена нет по поводу голбалтулокал
раздел "localToGlobal method" - Help\Flash\html\13_movieclips6.html - нихрена нет по поводу локалтуглобал
Чё ещё посмотреть?
Может снизойдёшь до 1 строки кода примера.... ???????????????????
цирк закрыт, концерт уехал.
причины:
нахальство.
Если вам так нужен готовый вариант, закажите его в разделе вакансии, довольно попрашайничать, это серьезный форум для серьезных специалистов.
ТрайТуРидМануал
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.