如何在java中为minecraft 2d类游戏添加块数组

如何在java中为minecraft 2d类游戏添加块数组,java,swing,Java,Swing,我曾在视频中看到有人这样做,但从未理解如何制作块数组,而不是对每个块本身进行编码。请解释我如何制作块的行和列。我已经可以画了,但不能画多个。如果可以,请解释如何从我的块类中添加块层 为了制作一个块,我制作了一个块类,其中图像是一块污垢。然后它有一个方法返回一个名为getbounds的新矩形。我使用g2d.drawImage(block.getImage(),block.x,block.y,null);t画一个块,但我能为多个块做什么?以下未经测试的代码应该会有所帮助。您必须将“观察者”设置为适当

我曾在视频中看到有人这样做,但从未理解如何制作块数组,而不是对每个块本身进行编码。请解释我如何制作块的行和列。我已经可以画了,但不能画多个。如果可以,请解释如何从我的块类中添加块层

为了制作一个块,我制作了一个块类,其中图像是一块污垢。然后它有一个方法返回一个名为getbounds的新矩形。我使用g2d.drawImage(block.getImage(),block.x,block.y,null);t画一个块,但我能为多个块做什么?

以下未经测试的代码应该会有所帮助。您必须将“观察者”设置为适当的值。如果无法正确设置“观察者”,请尝试猜测图像的高度和宽度

ImageObserver observer = _appropriate_value_here_;
Image image = block.getImage();
int BLOCK_X_DIM = image.getHeight(observer);   // The height of a block
int BLOCK_Y_DIM = image.getWidth(observer);    // The width of a block
for(int i = 0; i < 5; i++) {
    for(int j = 0; j < 5; j++) {
        g2d.drawImage(image, BLOCK_X_DIM * i, BLOCK_Y_DIM * j, null);
    }
}
ImageObserver=\u适当的值\u此处\uu;
Image=block.getImage();
int BLOCK_X_DIM=image.getHeight(观察者);//块的高度
int BLOCK_Y_DIM=image.getWidth(观察者);//块的宽度
对于(int i=0;i<5;i++){
对于(int j=0;j<5;j++){
g2d.drawImage(图像,块X尺寸*i,块Y尺寸*j,空);
}
}

快乐编码

你能编辑一下你的问题,告诉我们你现在是如何画一个块的吗?通常,你要做的是把块的位置信息和在特定位置画一个块的逻辑分开。然后只需在块表中循环,并为每个块调用paintBlockAtThisLocation子例程。@chessofnerd i修复了question@keshlam谢谢,我会试试的,但你能举个例子吗。也许你会感兴趣。非常感谢,我喜欢结尾的快乐编码:D。我需要知道如何使用for循环,这太棒了!遗憾的是,我不知道。事实上,我自己从来没有用过。每次我遇到一个我没有遇到的新对象或类(这很常见),我都会尝试用谷歌搜索它并查找文档。如果你是编程新手,我真的建议你一直这样做!ImageObserver的文档位于。另请参见第页。如果你的图像是“BuffereImage”类型,那么观测者可能是空的。谢谢你的提示,还有更多