很多年前就接触过了flash,一直总觉得做flash太烦锁,特别是做一些稍微复杂的动画,把as写到很多特别的地方,修改同事做的东西,看来看去眼都花了。
玩过一些flash游戏,没看as3之前,觉得像射击类的游戏,碰撞之类的判断可能写了很多的代码,刚看了一会as3,原来里面有一些自带的方法。
hitTestPoint,hitTestObject
hitTestPoint () 方法
public function hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。 x 和 y 参数指定舞台的坐标空间中的点,而不是包含显示对象的显示对象容器中的点(除非显示对象容器是舞台)。
参数 x:Number — 要测试的此对象的 x 坐标。
y:Number — 要测试的此对象的 y 坐标。
shapeFlag:Boolean (default = false) — 是检查对象 (true) 的实际像素,还是检查边框 (false) 的实际像素。
返回 Boolean — 如果显示对象与指定的点重叠或相交,则为 true;否则为 false。
hitTestObject () 方法
public function hitTestObject(obj:DisplayObject):Boolean
语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9
计算显示对象,以确定它是否与 obj 显示对象重叠或相交。
参数 obj:DisplayObject — 要测试的显示对象。
返回 Boolean — 如果显示对象相交,则为 true;否则为 false。
有了这两个方法,做起射击类的flash游戏就事半功倍了。