用Flash轻松制作鼠标点击发散特效动画

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

首先启动Flash,我使用的是Flash 8,然后新建立flash文档,然后按Ctrl+J修改文档属性。

按Ctrl+F8新建立一个影片剪辑元件,名字是Fragment,然后绘制一个白色的圆,至于大小都任意可以。

返回到主场景中,选择第一帧,输入下面代码。

/* 定义四个全局变量,定义位置 */

_global.gLEFT = 0;

_global.gTOP = 0;

_global.gRIGHT = Stage.width;

_global.gBOTTOM = Stage.height;

/* 5个变量定义元件的速度、最大、最小、数量*/

var maxSpeed:Number = 25;

var minSize:Number = 4;

var maxSize:Number = 10;

var minFragments:Number = 50;

var maxFragments:Number = 150;

/* 在最大和最小之间返回一个数的函数 */

function randRange(min:Number, max:Number):Number {

var randomNum:Number = Math.floor(Math.random() * (max - min + 1)) + min;

return randomNum;

}

/* 主程序片段 */

onMouseDown = function():Void {

var totalFragments:Number = randRange(minFragments, maxFragments);

var fragment_mc:MovieClip;

var depth:Number = this.getNextHighestDepth();

for (var i:Number = 0; i < totalFragments; i++, depth++) {

fragment_mc = attachMovie("Fragment", "fragment" + depth, depth);

fragment_mc._x = _xmouse;

fragment_mc._y = _ymouse;

fragment_mc._width = fragment_mc._height = randRange(minSize, maxSize);

while(!fragment_mc.speedX) {

fragment_mc.speedX = randRange(-maxSpeed, maxSpeed);

}

while(!fragment_mc.speedY) {

fragment_mc.speedY = randRange(-maxSpeed, maxSpeed);

}

fragment_mc._alpha = randRange(10, 100);

fragment_mc.cacheAsBitmap = true;

fragment_mc.onEnterFrame = function():Void {

this._x += this.speedX;

this._y += this.speedY;

if (this._x < gLEFT || this._x > gRIGHT || this._y < gTOP || this._y > gBOTTOM) {

this.removeMovieClip();

}

};

}

};

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航