Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Несколько конфигов в плагине

Тема в разделе "Разработка плагинов для новичков", создана пользователем Merkelris, 7 июл 2017.

Статус темы:
Закрыта.
  1. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    У меня есть главный конфиг файл,но мне ещё надо к примеру конфиг в котором будут координаты
    Как реализовать конфиг?​
     
  2. Хостинг MineCraft
    <
  3. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
  4. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    А можно в одном классе сделать побольше так конфигов?Или для каждого новый класс?
     
  5. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
  6. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    Извините что такой тугодум как-куда писать название файла?
     
  7. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Просто название.
     
  8. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    Не доганяю поменять можно?
     
  9. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Поменять что?
     
  10. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    Название файла
     
  11. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    name это название.
     
  12. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    А ок.А потом как мне можно сделать новый файл?
     
  13. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Через add создает и лоадит если нет, лоадит если есть.
     
  14. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    Ага понял и вроде последнее как мне сделать чтоб я мог взаимодействовать с файлом в другом классе к примеру при команде /home в файл заносились координаты ?
     
  15. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    CustomConfig cfg = configs.get("name");
    cfg.getCfg() Дальше работаем как с обычным конфигом.
    cfg.saveCfg() и cfg.reloadCfg() думаю понятно по названию
     
  16. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    Тут проблемка
    ConfigManager cfg = configs.get("location");
    configs подчёркнуто красным
    Код:
    package com.denik.utils;
    
    import org.bukkit.Bukkit;
    import org.bukkit.Location;
    import org.bukkit.configuration.file.FileConfiguration;
    
    import com.denik.impossible.MainClass;
    
    public class Uhome {
    
        private MainClass plugin;
        FileConfiguration location;
    
        ConfigManager cfg = configs.get("location");
    
        public void locToWaHo(String name, Location loc) {
            location.set("locations." + name + ".world", loc.getWorld().getName());
            location.set("locations." + name + ".x", loc.getX());
            location.set("locations." + name + ".y", loc.getY());
            location.set("locations." + name + ".z", loc.getZ());
            plugin.saveConfig();
        }
        public Location locationToLoc(String name) {
             Location loc = new Location(Bukkit.getWorld(this.location.getString("locations." + name + ".world")),
                     location.getDouble("locations." + name + ".x"),
                     location.getDouble("locations." + name + ".y"),
                     location.getDouble("locations." + name + ".z"));
            return loc;
        }
          
    }
    Предлагает сделать так
    private MemorySection configs;

    ConfigManager cfg = (ConfigManager) configs.get("location");
     
  17. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Configs configs = new Configs(); Не умеешь работать в ооп?
     
  18. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    private Map<String, ConfigManager> sfg = new HashMap<String, ConfigManager>();
    Здесь я могу только сделать название класса либо выдаёт ошибку
    Код:
    ackage com.denik.utils;
    
    import java.util.HashMap;
    import java.util.Map;
    
    import org.bukkit.event.Listener;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class ConfigManager implements Listener{
       
    
        private Map<String, ConfigManager> sfg = new HashMap<String, ConfigManager>();
    
        public ConfigManager(JavaPlugin pligin, String name) {
           
        }
    
        public ConfigManager get(String name) {
            return sfg.get(name);
        }
    
        public Map<String, ConfigManager> getConfigs() {
            return sfg;
        }
    
        public void add(JavaPlugin pligin, String location) {
            ConfigManager custom = new ConfigManager(pligin, location);
            sfg.put(location, custom);
        }
       
       
    }
    [DOUBLEPOST=1499431753,1499431722][/DOUBLEPOST]Ой понял ошибку
     
  19. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Писец ...
    [​IMG]
     
  20. Автор темы
    Merkelris

    Merkelris Ньюби Пользователь

    Баллы:
    1
    Вот не надо
    С ООП нет недавно начал учить Java
     
  21. hyndorik

    hyndorik Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    hyndo
    Слишком тяжелый случай, когда тебе все буквально разжевали...
     
Статус темы:
Закрыта.

Поделиться этой страницей