您的位置:阿里西西 > 前端技术 > 界面设计 > 详细内容

影片剪辑的Action编写规则

  本站整理   网络搜集   2008-07-08   点击:   我要评论
  电影剪辑在flash中可以说是使用最多的一种元件了,那么对于它的AS也是不少。
  在讲解之前,我还是要重新说一下电影剪辑AS的编写规则,和上次讲按钮一样,分为两种,一种是写在电影剪辑本身上,一种是写在时间轴上面。
  一、首先咱们先来做个简单的小例子。(点击这里下载源文件。

  或许你不用AS就能做出一个小球的移动动画。但是如果让你用AS来实现小球的移动呢?下面来看看如何用AS来实现吧。
  在这个例子里,你首先会了解到如何在电影剪辑本身上编写AS,以及编写规则。
  1、 新建立一个电影剪辑元件,里面你就随便画一个圆吧。之后把这个影片剪辑拖放到舞台之中(也就是创建一个此影片剪辑的实例)。
  2、 现在开始编写脚本,选中这个MC,按F9打开动作面板,按照图显示选择onClipEvent,之后在显示的事件中选择enterFrame,然后在里面编写脚本如下:
this._x+=5

  这个脚本编写之后应该是:
onClipEvent (enterFrame) {// enterFrame的意思是以影片帧不断地触发此动作
this._x += 5; //this代表这个影片剪辑自身。_x表示影片剪辑的X轴坐标。
}

  呵呵,按下你的ctrl+回车测试一下吧,一个简单的移动动画就搞定了。
  从这个例子咱们不难看出,如果把AS写在影片剪辑本身上,那么它是有自己的书写格式的。正确的书写格式就是:
onClipEvent (事件) {
//需要执行的脚本程序
}
  这个可以看成是公式,你记住就行了,是写在影片剪辑身上的。括号里的“事件”其实是个触发器,当事件发生时,执行该事件后面花括号中的语句。,具体有哪些事件,我把它们都列出来。
  - load 影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。
  - unload 在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。处理与 Unload 影片剪辑事件关联的动作之前,不向受影响的帧附加任何动作。
  - enterFrame 以影片帧频不断地触发此动作。
  - mouseMove 每次移动鼠标时启动此动作。_xmouse 和 _ymouse 属性用于确定当前鼠标位置。
  - mouseDown 当按下鼠标左键时启动此动作。
  - mouseUp 当释放鼠标左键时启动此动作。
  - keyDown 当按下某个键时启动此动作。使用 Key.getCode 方法获取最近按下的键的有关信息。
  - keyUp 当释放某个键时启动此动作。使用 Key.getCode 方法获取最近按下的键的有关信息。
  - data 当在 loadVariables 或 loadMovie 动作中接收数据时启动此动作。当与loadVariables 动作一起指定时,data 事件只发生一次,即加载最后一个变量时。当与loadMovie 动作一起指定时,获取数据的每一部分时,data 事件都重复发生。
  了解了事件之后,你可以自己试着修改一下脚本,如果让你们点一下鼠标,舞台上的圆就移动一下,该怎么做呢?
  关于把AS写在影片剪辑本身的例子先讲到这,下面来看看如果把AS写在时间轴上面的话,应该怎么写。
  首先你把刚才的脚本去掉。然后需要为这个影片剪辑实例起一个名字,比如起名为mc
在选中时间轴的第一桢,打开动作面板,输入以下脚本:
mc.onenterframe = function() {
this._x += 5; //你也可以把这句改为mc._x+=5 自己想一下为什么。
};
  显而易见,在时间轴上的写法就应该套用以下公式:
实例名.事件名称=function(){
//脚本程序
  需要注意的是,这种写法的事件名称不要忘了在前面加一个on,比如,事件如果是enterframe的话,你就应该写成onenterframe
  下面简单说一下影片剪辑的属性。比如,影片剪辑有自己的X、Y轴坐标,有自己的透明度(_alpha),这些都是它的属性。
  那么如何使用这些属性呢?你可以使用“点”语法来对属性进行设置。
  把上面的脚本修改一下。
mc.onenterframe = function() {
mc._x += 5;
mc._alpha = random(100);
};
  这里我加了一句this._alpha = random(100),它是设置影片剪辑的透明度的,使用的语句就是_alpha。后面的random()函数是随机选取一个100以内的数字作为它的透明度。从这个句子可以看出,“点”语法使用方法就是:实例名.属性(mc._alpha),你甚至可以简单理解为“点”就是“的”,那么this._alpha这句你就可以理解为:影片剪辑mc的透明度
  上面的脚本mc._alpha = random(100)也可以改为_root. mc._alpha = random(100)
那么,你就可以理解为:舞台上的影片剪辑mc的透明度是随机选择100内的值。
  关于影片剪辑的AS基本编写规则就说到这里,以后在具体的例子当中相信会更深刻的理解。


更多关于 的文章
会员评论所有会员评论

  

相关排行总榜

网页教程

站长文章

特效排行