0
这是从一个小的Flash游戏一个小片段我工作:AS3错误#1009(removeChild之只是不会工作?)
这一点从我GamePlayScreen类:
public function handleKeyboard(e:KeyboardEvent):void {
if(e.type == KeyboardEvent.KEY_DOWN && e.keyCode == Keyboard.ENTER) {
var enemy:EnemyShip = new EnemyShip();
enemyships.push(enemy);
addChild(enemyships[enemyships.length-1]);
}
}
和这个位是导致错误的(我用*标记行)
for each (var enemy:EnemyShip in Game.gameplay.enemyships) {
if(this.hitTestObject(enemy)) {
*enemy.parent.removeChild(enemy);
}
gameplay是GamePlayScreen的一个实例,在我的文档类Game中声明。我已经追踪到敌人,它告诉我这是[Object GamePlayScreen],但是错误告诉我它是空的?
这是错误:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at Laser1/moveUp()[C:\Dev\Projects\Gamedev\Flash\classes\Laser1.as:23]
我tryed一切,追踪在每一行,仍然没有结果......甚至当我使用
if(Game.gameplay.contains(enemy) {
enemy.parent.removeChild(enemy);
}
它继续蹒跚此错误再次... 我很无能...
我不知道为什么,但固定它...我确实非常的追踪敌人,enemy.parent withing同样的事情,如果条款,他们都回来的东西比空不同。无论如何感谢! – xirb22
不客气。 –