本家儿要涉及的常识点:Timer计时器类,MouseEvents鼠标点击事务,影片剪辑用作按钮
工具/原料
- FLASH CS3及以上版本。
方式/步骤
- 1
这里用的是AnimateCC打开软件,新建AS3文档。

- 2
本身绘制或找一个电电扇的矢量素材。

- 3
将素材导入到舞台中。把扇叶零丁选择出来。

- 4
将扇叶转换为影片剪辑,注重注册点在中间位置。


- 5
设置扇叶影片剪辑的实例名为leaf_mc

- 6
接下来建造三个档级按钮和封闭开关。因为要显示当前档级,所以要利用影片剪辑看成按钮利用,这个前面的经验讲过了。每个按钮包含两帧,并在第一帧添加代码:stop();


- 7
建造好的按钮如下图所示,依次设置按钮的实例名从左到右,btn0,btn1,btn2,btn3

- 8
在本家儿时候轴加如下代码:
var isOn:Boolean=false;
var index:int=-1;
var timer:Timer=new Timer(20);
var ro:Number=3;
timer.addEventListener(TimerEvent.TIMER,UpdateRotation);
for(var i:int=0;i<4;i++)
{
this["btn"+i].addEventListener(MouseEvent.CLICK,ChangeLevel);
}
function ChangeLevel(e:MouseEvent):void
{
var obj:Object=e.currentTarget;
var t:int=int(obj.name.slice(3));
if(t==index)
{
ro=0;
index=-1;
timer.stop();
obj.gotoAndStop(1);
return;
}
if(index!=-1)
{
this["btn"+index].gotoAndStop(1);
}
if(t==3)
{
ro=0;
index=-1;
timer.stop();
}
else
{
ro=(t+1)*6;
index=t;
obj.gotoAndStop(2);
timer.start();
}
}
function UpdateRotation(e:TimerEvent):void
{
leaf_mc.rotation+=ro;
}

- 9
运行后就可以实现对电扇的节制了,在实际中电扇启动是有一个加快或减速的过程,代码更为复杂,这里就不具体会商了。

注重事项
- 需要具体的代码注释及相关素材可留言。
- 有什么问题可以留言。







