Это небольшой фрагмент из небольшой флеш-игры, над которой я работаю:
Этот бит из моего класса 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);
}
game — это экземпляр GamePlayScreen, объявленный в моем классе документа Game. Я уже проследил вражеский.родитель, и он сказал мне, что это [Object GamePlayScreen], но ошибка говорит мне, что это null?
Это ошибка:
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]
Я пробовал все, отслеживая каждую строку, и до сих пор никаких результатов ... Даже когда я использую
if(Game.gameplay.contains(enemy) {
enemy.parent.removeChild(enemy);
}
он продолжает снова натыкаться на эту ошибку... я не знаю...