![]() |
|
||||||||||
|
|||||
|
Здравствуйте!
Возникла небольшая (надеюсь) проблема - я начал изучать флеш по книге Д. Гурского, и там в конце проект игры "реверси". Я слегка отошёл от последовательности, описанной в книге и застопорился на следующем моменте: У меня есть клип _root - туда помещён main.swf - что то вроде стартового клипа. В нём я создаю пустой клип container, куда помещаю клип логина в игру login.swf. В дальнейшем я хочу использовать container для всех последующих клипов (клип для комнаты ожидания противника, клип для самого процесса игры и т.п.). Так вот, клип container хорошо создаётся и туда помещается login.swf. Но когда я залогинился, мне нужно поменять в клипе container мувик login.swf на мувик room.swf. И когда я пишу loader.loadClip("room.swf",this), то результатом получаю белый фон =( Получаетя что клипу нельзя поменять "себя" на другой клип? Как можно обойти данную проблему? И буду очень признателен, если вы поделитесь каким-нибудь более удобным способом организации подобных смен мувиков. Заранее спасибо. |
|
|||||
|
loader.loadClip("room.swf",this) загружает новый, но то что было в this удаляется, в том числе и сам loader..
если loader создать не в самом контейнере, а вне его - в том же _root, например, то все будет работать: _root.loader.loadClip("room.swf",this) |
|
|||||
|
silin
Спасибо, заработало. И ещё один вопрос по этой же теме. Я создал loader на клипе main.swf и теперь обращаюсь к нему из остальных мувиков как _parent.loader. Но думаю это не очень удачное решение, поскольку код становится жостко привязанным к этому мувику main.swf (например не сделать вложенность клипов более 1 (иначе клипы следующих вложенностей по свойству _parent не попадут на main.swf)). Была мысль записать loader на _root, но оч. не хочется засорять осн. временную диаграмму своим мусором (если вдруг игра будет расположена на каком-либо др. сайте то могут возникнуть конфликты идентификаторов да и просто нехорошо мусорить в чужих клипах). Есть ли возможность этот loader записать куда-нибудь, откуда его будет видно всем мувикам моим, при этом не используя _root (это учитывая что все мувики грузятся в клип container, заменяя собой старое содержимое и клип container не выход для хранения). |
|
|||||
|
как вариант: поместить лоадер в _global:
_global.loader = new MovieClipLoader(); вызов из любого места (независимо от вложенности) : _global.loader.loadClip("room.swf",this); или просто loader.loadClip("room.swf",this);(если в самом мувике нет свойства loader, то все равно найдет) |
|
|||||
|
хорошо, спасибо за помощь)
|
![]() |
![]() |
Часовой пояс GMT +4, время: 08:35. |
|
|
« Предыдущая тема | Следующая тема » |
|
|