猿问

如何获取字符串内的字符串(yaml)

我正在制作一个我的世界插件,我想在字符串(棍子/钻石)中获取字符串,我该怎么做


这是一个minecraft插件YAML


item:

  stick:

    name: Stick

    lore: just a stick

    amount: 5

    percent: 100

  diamond:

    name: Shiny Diamond

    lore: Shiny Shiny

    amount: 1

    percent: 50

这是我的java代码


Random r = new Random();

int result = r.nextInt(getConfig().getStringList("item").size());


String titem = getConfig().getStringList("item").get(result);


Material itemm = Material.getMaterial(titem);

int amount = getConfig().getInt(titem + ".amount");


if (rand.nextInt(100) < getConfig().getInt(titem + ".percent")) {


    ItemStack item = new ItemStack(itemm, amount);

    SkullMeta pm = (SkullMeta) item.getItemMeta();

    item.setItemMeta(pm);


    monster.getWorld().dropItem(e.getEntity().getLocation(), item);

}

除了这个错误之外,它什么也没做:


在 cc.gorjoe.spigot.mobDie.Main.onEntityDeath(Main.java:50) ~[?:?]


第50行对应的行String titem = getConfig().getStringList("item").get(result);


蛊毒传说
浏览 134回答 1
1回答

温温酱

好的,问题解决了,只需通过一个简单的 for 循环即可完成ArrayList<String> ran = new ArrayList<String>();for (String x : getConfig().getConfigurationSection("item").getKeys(false)) {&nbsp; &nbsp; System.out.println(x + " oo");&nbsp; &nbsp; ran.add(x);}
随时随地看视频慕课网APP

相关分类

Java
我要回答