2014-04-16 84 views
0

我有的movieclip(R1,R2等)和tThose的movieclip陣列必須被隱藏,直到有一個hitestobject所以我有在第一如何數組的每個元素添加到階段AS3

var replace:Array = [r1,r2,r3,r4,r5,r6,r7,r8] 
var len:int = replace.length; 
for(var o:int = 0; o < len; o++) 
    this.removeChild(replace[o]); 
    replace.length = 0; 
這個代碼

我想每次我有一個hittestoblect在舞臺上添加該數組的每個元素。我的代碼有些問題,因爲只有r1被添加到舞臺上,我不知道如何解決它。你能幫我麼?

function releaseToDrop(e:MouseEvent):void 
{ 
    Star(e.target).stopDrag(); 
    if (Star(e.target).hitTestObject(target)) 
    { 
     removeChild(Star(e.target)); 
     for(var o:uint = 0;o<7;o++){ 
     var replace:Array = [r1,r2,r3,r4,r5,r6,r7,r8] 
      addChild(replace[0]) 

} 

}

回答

1

這條線:

addChild(replace[0]); 

總是添加的第一個孩子,增加一個特定對象,你跟你有什麼指標代替0。如果你想給他們一個,添加一個在彼此有一個命中每一次之後,你應該有計數器被遞增每次有命中目標時的功能外

var counter:int = 0; 

function releaseToDrop(e:MouseEvent):void 
{ 
    Star(e.target).stopDrag(); 
    if (Star(e.target).hitTestObject(target)) 
    { 
    removeChild(Star(e.target)); 
    var replace:Array = [r1,r2,r3,r4,r5,r6,r7,r8] 
    addChild(replace[counter]); 
    counter = counter+1; 
    } 
} 
+0

我做到了,但所有項目的陣列顯示出來。我希望他們通過onelike與第一個hittestobject r1被添加在舞臺上與第二個hittestobject r2被添加在舞臺上。 – Marianna

+0

我明白了,看到我的編輯,如果我現在正確地理解了這個問題......你是否想要一個接一個地添加它們(第一次碰撞發生,添加r1,第二次碰撞發生,添加r2)? –

+0

是的,你理解正確。 – Marianna

相關問題