以前のゲームでは、フラッシュ ゲームで敵を配列を使用して侵入させました。敵が殺されるか、ステージから移動すると、配列から削除するだけでした。なんらかの理由で、このゲームでまったく同じコードを使用すると、配列オブジェクトを削除しようとすると 1009: エラーがスローされ、基本的にそこには何もないというメッセージが表示されます。. . これは奇妙です。
コードは次のとおりです。
public function addZombie()
{
var zom:Zombie = new Zombie();
zom.y = 20;
zom.x = Math.floor(Math.random()*(1 + 500 - 30)) + 30;
addChild(zom);
zombies.push(zom);
numZombies++;
}
それが追加される関数です。ゾンビは配列であり、この関数の配列にプッシュされます。これを削除しようとしているコードは次のとおりです。
for (var i:int = 0; i < zombies.length; i++)
{
if (zombies[i].y + zombies[i].height / 2 > 400) {
removeChild(zombies[i]);
zombies.splice(i,1);
numZombies--;
addZombie();
}
}
removeChild(ゾンビ[i]); <-- これは、削除しようとしたときにエラーをスローする部分です。それらのいくつかは奇妙に削除されますが、すべてではありません。