影片剪辑的Action编写规则 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

   

电影剪辑在flash中可以说是使用最多的一种元件了,那么对于它的AS也是不少,

影片剪辑的Action编写规则

    在讲解之前,我还是要重新说一下电影剪辑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 当按下某个键时启动此动作,

电脑资料

影片剪辑的Action编写规则》(https://www.unjs.com)。使用 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基本编写规则就说到这里,以后在具体的例子当中相信会更深刻的理解。

最新文章