hitTestObject на дочернем элементе MC - PullRequest
1 голос
/ 16 января 2011

У меня есть MC под названием «playerP» и внутри него 7 разных MC. Кажется, я не могу выполнить тест на дочернем MC, он всегда показывает [object position_2]

private function cMove(e:MouseEvent):void
        {
            trace(MovieClip(playerP.RR), playerP.PT)
            if (e.currentTarget.hitTestObject(playerP.PT))
            {
                trace("hit la");
            }
        }

Ответы [ 2 ]

3 голосов
/ 29 октября 2012

Я пытаюсь сослаться на мувиклип, который имеет 2 слоя и 2 ссылки на экземпляр.Один называется Эрик, другой хит.В настоящее время работает более крупный Эрик, как я могу сделать цель «хитом».

for (var ii : uint = 0; ii < target.numChildren; ++ii) {
    if (e.currentTarget.hitTestObject(target.getChildAt(ii))){
        trace("hit la");
    }
}

Это работает, но на Эрике, который установлен как

public function Catcher(stageRef:Stage, target:Erik) : void

, поскольку Эрик является классомобъект.

1 голос
/ 16 января 2011

Попробуйте явно перебрать детей.

private function cMove(e:MouseEvent):void
    {
        for (var ii : uint = 0; ii < playerP.numChildren; ++ii)
        {
            if (e.currentTarget.hitTestObject(playerP.getChildAt(ii)))
            {
                trace("hit la");
            }
        }
    }
...