所以,我正在用java制作游戏,我已经完成了基础工作,现在我正在使用GUI。我想做的是创建一个包含所有arraylists的GUI类。然后我想为所有不同类型的GUI,GUIbox,GUIstats等创建一个新类。我把它放到代码中真的很麻烦,到目前为止我所有的代码都是下面的代码:
GUI类:
public class GUI {
ArrayList<GUIbox> guiBoxes = new ArrayList<GUIbox>();
public GUI() { }
public GUIbox getBoxByID(int id) {
for(int i=0; i<guiBoxes.size(); i++) {
if(guiBoxes.get(i).getId() == id) {
return guiBoxes.get(i);
}
}
return null;
}
}
GUI框类(32 x 32大小的框需要x和y,id和框内项目的id):
public class GUIbox {
protected float x, y;
protected int itemID;
private int id;
public GUIbox(int id, float x, float y, int itemID) {
this.id = id;
this.x = x;
this.y = y;
this.itemID = itemID;
}
public float getX() {
return x;
}
public float getY() {
return y;
}
public int getId() {
return id;
}
}
那么,最有效的方法是什么?最后,我想要做的就是启动框GUIbox box1 = new GUIbox(boxId,x,y,itemID)。我希望能够使用changeContents(boxID,itemID)更改框中的内容。甚至可能是一种方法来查看itemID在哪个框中。
感谢任何帮助,谢谢。 :)