| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 网页制作 > Flash教程 > ActionScript教程 > 文章正文 用户登录
著名IT博客TechCr
IT、科技、企业家
HiShop网店系统一
Better fonts免费
IT世界网CEO秦刚:
IT世界网CEO秦刚:
从贫苦农村少年,
从IT精英到IT民工
中国IT风险投资机
威客(witkey)的

hitTest的用法           

hitTest的用法

作者:佚名 来源:闪吧 作者: hjkloppiu 更新:2007-1-13 20:48:40 错误报告 我要投稿

hitTest是用来检测两个物体或目标是否重叠和相交,如果相交或重叠,就执行相应的动作,这对于我们做一些互动的动画和游戏是非常有用。比如在做点蜡烛和放炮的动画时,就可以用hitTest的方法。



今天我想说的是一个用电影剪辑控制电影剪辑运动的例子。
首先我们需要两个电影剪辑,一个是图片(mc),一个是箭头(arrow),做好后,放到场景中。
新建一层,加入动作:
arrow.onEnterFrame=function(){
                     if(this.hitTest(_root._xmouse,_root._ymouse)){
                     _root.mc._x+=5;
            if(_root.mc._x>150){
               _root.mc._x=0;
            }
            }
}
为了界面美观,我给图片层增加了遮照,好,现在可以测试了。
点击开新窗口欣赏该FLASH动画![全屏欣赏]



我们在来做一个点蜡烛的动画,这个动画很简单,也是用到hitTest的用法。
首先我们做两个电影剪辑,一个是蜡烛(mc),一个是火柴(fire)。
然后我们在帧上添加动作:
startDrag("fire",true);
Mouse.hide();
fire.onEnterFrame=function(){
   for(i=1;i<4;i++){
            if(this.hitTest(_root["mc"+i])){
   _root["mc"+i].play();
                  }
            }
}//这里用mc+i是因为我们在场景中共放了3个蜡烛的电影剪辑。
该动画还有一个bug,就是只要火柴和蜡烛相接触,蜡烛就会点燃。

点击开新窗口欣赏该FLASH动画![全屏欣赏]



我现在想到的解决办法是做成一个隐形按钮,在按钮上添加:
on(rollOver){
         play();
}

帧上的动作改为:
startDrag("fire",true);
Mouse.hide();

点击开新窗口欣赏该FLASH动画![全屏欣赏]







然后我们做一个点不着的蜡烛,当然这些程序还不是很完善,只是一般性的能实现这个功能而已。
在场景中放一个蜡烛电影剪辑(mc)和一个火柴电影剪辑(fire);
添加以下动作:
startDrag("fire",true);
Mouse.hide();   
fire.onEnterFrame=function(){
   if(this.hitTest(_root.mc)){
         _root.mc._x=Math.random()*500;
         _root.mc._y=Math.random()*300;
         }
   
点击开新窗口欣赏该FLASH动画![全屏欣赏]

























点击浏览该文件

文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。