2017-06-27 75 views
-1

我正在製作一個塔防遊戲,並且我使用了一個TileGrid類來填充整個與草地圖,但它拋出/給出一個OBB異常在TileGrid.java:12。它使用LWJGL OpenGL。我正在做一個塔防遊戲,我做了一個TileGrid類,但它給了我一個OBB異常(ArrayIndexOutOfBounds)

下面的代碼:

package JosephJoshua.TowerDefense; 

import JosephJoshua.TowerDefense.main.Tile; 

public class TileGrid { 
    public Tile[][] map; 

    public TileGrid() { 
     map = new Tile[20][15]; 
     for (int i = 0; 1 < map.length; i++) { 
      for (int j = 0; j < map[i].length; j++) { 
       map[i][j] = new Tile(i * 64, j * 64, 64, 64, TileType.Grass); 
      } 
     } 
    } 
    public void draw() { 
     for(int i = 0; 1 < map.length; i++) { 
      for(int j = 0; j < map[i].length; j++) { 
       map[i][j].draw(); 
      } 
     } 
    } 
} 
+2

'1 Jens

回答

1

嘗試改變

for (int i = 0; 1 < map.length; i++) 

for (int i = 0; i < map.length; i++) 

你一直在執行我在循環結束++所以最後你得到的索引超出數組範圍

+0

它劇照使我對線上的OBB異常18 –

+0

哦我將其改變爲(平鋪[]行:地圖){ \t \t \t爲(平鋪瓦片:行){ \t \t \t \t tile.draw(); \t \t \t} \t \t} –

+0

好點的Omrisk!我必須觀察這兩條線約三十秒才能發現它們之間的差異。 – halfer

相關問題