我正在尝试制作一个需要你放置块的游戏,类似于 Minecraft。但是,我在尝试制作一个多维数组来存储放置的块的 x 和 y 坐标时遇到了一些麻烦。代码如下;
public Block[][] blocks = new Block[maxBlockX][maxBlockY];
它给了我一个空指针异常。例外情况如下;
Exception in thread "main" java.lang.NullPointerException
at net.lojana.src.World.loadWorldAsReg(World.java:16)
at net.lojana.client.SpriteCraft.display(SpriteCraft.java:45)
at Run.main(Run.java:5)
它loadWorldAsReg()
在我的 World 类中引用了以下方法。方法在这里。
public void loadWorldAsReg() {
for (int x = 0; x < maxBlockX; x += 20) {
for (int y = 0; y < maxBlockY; y += 20) {
blocks[x][y].draw();
}
}
}
它还引用了以下方法。
public void draw() {
getTexture().bind();
shapes.drawSquare(new Point(x, y), new Point(x + 20, y + 20));
}
有谁知道如何解决这个特殊的错误?非常感激!