发布网友
共1个回答
热心网友
本例利用flash快速制作烟雾动画,主要利用AS3的类来实现。
首先我们在Photoshop中制作一个烟雾的照片,这里主要使用Photoshop的画笔来实现。
图1
图2
图3
之后我们导进到FLASH中来,然后转变为影片剪辑原件,命名为smokepuff。之后我们打开库,然后右击该元件,设置链接。
图4
然后编辑种别,代码如下。
package
com.asgamer.graphics
{
import
flash.display.BlendMode;
import
flash.display.MovieClip;
import
flash.events.Event;
public
class
Smokepuff
extends
MovieClip
{
public
var
vx:Number;
public
var
vy:Number;
public
function
Smokepuff()
:
void
{
alpha
=
Math.random();
vx
=
Math.random()
-
Math.random();
vy
=
Math.random()
*
3
-
5;
scaleX
=
scaleY
=
Math.random();
addEventListener(Event.ENTER_FRAME,
loop,
false,
0,
true);
}
private
function
loop(e:Event)
:
void
{
alpha
-=
0.01;
y
+=
vy;
x
+=
vx;
scaleX
=
scaleY
+=
0.02;
if
(alpha
<
0)
removeSelf();
}
private
function
removeSelf()
:
void
{
removeEventListener(Event.ENTER_FRAME,
loop);
parent.removeChild(this);
}
}
}
文档的属性为:
图5
之后我们创建一个main.as
package
{
import
flash.display.Stage;
import
flash.display.MovieClip;
import
flash.events.Event;
import
com.asgamer.graphics.Smokepuff;
import
flash.display.Sprite;
public
class
Main
extends
Sprite
{
public
function
Main()
:
void
{
addEventListener(Event.ENTER_FRAME,
loop,
false,
0,
true);
}
private
function
loop(e:Event)
:
void
{
var
smokepuff:Smokepuff
=
new
Smokepuff();
smokepuff.x
=
250;
smokepuff.y
=
250;
stage.addChild(smokepuff);
}
}
}