AS3 hitTestObject 根本不工作

Posted

技术标签:

【中文标题】AS3 hitTestObject 根本不工作【英文标题】:AS3 hitTestObject not working at all 【发布时间】:2015-06-19 22:12:54 【问题描述】:

我一直在使用 Flash CS6 和 ActionScript 3 开发一个大型项目,其中包括拼图等。我一直在整个项目中使用 hitTestObject,它一直运行良好,然后突然停止运行。它不会在任何新实例中工作,甚至在以前工作的地方都不起作用。我创建了一个小测试件,这也不起作用:

   import flash.events.MouseEvent;

   hit_txt.visible = false;

   object2_mc.addEventListener(MouseEvent.MOUSE_DOWN, drag);

   function drag(e:MouseEvent = null):void 
      object2_mc.startDrag();
    

   if (object2_mc.hitTestObject(object1_mc)) 
      hit_txt.visible = true;
   

任何帮助或建议将不胜感激,在此先感谢。

【问题讨论】:

你有没有运行时错误? 【参考方案1】:

您没有说明何时检查命中测试。因此,您要么通过输入框进行检查,要么在移动对象时进行检查

object2_mc.addEventListener(MouseEvent.MOUSE_MOVE, move);
function move(e:MouseEvent = null):void

    if (object2_mc.hitTestObject(object1_mc))
    
        hit_txt.visible = true;
    

【讨论】:

谢谢,您的代码不起作用,但您需要说明何时进行测试是绝对正确的。再次感谢,你真的救了我!

以上是关于AS3 hitTestObject 根本不工作的主要内容,如果未能解决你的问题,请参考以下文章

flash as3 hitdetection 功能触发其他功能

AS3:为啥“this”在函数内部会改变它所指的内容?

Actionscript:如何创建一个计数器来注册一个 hitTestObject 并在主舞台上显示分数?

Actionscript:如何创建一个注册hitTestObject的计数器并在主舞台上显示得分?

as3 - 联系表格不起作用

hitTestObject not hitTesting with all MovieClips