2013-05-14 59 views
0

我試圖讓一個水系統的水顆粒相互碰撞,但我不斷收到此錯誤。錯誤#1010在AS3

[object water] 
TypeError: Error #1010: A term is undefined and has no properties. 
at science_fla::MainTimeline/feed() 

下面是代碼:

import flash.events.MouseEvent; 
import com.coreyoneil.collision.CollisionList; 
//etc 

stop(); 

stage.addEventListener(MouseEvent.CLICK,feed); 

function feed(event:MouseEvent) 
{ 
    var wat:water = new water(event.target.mouseX,event.target.mouseY); 

    MovieClip(root).addChild(wat); 
    particles.push(wat); 

    for(var i = 0; i < particles.length;i++) 
    { 
     if (particles[i]!=wat) 
     { 
      trace(particles[i]); 
      wat.myCollision.addItem(particles[i]); 
     } 

     particles.myCollision.addItem(wat); 
    } 
} 

感謝所有的幫助。如果你需要更多的代碼,請問。

回答

1

我想說的問題是這一行:

particles.myCollision.addItem(wat); 

particles是一個數組,和數組沒有財產myCollision

您的意思是particles[i].myCollision

+0

哈哈感謝提升提示,我發誓它並不總是使用它,只是打敗了我的結論,upvoted。 – Montycarlo 2013-05-14 05:49:59

+0

@Montycarlo當然 - 是的AS2,AS3和JavaScript都使用吊裝:) – Marty 2013-05-14 05:52:21

+0

他也錯過了'else'在這個語句之前,否則'wat'會與'wat'發生衝突。編輯:哎呀,該語句應該在'if'裏面,這樣每個粒子就會有碰撞列表中的所有其他粒子。 – Vesper 2013-05-14 05:53:34

0

我想你正在訪問前面未定義的變量。其實你的問題很難理解。請讓我知道更多的代碼,以及哪些代碼行有錯誤。或者嘗試一下水變量不在某些功能上使其達到全球。並嘗試。還讓我知道水變量包含它有什麼動畫片段或任何東西。?

+0

我想要這麼糟糕,但我現在有良好的全面聲譽。 – Marty 2013-05-14 05:57:48

+0

我無法讓你先生烈士。 – Siva 2013-05-14 05:59:42