Flash课件网 - 您身边的课件制作专家
Flash课件网官方,专业代做课件、定制原创Flash动画或参赛课件、修改Flash、制作演讲或汇报幻灯片PPT课件。联系QQ:4318100或搜索微信号:flashkj

FLASH课件中碰撞检测详细分析及其应用

本站提供Flash课件代做和PPT幻灯片定制业务,联系QQ/微信:4318100

在FLASH课件中,影片剪辑的碰撞检测可以说是用的最多的交互效果之一,但许多朋友总是对影片剪辑碰撞感到恐惧,其实,运用起来还是非常简单和方便的,下面本文对影片剪辑的碰撞和应用做一个详细说明。

ActionScript的hitTest(碰撞检测) 

1、语法:

HitTest()

功能:用于检测鼠标是否略过某个剪辑或则两个剪辑是否发生重叠、相交等情况

格式一:anyMovieClip.hitTest(x,y,true/false);

anyMovieClip是舞台工作区中的任意影片剪辑实例,x,y,是剪辑的坐标范围

格式一:anyMovieClip.hitTest(target);

target是舞台工作区的一个影片剪辑实例,其余同上

请看碰撞检测程序--物件接触示例.fla。

一共是1帧3个影片剪辑实例,分别为bug(虫子),zapper(插坐),reset(复位按钮)

其所有程序都加在了bug影片剪辑实例上,内容为:

on (press) {//当鼠标按下时

this.startDrag();//允许当前剪辑拖拽

}

on (release) {//当释放鼠标时

stopDrag();//停止当前剪辑拖拽

}

onClipEvent (load) {//当此剪辑载入时,初始化

_root.zapper.stop();//设置插座动画停止播放

playjishu = 0;//设置插座播放计数器初始值为0

initx = _x;//保存初始时虫子的x坐标

inity = _y;//保存初始时虫子的y坐标

_root.reset.onPress = function() {//当按下reset(复位按钮)剪辑时

  buer = false;//初始计数状态为false

  _x = initx;//读取初始时虫子的x坐标

  _y = inity;//读取初始时虫子的y坐标

  _alpha = 100;//设置透明度为100

  _rotation = 0;//设置角度为0

  playjishu = 0;//设置插座播放计数器初始值为0

};

}

onClipEvent (enterFrame) {//不断地触发此动作

if (_root.zapper.hitTest(_x, _y, true)) {//如果插座剪辑和本剪辑发生碰撞时

  stopDrag();//停止当前剪辑拖拽

  buer = true;//初始计数状态为true,开始计数

  _alpha = 75;//设置透明度为75

  _rotation = 20;//设置角度为20

  _root.zapper.play();//开始播放插座抖动动画

}

if (buer) {//计数状态为true时

  playjishu++;计数器自加 

  _y += 25;//虫子剪辑的y坐标自加

}

if (playjishu>=10) {//如果计数器大于等于10

  _root.zapper.stop();//停止插座动画的播放

}

}

以上代码均有详细注释,朋友们可以将代码放到FLASH实例中进行测试,然后应用倒自己的课件中,会起到很好的交互效果。而且应用范围非常广泛,在一些小的游戏中也是离不开碰撞的哦。

标签:flash课件碰撞实例
分类:资讯转载| 发布:cmx| 查看: | 发表时间:2014-4-8
原创文章如转载,请注明:转载自Flash课件网 http://www.flashkj.com/
本文链接:http://www.flashkj.com/tuijian/342.html

已经有 ( 0 ) 位网友发表了评论,你也评一评吧!

Design By Flashkj.Com | Login | Power By Chen Feiyang.