获取hitTestPoint子名称

时间:2013-11-12 16:26:19

标签: actionscript-3 hittest

我有一个名为带有多个子图形的点的媒体剪辑。当我的字母击中一个孩子时,我想获得该图形的名称或子编号

if (point.hitTestPoint(char.x + 20,char.y + 30,true)){
    //name of child hit
}

这可能吗?

1 个答案:

答案 0 :(得分:0)

你可以通过测试容器中的孩子来对此进行粗暴对待。有点像...

if (point.hitTestPoint(char.x + 20,char.y + 30)) {
  for(var n:int = 0; n < point.numChildren; n++) {
    if(point.getChildAt(n).hitTestPoint(char.x + 20,char.y + 30,true)) {
      // Do something. Store name, whatever
      break;
    }
  }
}

这不是最优化的方法,但很简单并且与您当前的方式相匹配。如果您正在为高速游戏进行此操作,那么您可能需要研究某种空间分区以优化您的测试。