2012 年 9 月 20 日、午後 7 時 27 分 GMT+8.. コード「continue;」を使用しても同じエラーが引き続き発生する...他の提案はありますか? :(
以前の回答がまだ機能していないのを助けてください.. :(
チュートリアルの練習。オブジェクトがキャッチャーをgitすると、コードのこの部分でエラーが発生します..
function moveObject(e:Event):void {
// cycle thru objects using a for loop
for (var i:int=objects.length-1; i>=0; i--) {
//move objects down based on speed
objects[i].y += speed;
objects[i].rotation += speed;
// if objects leaves the stage
if (objects[i].y > 400) {
// remove it from display list
removeChild(objects[i]);
// remove it from the array backwards
// remove it backwards removes all problems when looping through.
// forward would cause confusion if you removed 5 before 4.
objects.splice(i, 1);
}
if (objects[i].hitTestObject(player.arrowS.sackC)) {
if (objects[i].typestr == "good") {
score += 3;
} else {
score -= 5;
if (score <= 0) {
score = 0;
}
}
trace(score);
updateScore(score);
removeChild(objects[i]);
objects.splice(i, 1);
}
}
}
ゲームはまだ動作していますが、これを見るとイライラします。これがエラーです
TypeError: Error #2007: Parameter hitTestObject must be non-null.
at flash.display::DisplayObject/flash.display:DisplayObject::_hitTest()
at flash.display::DisplayObject/hitTestObject()
at adventure_fla::MainTimeline/moveObject()