2016-02-06 6 views
-2

Ive всегда задавался вопросом, существует ли гораздо более простой способ создания пользовательского конфигурационного или пользовательского файла YAML с помощью Spigot/Bukkit api, пожалуйста, ответьте мне, но скажите, есть ли более простой и простой способ для этого: D thanksКак создать пользовательскую конфигурацию в Spigot

+0

Посмотрите на форумы Bukkit/spigot, есть много людей, которые спрашивают об этом и даже больше ответов. Короче говоря, для создания конфигурации cusom вам нужно будет использовать API-интерфейс YAMLConfiguration, входящий в состав Bukkit, и, кроме того, для разбора чистого текстового файла в файл YAML, тогда вы можете редактировать/добавлять/удалять значения по своему усмотрению, а затем сохранять их на файл. Все, что делает создание файла, осуществляется через YAML apit. –

+0

Np: -) Не стесняйтесь спросить, есть ли у вас какие-либо другие вопросы. Также рассмотрите утверждение ответа, наиболее подходящего для этой темы из раздела «ответы». –

+0

@Hydrox Добро пожаловать в StackOverflow. Не редактируйте свой заголовок, чтобы заявить, что он ответил, установите флажок под ответом, который ответил на ваш вопрос. – Ferrybig

ответ

1

Если я правильно понимаю вас, вы хотите создать файл конфигурации Yaml со своими собственными вещами. Это очень просто.

saveDefaultConfig(); и просто иметь config.yml в своем проекте с тем, что вы хотите в нем (до тех пор, пока синтаксис по-прежнему верен), и он сохранит и загрузит этот файл Yaml.

+0

Нет, я не думал об этом, как создать пользовательский фактический файл YAML в java с библиотекой bukkit/spigot, которую я могу использовать в качестве конфигурации. – Hydrox

+0

. Это делает конфигурацию, но если вы хотите, чтобы другой файл Ямля просматривался в классе FileConfiguration. – bwfcwalshy

0

Я использую это в моей основной класс:

 File locations = new File("plugins/GlobalSystem", "locations.yml"); 
     if (!locations.exists()) { 
      try { 
       locations.createNewFile(); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
      FileConfiguration loc = YamlConfiguration.loadConfiguration(locations); 
      loc.set("spawn.Welt", "Welt"); 
      loc.set("spawn.X", 0); 
      loc.set("spawn.Y", 100); 
      loc.set("spawn.Z", 0); 
      loc.set("spawn.Yaw", 0); 
      loc.set("spawn.Pitch", 0); 
      loc.set("reallife.Welt", "Welt"); 
      loc.set("reallife.X", 0); 
      loc.set("reallife.Y", 100); 
      loc.set("reallife.Z", 0); 
      loc.set("reallife.Yaw", 0); 
      loc.set("reallife.Pitch", 0); 
      loc.set("acidisland.Welt", "Welt"); 
      loc.set("acidisland.X", 0); 
      loc.set("acidisland.Y", 100); 
      loc.set("acidisland.Z", 0); 
      loc.set("acidisland.Yaw", 0); 
      loc.set("acidisland.Pitch", 0); 
      loc.set("skypvp.Welt", "Welt"); 
      loc.set("skypvp.X", 0); 
      loc.set("skypvp.Y", 100); 
      loc.set("skypvp.Z", 0); 
      loc.set("skypvp.Yaw", 0); 
      loc.set("skypvp.Pitch", 0); 
      loc.set("spiele.Welt", "Welt"); 
      loc.set("spiele.X", 0); 
      loc.set("spiele.Y", 100); 
      loc.set("spiele.Z", 0); 
      loc.set("spiele.Yaw", 0); 
      loc.set("spiele.Pitch", 0); 
      loc.set("silenthub.Welt", "Welt"); 
      loc.set("silenthub.X", 0); 
      loc.set("silenthub.Y", 100); 
      loc.set("silenthub.Z", 0); 
      loc.set("silenthub.Yaw", 0); 
      loc.set("silenthub.Pitch", 0); 
      try { 
       loc.save(locations); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
     } 

Если вы теперь хотите, чтобы прочитать что-то можно использовать, например, так:

FileConfiguration cfg = YamlConfiguration.loadConfiguration(new File("plugins/GlobalSystem", "locations.yml")); 
    Location loc = new Location(Bukkit.getWorld(cfg.getString("spawn.Welt")), cfg.getDouble("spawn.X"), cfg.getDouble("spawn.Y"), cfg.getDouble("spawn.Z")); 
    loc.setYaw((float) cfg.getDouble("spawn.Yaw")); 
    loc.setPitch((float) cfg.getDouble("spawn.Pitch")); 

писать в файл:

File file = new File("plugins/GlobalSystem", "locations.yml"); 
    FileConfiguration cfg = YamlConfiguration.loadConfiguration(file); 
    Location loc = Player.getLocation(); 
    cfg.set("spawn.Welt", loc.getWorld().getName()); 
    cfg.set("spawn.X", loc.getX()); 
    cfg.set("spawn.Y", loc.getY()); 
    cfg.set("spawn.Z", loc.getZ()); 
    cfg.set("spawn.Yaw", (double) loc.getYaw()); 
    cfg.set("spawn.Pitch", (double) loc.getYaw()); 
    try { 
     cfg.save(file); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

Надеюсь, это поможет вам и извините за мой плохой английский;)

Смежные вопросы