0
好吧,我有我的主類的數組,看起來像這樣:測試反對則hitTest對象數組的值
objectArray:Array = [ ];
我有創造不同的物品,如硬幣,敵人,心等三大功能。這些添加的項目都被推入objectArray
。我想寫這個功能hittests我的子彈對這些對象:
private function checkCollisions() :void{
var bullet:MovieClip;
for (var j:int = 0; j < objectArray.length; j++){
object = objectArray[j];
for(var i:int = 0; i < bulletArray.length; i++){
bullet = bulletArray[i];
if (objectArray[j].hitTestPoint(bullet.x, bullet.y, true)) {
container.removeChild(bullet);
bulletArray.splice(i,1);
if (objectArray[j] == Enemy[j]){
container.removeChild(objectArray[j]);
objectArray.splice(j,1);
trace("enemy hit");
}
}
}
}
}
問題是從這一部分來:
if (objectArray[j] == Enemy[j]){ \\problem
container.removeChild(objectArray[j]);
objectArray.splice(j,1);
trace("enemy hit");
}
我一直在試圖找出一種方法來測試對象這是針對諸如「敵人」這樣的特定值而被擊中的,以便我可以根據被擊中的對象類型產生不同的結果。無論我嘗試什麼樣的測試組合,我似乎都無法迴應。當我跟蹤objectArray[j]
時,它會產生[object Enemy]
。有沒有不同的測試數組值的方法?
這就像一個魅力。我很感激! – 2012-08-02 22:16:26