所以我做了一個盤點像這樣的回答: Android game rpg inventory systemJava:如何顯示我的HashTable清單?
我的問題是什麼的最佳途徑,以顯示在屏幕上的GUI。如果它有助於使用Slick2D添加即時消息。
所以我做了一個盤點像這樣的回答: Android game rpg inventory systemJava:如何顯示我的HashTable清單?
我的問題是什麼的最佳途徑,以顯示在屏幕上的GUI。如果它有助於使用Slick2D添加即時消息。
我想這就是你的意思,在評論中。
要向Map
中的一個鍵添加「多個」值,那麼基本上只需創建自己的class Something
即可存儲所需的所有值,對象等。
這很粗略。雖然首先你會在我們的案例class Item
中創建class Something
,就像我在評論中所說的那樣。
public class Item
{
public static enum ItemType { FOOD, WEAPON, TOOL, ARMOR; }
public ItemType type;
public int weight;
public Item() {
}
public Item(ItemType type, int weight) {
this.type = type;
this.weight = weight;
}
}
然後,當你想創建和項目添加到您的Map
你會做以下後。當然,Map
關鍵是Integer
,因爲它將成爲庫存指數,這正是我所得到的感受。
HashMap<Integer, Item> inventory = new HashMap<Integer, Item>();
Item i1 = new Item(ItemType.FOOD, 10);
Item i2 = new Item(ItemType.WEAPON, 20);
inventory.put(0, i1);
inventory.put(1, i2);
如果你不希望/你需要一個動態的庫存,然後而是採用了Map
你可以只使用class Item
的數組。
Item[] inventory = new Item[10];
其中10是庫存中物料的最大數量。
根本沒有任何「最好」的方式。顯示和創建GUI取決於各種事情。喜歡它是一款遊戲還是?哪種遊戲,UI元素的數量等等。 – Vallentin
@Vallentin我在做一個沙箱/ RPG遊戲你建議什麼樣的庫存?或者最好的辦法做1?另外我希望它有50個插槽 – JeremiasK
就像我說的,沒有任何「最好」的方式。這是一個品味問題。創建圖形用戶界面(GUI)的樣子,如果你製作了一個用戶界面而你不喜歡它,那就改變它。然後當你喜歡它時,保留它。 – Vallentin