Просмотр полной версии : Назначение маски на _levelN?
marat_sa
27.03.2008, 11:40
Доброго дня! Можно ли динамически назначить маску флэшке, загруженной на определенный уровень _level или самому уровню?
Можно. Ставьте маску выше объекта по глубине, и присваивайте ее объекту.
function setMyMask(mc:MovieClip, mask:MovieClip):Void {
mask.swapDepths(mc.getDepth()+1); // вместо mc.getDepth() можно использовать getNextHighestDepth()
mc.setMask(mask);
}
Ну предполагается, что маска создается програмно, а нам нужно ее выше объекта поставить )
Если маска ручная, конечно свап не нужен )
marat_sa
27.03.2008, 11:55
Нет, не работает. В том то и дело, что назначить маску-клип нужно на _levelN, а не на клип.
_level1.setMask(mask_mc);
? ? ?
var mc:MovieClip = _level0.createEmptyMovieClip ("mc", _level0.getNextHighestDepth ());
mc.beginFill (0);
mc.lineTo (0, 100);
mc.lineTo (100, 100);
mc.lineTo (100, 0);
mc.lineTo (0, 0);
mc.endFill ();
_level0.setMask (mc);
Ну предполагается, что маска создается програмно, а нам нужно ее выше объекта поставить )
Если маска ручная, конечно свап не нужен )
Маске без разницы ее глубина, главное, чтобы была в клипе, который маскирует.
loadMovieNum("target.swf", 1);
onEnterFrame = function(){
if(_level1){
maskMc.swapDepths(2);
_level1.setMask(maskMc);
onEnterFrame = null;
}
}
marat_sa
27.03.2008, 12:16
Всем спасибо! Заработало.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.