http://space.flash8.net/bbs/thread-353022-1-2.html
由上面那个帖子引发的问题。。。我想做一个类似百叶窗式的mask
效果 现在是生成了一个numx * numy 的方块矩阵 然后让他们按一定顺序play 以实现特殊
效果的“百叶窗” 但是现在遇到的问题是 几个每个方块都是“同时”出现的 眼睛几乎分辨不出前后来
效果大打折扣
源文件在上面那个帖子里。。。
引用:
var lx,ly,rx,ry,w,h,max :Number // lx = leftX .....
var tempclip:MovieClip;
//test shu jv
lx = 200;
rx = 600;
ly = 200;
ry = 300;
// ding yi mc de gao he kuan
w = 20; // zuo you
h = 20; // shang xia
// gong duo shao ge fang ge
numx = Math.ceil( (rx - lx) /w );
numy = Math.ceil( (ry - ly) /h );
depth = 50;
if (numx>=numy) { max = numx;} else {max = numy;}
// chuang jian kong mc
this.createEmptyMovieClip('maskme',0);
// sheng cheng jv zhen
/*
for (var i = 1; i<=numx ; i++) {
for (var j = 1; j<=numy ; j++) {
tempclip = maskme.attachMovie("blank", "blank" + i + j , ++depth);
tempclip._x = lx + w /2 + (i-1) * w;
tempclip._y = ly + h /2 + (j-1) * h;
}
}
*/
for (var k = 2; k <= (max * 2); k++ ) {
i = 1;
do {
j = k - i;
if (( i<=numx ) and ( j<=numy )) {
tempclip = maskme.attachMovie("blank", "blank" + i + j , ++depth);
tempclip._x = lx + w /2 + (i-1) * w;
tempclip._y = ly + h /2 + (j-1) * h;
}
i++;
}
while (i < k )
}
this.setMask(maskme);
for (var k = 2; k <= (max * 2); k++ ) {
for (var pppp=1; pppp <100000; pppp++){}
i = 1;
do {
j = k - i;
if (( i<=numx ) and ( j<=numy )) {
tempclip = maskme.attachMovie("blank", "blank" + i + j , ++depth);
tempclip._x = lx + w /2 + (i-1) * w;
tempclip._y = ly + h /2 + (j-1) * h;
}
i++;
}
while (i < k )
}
为了实现“逐渐”“分层”播放各个mc的效果 我加了这句for 但是效果很差 测试的时候很拖累速度 但是基本没改善 还是几乎一块都播放了
as 3.0加了个 timer 类 好像能实现这种效果了 但是as 2.0怎么做呢?