Цитата:
Сообщение от Душечка
Так вот, накладываю маску, а он все равно валит по всей открытке. Как его под маску засунуть?
|
посмотрел, все решаемо.
В слое "снег" есть мувиклип со снежинкой. В первом кадре собственно АС программирования "снегопада". Область снегопада можно задать меняя width / height , получим прямоуголную область падания снежинок. Если нужна фигурная маска, тогда делаем следующее:
- В слое "снег" нажимаем на мувиклип и жмем F8 (преобразуем этот мувиклип в еще один мувиклип, т.е. помещаем внутрь нового мувиклипа).
- Этому вновь созданному мувиклипу, внутри которого теперь мувиклип со снежинкой, даем Instance Name например sneg
- Заходим внутрь этого мувиклипа sneg и там кадру пишем код, который был изначально в слое "снег", только чуточку преобразовываем - дописываем локацию создания не в _root, а _root.sneg :
Код:
width = 400;
height = 220;
total = 400;
for (var t = 0; t != total; t++) {
var mc = _root.sneg.attachMovie("снежинка", "снежинка"+t, _root.sneg.getNextHighestDepth());
mc._x = (Math.random()*(width+20))-10;
mc._y = (Math.random()*(height+20))-10;
mc.yspeed = (Math.random()*0.75)+0.5;
mc.speed = (Math.random()*1)+2;
mc._xscale = mc._yscale=(mc.speed+mc.yspeed)*4;
mc.onEnterFrame = function() {
var angle = Math.atan2(_root.sneg._x-(width/2), _root.sneg._y)+1.5707963267949;
this._y += Math.sin(angle)*this.speed+this.yspeed;
this._x += Math.cos(angle)*this.speed;
if (this._x>width+10) {
this._x = -10;
} else if (this._x<0-10) {
this._x = width+10;
}
if (this._y>height+10) {
this._y = -10;
} else if (this._y<0-10) {
this._y = height+10;
}
};
}
наш снегопад теперь будет программно создан в новосозданном мувиклипе
из слоя "снег" АС убираем!
- Теперь в новом слое на основной линейке рисуем произвольной нужной формы область в которой должен падать снег и жмем F8 (преобразуем нарисованное в мувиклип)
- Даем этому мувиклипу имя maska
- Для кадра пишем АС :
Код:
sneg.setMask('maska');
т.е. для мувиклипа sneg маской является мувиклип maska
Все! Мы будем видеть снегопад только в той области, которая нарисована в мувиклипе maska