Я бы не стал использовать конфиг для проверки, это неудобно. Конфиг - только для сохранения.
Можно создать Set<Block> blocks = new HashSet<Block>();
Здесь "хранятся" блоки, которые нужны.
Проверка входит ли в этот Set блои b тогда будет осущствляться так:
if (blocks.contains(b)) {......}
(я правда создал бы отдельный класс объединяющий координаты и название мира и использовал бы его вместо Block)
в него записываешь блоки.
Set соответственно сохраняешь файл или в конфиг. Set не очень удобно сохранять в конфиг, конфигу нужен уникальный ключ для записи. Но с точки зрения удобства работы - все преимущества на стороне конфига.
Поэтому можно сохранять, допустим так:
Код:
public void saveBlocks(){
try {
File f = new File (plg.getDataFolder()+File.separator+"имя файла.yml");
if (f.exists()) f.delete();
if (blocks.size()>0){
f.createNewFile();
YamlConfiguration cfg = new YamlConfiguration();
int num = 1;
for (Block b : blocks){
i++;
COPhoto ph = album.get(id);
cfg.set("detector.f"+Integer.toString(i)+".world", b.getWorld().name());
cfg.set("detector.f"+Integer.toString(i)+".x", b.getX());
cfg.set("detector.f"+Integer.toString(i)+".y", b.getY);
cfg.set("detector.f"+Integer.toString(i)+".z", b.getZ());
}
}
} catch (Exception e){
e.printStackTrace();
}
}
Ну и читаем обратно:
Код:
public void loadBlocks(){
try {
File f = new File (plg.getDataFolder()+File.separator+"имя файла.yml");
if (f.exists()){
blocks.clear();
YamlConfiguration cfg = new YamlConfiguration();
cfg.load(f);
for (String str_id : cfg.getKeys(true)){
if (str_id.matches("detector.f[0-9]*")) {
World w = Bukkit.getServer().getWorld(cfg.getString(str_id+".world"));
if (w == null) continue;
int x = cfg.getInt(str_id+".x");
int y = cfg.getInt(str_id+".y");
int z = cfg.getInt(str_id+".z");
Block b = w.getBlockAt(x, y, z);
blocks.put (b);
}
}
}
} catch (Exception e){
}
}
P.S. Код писал прямо тут, потому наверняка где-то что-то не так.
Ну и если нужен стандартный конфиг плагина, то убирай везде cfg и меняй на getConfig()