晃动的竖线
TR
]l
P<m
TR
]l
P<m 注:本人使用的Flash版本 Macromedia Flash MX 2004
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m 源文件下载学习
TR
]l
P<m
TR
]l
P<m 这个效果非常常用,其实实现起来也比较简单,主要通过控制MC的x坐标来实现。
TR
]l
P<m
TR
]l
P<m 新建一个MC,命名为line_g,画一条竖线,坐标(0,0)。
TR
]l
P<m
TR
]l
P<m 注意:在这种需要控制坐标的flash中每个MC的初始坐标值都是很重要的,否则你很难弄清楚那个该死的MC到底跑到哪去了,即使是普通的flash,我们也最好制作得规范一些,这样看上去很清晰,检查起来也很方便。
TR
]l
P<m
TR
]l
P<m 再新建一个MC,命名为line_a,将line_g拖入(注意坐标),在line_g上捆绑下面的AS:
TR
]l
P<m
TR
]l
P<m onClipEvent (load) { speed = random(40)-20;//设置移动速度的初始值为-20至20 round = 20;}onClipEvent (enterFrame) { if (_x < 0) { _x = 450; } if (_x > 450) { _x = 0; }//上面两个判断语句是为了避免MC超出播放范围,其中"450"为fla文件的宽度
TR
]l
P<m if (i < round ) {
TR
]l
P<m _x += speed;
TR
]l
P<m i++;
TR
]l
P<m //给它一定的运行时间来保持某一速度
TR
]l
P<m //数值20为保持这个速度的周期,可以根据自己的需要设定
TR
]l
P<m } else {
TR
]l
P<m speed = random(40)-20;
TR
]l
P<m i = 1;
TR
]l
P<m //超过时间后赋予新的速度
TR
]l
P<m }
TR
]l
P<m }
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m 回到场景,拖入几个line_a,(本例中是5个),将它们的x坐标统统设置为0,y坐标设置为fla文件的高度的一半,预览就得到了上面的效果。仔细观察可以看出它们会同时改变速度和方向。
TR
]l
P<m
TR
]l
P<m 我们还可以进一步修改,让每一个MC的速度变化周期各不同(上面的变化周期20是固定的),改为:
TR
]l
P<m
TR
]l
P<m onClipEvent (load) { speed = random(40)-20;//设置移动速度的初始值为-20至20 round = random(15)+5;}onClipEvent (enterFrame) { if (_x < 0) { _x = 450; } if (_x > 450) { _x = 0; }//上面两个判断语句是为了避免MC超出播放范围,其中"450"为fla文件的宽度
TR
]l
P<m if (i < round ) {
TR
]l
P<m _x += speed;
TR
]l
P<m i++;
TR
]l
P<m //给它一定的运行时间来保持某一速度
TR
]l
P<m //数值20为保持这个速度的周期,可以根据自己的需要设定
TR
]l
P<m } else {
TR
]l
P<m speed = random(40)-20;
TR
]l
P<m round=random(15)+5;
TR
]l
P<m i = 1;
TR
]l
P<m //超过时间后赋予新的速度
TR
]l
P<m }
TR
]l
P<m }
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m 这样变化就更神出鬼没了。如果你喜欢,还可以进一步随机调整场景中竖线的色彩和宽度,留给各位思考和试验。
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m
TR
]l
P<m