Flash专栏: 基础教程 | 技巧运用 | MTV实例教程 | 游戏实例教程 | 实例教程 | AS教程(new)
photoshop专栏: 基础 | 进阶 | 技巧总汇 | 精彩实例 | 文字特效 | 滤镜魔术 | 实际应用
网页设计: Dreamweaver教程 | FireWorks教程 | CorelDraw设计 | Freehand/Illustrator教程 | 音乐转换教程
其他教程: 操作系统 | 程序设计 | 网站开发 | 图形图像 | 数据库 | 网络技术 | 安全相关 | 认证考试 | 硬件知识 | 服务器
Flash专栏>AS教程><俊俊教程系列>之逐渐出现的马赛克遮照   返回上一页

  日期:2006-03-22 14 作者:clamp444 来源:闪客帝国 俊俊教程
天气预报 IP地址 手机号码 邮编 翻译 在线代理 在线评书 好dj


<俊俊教程系列>之逐渐出现的马赛克遮照


首先在场景中导入一个图片 把它转换为影片剪辑
把影片剪辑放在主场景第一针

在该影片剪辑上写下如下AS

onClipEvent (load)//当影片剪辑出现在时间轴上时,执行大括号里的语句 {
numY = 56;
numY = 70;;//定义图象显示的尺寸
numPerFrame = 60//定义针速
currSquare = 0;
choices = new Array();
for (i=0; i<numX*numY; i++) {
choices.push(i);//定义一个新的数组 并不断增加数组长度
}
_root.createEmptyMovieClip("mask", 0);//
this.setMask(_root.mask);//创建一个影片剪辑 作为遮照
function drawSquare(x, y) {
with (_root.mask) {
moveTo(x, y);
beginFill(0x000088);
lineTo(x+10, y);
lineTo(x+10, y+10);
lineTo(x, y+10);
endFill();//画出这个遮照, 形状为10*10象素的方块
}
}
}
onClipEvent (enterFrame)//影片剪辑针频不断触发此动作 {
if (currSquare<numX*numY) {
for (i=0; i<numPerFrame; i++) {
j = random(choices.length);
t = choices[j];
choices[j] = choices[choices.length-1];随机选择方快出现的时间
choices.pop();//开始删除数组choices中的元素
x = t%numX;
y = Math.floor(t/numX);//返回参数中表达式的下限值 
drawSquare(x*10, y*10);
}
currSquare += numPerFrame;
this._alpha = currSquare/(numX*numY)*100;//设置透明度
}
}

好了现在可以导出看效果了

编辑:卡其色


 
高手云集 版权所有 1998-2006