我一直在研究暗黑破坏神2是如何动态生成战利品的,我认为创建一个有趣的应用程序会使用这个系统随机生成物品会很有趣。
我目前有我认为应该读取整个 txt 文件的代码,但它没有被解析。
看起来像:
private void itemGenerator() {
int ch;
StringBuffer strContent = new StringBuffer("");
InputStream fs = getResources().openRawResource(R.raw.treasureclass);
// read file until end and put into strContent
try {
while((ch = fs.read()) != -1){
strContent.append((char)ch);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
文本文件中的示例如下所示:
Treasure Class Item1 Item2 Item3
tc:armo3 Quilted_Armor Buckler Leather_Armor
tc:armo60a Embossed_Plate Sun_Spirit Fury_Visor
tc:armo60b Sacred_Rondache Mage_Plate Diadem
所以我现在想的是把每一行放入一个StringTokenizer
由 \n 分隔的数组中以获得每一行。然后以某种方式再次为数组中的每个项目使用制表符分隔并将其放入二维数组中?
我还没有对其进行编码,因为我认为有一种更好的方法可以实现我无法找到的,并且希望对此事有一些有用的意见。
对于任何真正有兴趣了解项目生成如何工作的人,他们的 wiki 页面http://diablo2.diablowiki.net/Item_Generation_Tutorial非常深入!