通过鼠标特效认识FLASH5的Action(下)
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-10
做完前面那个例子后,我们稍加改动,就可以做出自己定制鼠标指针的效果,先把刚才做的Movie Clip改成自己定制的鼠标指针动画,然后全部按上个例子做好,在第一帧的Action中选择列表中的对象>鼠标>hide(见图一) 不用加任何参数(其实也没有参数加了^_^)就完成了。 前一个例子中的鼠标指针只要Flash动画开始播放就变成自己定制的效果了,而我们在很多FLASH网站中看到的效果并不是这样,而是当鼠标移动到按钮上或指定位置上才出现定制的效果,这又是怎样制做成的呢?通过学习制作这个效果,我们又能学到几条重要的Action。让我们再次打开刚才的例子,按Ctrl+L调出这个例子的符号库,然后按Ctrl+N新建一个文件,把刚才那个例子的符号库中的鼠标指针动画Movie Clip托放到场景中,但是位置要放在灰色的场景镜头以外区域,把它取名为newmouse(注意:这个名字不能改成mouse,否则在执行Action时会产生错误),然后按Ctrl+F8新建一个Button,把这个Button做好后,放到主场景的一个新的图层里,编辑它的Action,加入StartDrag,填入对象名称newmouse,选中复选框"锁定鼠标到中央",我们发现在StartDrag这行上面还有一条Action:"on (release) {",选中这条Action把下边的复选框中的释放(release)勾去,选中指针经过(rollOver)(见图二), 这样就把StartDrag的触发条件由鼠标指针释放时触发改为了鼠标指针经过时触发。按上个例子的方法在这个条件下加上Action:"Mouse.hide();"。选中此时的最后一行Action:"}",加入动作StopDrag,把触发条件改为指针离开(rollOut),在这个条件下在加入对象>鼠标>show,这时这个特效就基本完成了,但是我们预览时会发现一个问题,当我们把鼠标从按钮上移开时,刚才我们定制的鼠标指针动画并没有消失,而是停在了按钮的边缘上,这就需要我们利用另外一个Action把这个鼠标指针动画从镜头里移开。我们再次编辑按钮的Action,在指针离开的触发条件下再加入另外一条Action:动作>setProperty,函数属性选择_x(X轴),目标填入newmouse,数值填入1000(你建的场景宽度不会比这个还大吧?)(见图三), 这次再预览,怎么样,问题解决了! 这次我们要做点什么呢?还是鼠标跟随,但是这次这个鼠标跟随和我们讲的第一个例子有些不同, 这个鼠标跟随效果是不是更酷呀:),现在我们就开始制作它!先制作一个Movie Clip动画,在最后一帧中编辑Action,加入Action>Stop,把它托放到场景中镜头外区域,取名为movie:,编辑第一帧的Action,这次我们按Ctrl+E选择专家模式(在熟练掌握Action后,这种方式更快捷),输入以下代码: duplicateMovieClip ("/movie:", "movie:" add num, Number(num)); setProperty ("movie:" add num, _y, _ymouse); setProperty ("movie:" add num, _x, _xmouse); num = Number(num)+1; if (num>10) { num = 0; } 然后按F6复制这个帧3次,编辑最后一帧的Action选择基本动作中的转到(gotoAndplay),保持默认参数,预览完成。让我们分析一下这段Action代码吧: duplicateMovieClip ("/movie1", "movie1" add num, Number(num)); 是复制场景中的对象movie1,把它的名字分别命名为"movie:"加变量num的形式,放在不同的深度; setProperty ("movie:" add num, _y, _ymouse); setProperty ("movie:" add num, _x, _xmouse); 这两句设定了新复制的Movie clip的横纵坐标为鼠标当前位置; num = Number(num)+1; 变量num的累加不停复制Movie clip; 为了防止复制过多,导致资源过度占用,通过if (num>10) {num = 0;}控制Movie clip的最大复制数量。 怎么样,只要你稍懂一些编程知识,就能理解这些Action代码吧,如果你是编程高手,那你就可以利用不同的数学公式做出复杂的Action程序,从而实现惊人的特殊效果! 好了,鼠标特效特效我们就介绍这么多了,你是否对FLASH5的Action有了一定的了解了呢?如果你对Action有兴趣,欢迎通过Email与我交流,我的邮箱地址:vitalnet_yh@sina.com。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Flash MX 2004新特性实例学习六下一篇: 边听MTV边玩游戏Flash也能画中画
关于通过鼠标特效认识FLASH5的Action(下)的所有评论