我正在用Java構建一個RPG地牢遊戲,並且我一直在創建一個數據結構。什麼是一個好的Java數據結構來存儲RPG遊戲物品?
我有很多事物可以複製到地牢裏。例如,有面包Thing物體,劍Thing物體,連鎖郵件Thing物體,怪物Thing(s)等。我想將它們存儲在中央圖書館,然後能夠使用某些查詢。我想用下面的字段來存儲他們:
int minLevel
int maxLevel
double probability
int[] types
所以生了鏽的劍將有1 minLevel
,稀有性(3%),以及[type.SWORD,type.WEAPON,type.ITEM,TYPE.EQUIP]
的3 maxLevel
,一個probability
。更好的劍會有minLevel
2,maxLevel
10,稀有(1%)。
然後我想從庫中檢索一個隨機type.SWORD
並說我在3級。根據他們的概率,我應該比更好的劍更頻繁地生鏽的劍。如果我從請求10級的圖書館中檢索到type.SWORD
,我只能找回更好的劍。
我希望這是有道理的。
編輯 在初始階段,所有的基本對象都將被創建。像可用的武器,盔甲,食品,藥水,魔杖,所有可能的東西,在遊戲中都有獨特的圖形拼圖。然後,當我想在某個地方放置一個物體時,我只是製作一件可用物品的副本,稍微調整一下它的統計數據,然後在世界上放下它。實際物品都是根類物品的所有子類,例如類生物,物品,裝備(延伸物品),武器(延伸裝備),裝甲(延長裝備),食物(延伸物品)等。但是我想標記他們在庫數據庫中不同,我想使用額外的標籤,如type.RARE,type.ARTIFACT,type.CURSED,所以我想要額外的標籤,除了類。
遊戲使用LIBGDX可在Android和Applet上使用。我使用免費的Rltile套裝,它有成千上萬的優質瓷磚。我將使用Pubnub或Google App Engine提供多人遊戲支持。
的ArrayList - http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html – Coffee 2012-04-01 01:09:30
將你的世界有一個數據庫在創作時出現的固定物品?或者當物體被需要時從空中創建物體? – sarnold 2012-04-01 01:12:42
所以每個東西都有一組嵌套類型?即劍,武器,物品,裝備? – 2012-04-01 02:19:04