Flash实例鉴赏:夏日可乐饮水机(3)
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-15
三、细部处理和ACTION控制 1.在场景的所有层的最下面新加入一个“ACTIONS”层,双击进入,输入ACTION: _root.lock_take = false; _root.full = false; 这里预先设定了两个变量,意思分别代表杯子被拿起的LOCK_TAKE和水满变量FULL。 2.打开“OBJ”层锁定,双击“CUP_DRAG”进行细部编辑;在“CUP_DRAG”内新建一个层“TEST”,在该层用“OVAL TOOL”画一个圆形,转换成标号“CUP_TEST”,“INSTANCE NAME”同样是“CUP_TEST”;(如图12) (图12) 3.在“CUP_DRAG”内新建一个层“WATER”,位于最上方,其第1帧是空帧(“F7”),用手动绘画的方法,从第2帧开始到第11帧做一个水慢慢满的连续帧动画,新建一个层“ACTIONS”位于最上方,从第1帧到第11帧连续插入空帧,并在每帧输入ACTION: STOP();(帧排列形式如图13) (图13) ACTION 控制 4.取消“CUP”层锁定,单击“CUP”,并按“CTRL+ALT+A”输入ACTION: on (release) { if (not _root.full) { if (not this.took and not _root.lock_take) { _root.exp_1._visible=false; _root.exp_2._visible=true; _root.exp_3._visible=false; _root.exp_mov_1._visible=true; this.took = true; startDrag (this); }else{ if (_root.cup_drag.cup_test.hitTest(_root.table_hittest.hitpoint)) { _root.lock_take = true; _root.start_bt_m._visible=true; _root.exp_2._visible=false; _root.exp_4._visible=true; _root.exp_mov_1._visible=false; _root.cup_ready=true; }else{ _root.exp_2._visible=false; _root.exp_3._visible=true; _root.cup_ready=false; } this.took = false; stopDrag (); } } } 当鼠标被按下并且是弹起的时候会判断水满没满(FULL变量),接着会判断用户拿没拿起杯子(TOOK变量)和杯子放好没有(LOCK_TAKE变量),如果满足,那么会出现第2个提示信息EXP_2,箭头动画EXP_MOV_1会出现,杯子也会被锁定在鼠标上,既然是拿起了杯子,那么TOOK变量肯定是TRUE真的;而如果没有被拿起来的时候还会出现2种情况,即放好了位置(用HITTEST测试2个小圆圈的贴近程度)和没放好,如果放好了,那么一切第一阶段就结束了,会使LOCK_TAKE为真,这样用户就不可以拿起杯子,从而按照下一步指示进行操作(EXP_4),否则,会出现错误信息(EXP_3),说明你没有放好位置,会等待用户重新激活判定。 5.按“CTRL+E”回到主场景,双击“START_BT_M”进入编辑状态,然后单击“START_BUTTON”,按“CTRL+ALT+A”输入ACTION: on (press) { if (not _root.full) { _root.watering._visible = true; _root.start_bt_m.lock_fill = true; } } on (release) { if (not _root.full) { _root.watering._visible = false; _root.start_bt_m.lock_fill = false; } } 输入好以后,按“CTRL+E”回到主场景,单击“START_BT_M”,按“CTRL+ALT+A”输入ACTION: onClipEvent (load) { this._visible = false; this.lock_fill=false; this.fill_level=0; } onClipEvent (enterFrame) { if(this.lock_fill) { this.fill_level++; _root.cup_drag.gotoAndStop(this.fill_level % 10000 + 1); if(this.fill_level % 10000 >=12) { this.fill_level=0; this.lock_fill=false; _root.full=true; _root.start_bt_m._visible=fals |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Flash实例鉴赏:夏日可乐饮水机(2)下一篇: 《心心相印》--情人节贺卡制作(中)
关于Flash实例鉴赏:夏日可乐饮水机(3)的所有评论