2013-07-17 75 views
0

我有問題了一塊礦的代碼,它似乎是在這個下面的類:錯誤#1010級設置類

package 
{ 

import flash.display.MovieClip; 
//levels are 11x9 

public class Level extends MovieClip 
{ 

    var level1:Array=new Array(
    1,1,1,1,1,1,1,1,1,1,1, 
    1,0,0,0,0,0,0,0,0,0,1, 
    1,0,0,0,0,0,0,0,0,0,1, 
    1,0,0,0,0,0,0,0,0,0,1, 
    1,0,0,1,0,0,0,0,0,0,1, 
    1,0,0,1,1,1,0,0,0,1,1, 
    1,0,0,0,0,0,0,1,1,0,1, 
    1,1,1,1,1,1,1,1,1,1,1); 
    var grid:Array = new Array(11); 
    public function Level() 
    { 
     for (var i = 0; i < 9; i++) 
     { 
      grid.push(new Array(9)); 
     } 
     for (var xr=0; xr<11; xr++) 
     { 
      for (var yr=0; yr<9; yr++) 
      { 
       var type = level1[yr * 11 + xr]; 
       var obj:Wall = new Wall(xr*50,yr*50,type); 
       grid[xr][yr] = obj; 
       if (type!=0) 
       { 
        addChild(obj); 
       } 
      } 
     } 

    } 
} 
} 

現在我已經做了一些工作,和錯誤是錯誤代碼#1010:未定義的術語並且沒有屬性。 更具體地說,我做了一些調試,確定了確切的線路爲 grid [xr] [yr] = obj; 任何幫助表示讚賞。 在此處輸入代碼 這裏

回答

1

變化

grid.push(new Array(9)); 

輸入代碼

grid[i]=new Array(9); 

[編輯]

其實試試這個

var level1:Array=new Array(
1,1,1,1,1,1,1,1,1,1,1, 
1,0,0,0,0,0,0,0,0,0,1, 
1,0,0,0,0,0,0,0,0,0,1, 
1,0,0,0,0,0,0,0,0,0,1, 
1,0,0,1,0,0,0,0,0,0,1, 
1,0,0,1,1,1,0,0,0,1,1, 
1,0,0,0,0,0,0,1,1,0,1, 
1,1,1,1,1,1,1,1,1,1,1); 


var grid:Array = new Array(11); 
public function Level() 
{ 


    for(var row=0;col<11;row++){ 
    grid[col] = new Array(9); 
    for(var col=0;col<9;col++){ 
     var type = level1[row* 11 + col]; 
     var obj:Wall = new Wall(col*50,row*50,type); 
     grid[col][row] = obj; 
     if (type!=0){ 
      addChild(obj); 
     } 
    } 
    } 
} 
+0

你搞砸了。它仍然無法正常工作... – Barakados

+2

哈哈,是啊,夥計,你搞砸了!哎呀,說說不讚賞 – Ronnie

+0

我懂了!謝謝你的建議!我使用了你的源代碼並修復了一個你忘記調整的變量。 – Barakados