2013-01-23 31 views
1

我有我的代碼如下。2D遊戲設計 - y變量未解決?

package net.ferrell.wrathoftuemdaym; 

import java.awt.*; 

public class Level { 
    public Block[][] block = new Block[50][50]; 

    public Level() { 
     for(int x = 0; x < block.length; x++) { 
      for(int y = 0; y < block[0].length; y++); 
       block[x][y] = new Block(new Rectangle(x * Tile.tileSize, y * Tile.tileSize, Tile.tileSize, Tile.tileSize), Tile.air); 
     } 

    } 

    public void generateLevel() { 
     for(int x = 0; x < block.length; x++) { 
      for(int y = 0; y < block[0].length; y++); 
       if(x == 0 || y == 0 || x == block.length-1 || y == block[0].length-1) { 
        block[x][y].id = Tile.earth; 
       } 
     } 

    } 

    public void tick() { 


    } 

    public void render(Graphics g) { 
     for(int x = 0; x < block.length; x++) { 
      for(int y = 0; y < block[0].length; y++); 
       block[x][y].render(g); 
     } 


    } 
} 

在表示「block [x] [y]」的行中,y不能解析爲變量。我不知道這個問題的解決方法,只有在這個課上纔有問題存在。請幫幫我。我不明白,因爲X可以解決的......

+1

1)不要對我們SHOUT。 2)*'在表示「block [x] [y]」'*的行中,我看到3條這樣的行。爲了更快地獲得更好的幫助,請發佈[SSCCE](http://sscce.org/)並將編譯輸出複製/粘貼到問題中(也使用代碼格式)。 –

回答

4

這是您的罪魁禍首

for(int y = 0; y < block[0].length; y++); 

應該

for(int y = 0; y < block[0].length; y++) 

個人而言,我始終把代碼塊括號,即使它是隻有一條線。

+0

非常感謝! – Ferrell

+2

@ user2002536:請記住接受解決您的問題的答案。 – Jack