如何从 config.yml 加载 id 列表?

How to load id list from config.yml?

我需要写一张支票。它的本质是:应该 return true 或 false,如果玩家在配置的清单中有一个东西(只有他),则为 true 如果没有,则 return false。

所以这是您问题的解决方案:

@SuppressWarnings("deprecation")
public boolean hasInInv(Player p) {
    List<String> list = getConfig().getStringList("List");
    for(ItemStack i : p.getInventory().getContents()) {
        if(i != null) {
            boolean found = false;
            for(String st : list) {
                if(st.startsWith("" + i.getTypeId())) {
                    if(st.startsWith(i.getTypeId() + ":")) {
                        try {
                            byte data = Byte.parseByte(st.replaceFirst(i.getTypeId() + ":", ""));
                            if(data != i.getDurability()) {
                                continue;
                            } else {
                                found = true;
                                break;
                            }
                        } catch(Exception ex) {
                            System.out.println("Error in Config: " + st + " is not a valid Item");
                            return false;
                        }
                    }
                    found = true;
                    break;
                }
            }
            if(!found) {
                return false;
            }
        }
    }
    return true;
}

配置应如下所示:

List:
  - 1
  - 2
  - 3
  - 4
  - '17:3'
  - '17:1'