Просмотр полной версии : Вставка в конкретный слой
Я пишу игру и пользуюсь маской: вся карта тёмная и только в месте юнита она открыта. Так вот, маска это когда нижний слой - затемнённая карта, средний непосредственно юниты+открытая карта, а верхний - в области всех мувиков в нём виден через нижний слой средний слой. Т. е. получается, что на экран тёмный, там где в верхнем слою был мувик видна карта (средний слой).
Возникает 2 проблемы - как это сделать:
1. При создании во время игры юнита он создаются поверх всего (а надо в среднем слое).
2. А ведь при создании надо помещать мувик и в верхний слой (приоткрытие карты).
Если кто знает, как вставить мувик в конкретный слой пишите.
Где мувик создаёшь там он и появляется ...
верхний - в области всех мувиков в нём виден через нижний слой средний слой.
Во замутил... ;) Ниче не понял...
Делаешь клипы-маски и назначаешь их нужным мувикам.
Вот то-то оно и есть :-)
Короче говоря как во время проигрывания flash playerom создавать и помещать мувики в конкретный слой?? Чёт типа _root.layer1.attachmovie(...) не прокатывает.
да положи ты в нужный слой пустой мув и к нему аттачь
а что то типа нарисовать маску и пустой мувик пустой в пустой мувик аттачить твои не катит?
Слои в редакторе и работают только в редакторе. Ну вот примерный алгоритм...
//Создаешь мувы на разных уровнях и обзываешь их layer1,2,3...n
//ну и надо представлять, какой мув кого должон перекрывать, т.е. быть выше
// в стеке (применительно к слоям)
_root.createEmptyMovieClip("layer_1",1);
_root.createEmptyMovieClip(layer_n",n);
//Потом аттачишь туда все, что тебе надо,
// расставляешь и будет, как в редакторе.
var mc=layer_1.attachMovie("id","new_id", this.getNextHighestDepth());
mc._x=...;
mc._y=...;
//Есессно, все это лучше в цикле делать.
Удачи.
_sestra_
22.12.2005, 18:10
Если не хочешь "закидывать" куда либо своего героя, то делай
swapDepths() с пустым мувом...
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.