合肥卓想动画工作室 承接全国+flash动画制作 + flash动画设计 + 各类flash动画制作设计


联系方式

flash动画与动作脚本的关系

时间:2012-12-16 12:52来源:卓想空间http://www.zxgzs.com 作者:QQ:610929375 点击:


 

只有这样,才能在Flash动画补间,你可以使用ActionScripting改变的任何对象 - 替换 - 在某些情况下,补间动画和补间形状的位置或形状。
在这个例子中,我们将显示在一个单一的框架,创建一个无休止的动画脚本循环,每次推进X(水平)位置的一个影片剪辑元件,Flash会检查帧(每秒12次在默认的帧速率)。
开始创建您的主舞台上的影片剪辑。 您不需要命名实例,但你可以,如果你想,只是为了形成良好的生活习惯。
右键单击上的影片剪辑,并选择“打开”动作“面板中的动作。 首先,我们要参考中的影片剪辑的位置设置在舞台上的电影第一次加载时,我们需要一个onClipEvent事件 。
 onClipEvent事件(负载){
 }
我们正在使用的负载的功能,因为我们只希望它移动到起始位置,当电影第一次打开,而不是每次一遍又一遍,单一的框架,因为它循环周期。
现在,我们将切换到专家模式 ,添加的代码,告诉Flash如何定位时加载的影片剪辑:
 onClipEvent事件(负载){
 this._x = 10;
 }
 _x是升序从舞台的左边缘的像素,计数的对象的水平位置。 所以,我们刚刚告诉闪存的电影负载时,需要考虑当前的影片剪辑-简称本 ,从而指向Flash中的动作脚本的符号被分配到- ,并设置其水平位置其中心的点是10个像素的左边缘的阶段。 这就像笛卡尔坐标系,当图形的平面上使用(的x,y)。 我们刚刚设置x为10。
目前的脚本设置的出发点。 现在,我们需要添加新的脚本将符号距离的起点,一帧的时间。 由于我们只使用一个单一的框架,但在同样的帧每秒12次(12 fps的帧速率的网络标准)造成闪存周期,这意味着我们需要告诉Flash做一些事情,每次传递超过该帧。 为此,我们需要另一个onClipEvent的。
 onClipEvent事件(负载){
 this._x = 10;
 }
 onClipEvent事件(enterFrame事件){
 }
使用enterFrame事件不正是我上面描述的:它检查的onClipEvent每次在一个新的框架,或重复相同的帧的电影周期内的功能。
我们已经设置了的时候,现在我们需要设置什么:
 onClipEvent事件(负载){
 this._x = 10;
 }
 onClipEvent事件(enterFrame事件){
 this._x = this._x 5;
 }
之前,我们说,this._x(当前符号的水平位置)是在一个点的10个像素,从左侧的阶段,现在我们告诉Flash,每次进入该帧,它需要检查采取的姿势的符号,并添加到它的5个像素,将它移动到右侧的5个像素。 这是滑动每秒60像素,因为,而非重置,而不是建立在自身。 为了简化:
说我们12帧,而不是一个。 我们会给你打电话的位置的符号P.
第1帧:P = 10,P = P = 5,或P = 10 5,所以,P = 15。
第2帧:P = P +5,或P = 15 +5,P = 20。
第3帧:P = P +5,或P = 20 +5,P = 25。
框架4:P = P 5,或P = 25 5,因此P = 30。
第5帧:P = P +5,或P = 30 +5,所以P = 35。
第6帧:P = P +5,或P = 35 +5,P = 40。
相框7:P = P +5,或P = 40 +5,P = 45。
框8:P = P +5,或P = 45 +5,所以P = 50。
框架9:P = P 5,或P = 50 5,因此P = 55。
第10帧:P = P +5,或P = 55 +5,所以P = 60。
第11帧:P = P +5,或P = 60 +5,所以P = 65。
框12:P = P +5,或P = 65 +5,所以P = 70。
因此,在开始的一个第二位置,P为10个像素的距离的左边缘的阶段; second/12帧结束时,P循环通过对ActionScript这么多次,P是70像素远离的阶段的左边缘。
将工作,如果你只是想你的对象一次移动之前的脚本,Flash影片将无法识别的远/右边缘的阶段,因此该对象将只保留移动和ActionScript后不久骑自行车的视线,除非我们添加某种条件,以确定何时应该停止不动的符号。 为此,我们可以使用一个if语句 ,插在里面的onClipEvent(enterFrame事件)和嵌套以外的this._x = this._x +5:
 onClipEvent事件(负载){
 this._x = 10;
 }
 onClipEvent事件(enterFrame事件){
 (this._x <= 625)
 this._x = this._x 5;
 }
 }
对于我的if语句的条件下,我已经告诉了Flash,这只是我的符号应该移动到其中心点的位置向右移5个像素,如果是小于或等于625 pixesl从舞台的左边缘。 这可以防止符号更远的地方移动到X坐标625。
最后,我们需要告诉Flash做什么,在所有其他现有不符合条件的if语句(在这种情况下,this._x大于625)。 要做到这一点,添加一个新的else语句下面和外面的if语句,但仍嵌套的onClipEvent(enterFrame事件):
 onClipEvent事件(负载){
 this._x = 10;
 }
 onClipEvent事件(enterFrame事件){
 (this._x <= 625)
 this._x = this._x 5;
 }
 其他{
 this._x = 10;
 }
 }
这告诉Flash的是,在所有其他条件下,当this._x不小于或等于625,则this._x需要返回到x坐标10,影片剪辑符号回到开始。

(责任编辑:卓想空间http://www.zxgzs.com)
上一篇:没有了




上海 北京 深圳 广州 成都 杭州 重庆 武汉 苏州 兰州 昆明 无锡 南昌 贵阳 太原 石家庄 包头 呼和浩特 佛山 东莞 唐山 烟台 泉州 乌鲁木齐 福州 长沙 南宁 合肥 亳州 天津 南京 沈阳 西安 青岛 大连 郑州 厦门 长春 哈尔滨 济南 宁波 温州 淄博 海口 银川 西宁 南通 大庆 徐州 潍坊 常州 鄂尔多斯 绍兴 济宁 盐城 邯郸 临沂 洛阳 东营 扬州 台州 嘉兴 沧州 榆林 泰州 镇江 昆山 江阴 张家港 义乌 金华 保定 鞍山 泰安 宜昌 襄阳 中山 惠州 南阳 威海 德州 珠海 柳州 宿迁 芜湖 岳阳 菏泽 漳州 信阳 蚌埠 绵阳 株洲 邢台 桐城 桂林 衡阳 铜陵 三亚 阜阳 荆州 遵义 咸阳 驻马店 上饶 湛江 湘潭 汕头 莆田 滁州 廊坊 赣州 肇庆 九江 德阳 淮安 曲靖 湖州 揭阳 许昌 秦皇岛 江门 新乡 潮州 商丘 宁德 吉林 连云港 常德 宜春 黄冈

卓想动画 版权所有 flash作业- 网页设计作业
返回首页   |   电话咨询   |   微信咨询