Я пишу HitTestObject для моего персонажа: (каждый код находится в разделе ENTERFRAME)
- для персонажа:
if(bullet.bulletList.length>0)
for (var i:int = 0; i < bullet.bulletList.length; i++)
{ if(this.hitTestObject(bullet.bulletList[i]))
{
updateHP();
}
}
- для кода атаки энергии:
bullet= new Bullet();
bulletList.push(bullet);
В начале, когда на этапе нет маркера, не выдается никакой ошибки, но при первом добавлении маркера на этап возникает ошибка, подобная этой:
TypeError: Error #2007: 参数 hitTestObject 不能为空。(something's like hisTestOject cannot be empty)
at flash.display::DisplayObject/_hitTest()
at flash.display::DisplayObject/hitTestObject()
at com.miraclei::char/loop()
Я думаю, это потому, что когдасначала bullet removeFromStage, функция hitTestObject ничего не нашла в bulletList, затем произошла ошибка.Я пробовал много способов, но все еще не хорошо!У кого-то есть решение для этого?