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

Помогите Работа с конфигом.

Тема в разделе "Разработка плагинов для новичков", создана пользователем Mr_RoboMan, 20 фев 2015.

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

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    Учусь писать плагины, захотел поработать с конфигом, сам смог сделать лишь такое:
    Код:
        protected FileConfiguration config;
    
    @Override
        public void onEnable()
        {
            getServer().getPluginManager().registerEvents(this, this);
            config = getConfig();
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Успешно включен."));
            this.getConfig().set("your boolean property", true);
            this.getConfig().set("your string property", "yes");
            this.getConfig().set("your int property", 22);
        }
    
    Что неправильное в моем коде? И где можно почитать про работу с конфигами на русском?
     
  2. Хостинг MineCraft
    <
  3. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    1. Зачем делать переменную из getConfig(), а потом продолжать использовать его же?
    2. Нет saveConfig().
     
  4. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    1. Не знаю!) Но думаю это не мешает...
    2. Переписал код:
    Код:
        @Override
        public void onEnable()
        {
            getServer().getPluginManager().registerEvents(this, this);
            config = getConfig();
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Успешно включен."));
        }
    
    Код:
        @EventHandler
        public void onLastBlockPlaced(PlayerJoinEvent pje, BlockPlaceEvent bpe)
        {
            pje.getPlayer().sendMessage(String.valueOf(config.getInt("LastBlockPlaced")));
            config.set("LastBlockPlaced", bpe.getBlock().getTypeId());
        }
    
    Код:
        protected FileConfiguration config;
    
    [DOUBLEPOST=1424443160,1424443081][/DOUBLEPOST]Я делал по этому уроку: :D
     
  5. TheBlacK.Z

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

    Баллы:
    78
    Конфиг и немного фейлов.[DOUBLEPOST=1424443308,1424443277][/DOUBLEPOST]Тебе сюда
     
  6. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    В Английском не шарю, а просто смотреть на код как баран и пытаться что-то понять - не мое(
     
  7. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    saveConfig() всё ещё нет.
     
  8. Plasticable

    Plasticable Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    plasticable
    Имя в Minecraft:
    Plasticable
    Учись, пригодится. Особенно в программировании.
     
  9. ql_Nik_lp

    ql_Nik_lp Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    > Занимается программированием...
     
  10. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    Забыл приложить этот метод xD
    Код:
        @Override
        public void onDisable()
        {
            saveConfig();
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Был выключен."));
        }
    
    [DOUBLEPOST=1424445430,1424445396][/DOUBLEPOST]
    Пытаюсь, но там АчиньМногаБукаф чтоб я мог там то-то прочитать!)[DOUBLEPOST=1424445626][/DOUBLEPOST]Я не понимаю что я делаю не так... Вот весь код плагина:
    Код:
    package com.roboman.plugins;
    
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    import org.bukkit.configuration.file.FileConfiguration;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.BlockPlaceEvent;
    import org.bukkit.event.player.PlayerJoinEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    import ru.tehkode.permissions.bukkit.PermissionsEx;
    
    public class Solution extends JavaPlugin implements Listener
    {
    
        protected FileConfiguration config;
    
        @EventHandler
        public void onLastBlockPlaced(PlayerJoinEvent pje, BlockPlaceEvent bpe)
        {
            pje.getPlayer().sendMessage(String.valueOf(config.getInt("LastBlockPlaced")));
            config.set("LastBlockPlaced", bpe.getBlock().getTypeId());
        }
    
        @Override
        public void onLoad()
        {
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Был загружен."));
        }
    
        @Override
        public void onEnable()
        {
            getServer().getPluginManager().registerEvents(this, this);
            config = getConfig();
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Успешно включен."));
        }
    
        @Override
        public void onDisable()
        {
            saveConfig();
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Был выключен."));
        }
    }
     
  11. Plasticable

    Plasticable Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    plasticable
    Имя в Minecraft:
    Plasticable
    26 всего
     
  12. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Выключи плагин и всё запишется в файл(основываясь на коде)
     
  13. TheBlacK.Z

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

    Баллы:
    78
    бывайт
     
  14. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    Теперь понял :D
     
  15. ql_Nik_lp

    ql_Nik_lp Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Палкой в глаз тык. тык. тык.
     
  16. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    А теперь что не так?
    Код:
    package com.roboman.plugins;
    
    import net.minecraft.server.v1_7_R1.Block;
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    import org.bukkit.configuration.file.FileConfiguration;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.BlockPlaceEvent;
    import org.bukkit.event.player.PlayerJoinEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    import ru.tehkode.permissions.bukkit.PermissionsEx;
    
    public class Solution extends JavaPlugin implements Listener
    {
    
        protected FileConfiguration config;
    
        @EventHandler
        public void onLastBlockPlaced(PlayerJoinEvent pje, BlockPlaceEvent bpe)
        {
            pje.getPlayer().sendMessage(String.valueOf(config.getInt("LastBlockPlaced")));
            config.set("LastBlockPlaced", bpe.getBlock().getTypeId());
            saveConfig();
        }
    
        @EventHandler
        public void OnDiamondBlockPlaced(BlockPlaceEvent bpe) //Не обращайте внимания!))..
        {
            if (bpe.getBlock().getTypeId() == 57) { }
        }
    
        @Override
        public void onLoad()
        {
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Был загружен."));
        }
    
        @Override
        public void onEnable()
        {
            getServer().getPluginManager().registerEvents(this, this);
            config = getConfig();
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Успешно включен."));
        }
    
        @Override
        public void onDisable()
        {
            saveConfig();
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&9&l[Plugin]&a Был выключен."));
        }
    }
    [DOUBLEPOST=1424454174,1424454132][/DOUBLEPOST]
    ??...
     
  17. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    То, что вы нигде не получаете конфиг. А ещё вы каждый раз сохраняете конфиг, и при выключении тоже.
     
  18. ql_Nik_lp

    ql_Nik_lp Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Что это за ужас?
    Зачем считывание альтернейт кодов если можно ChatColor.RED или в крайнем случае сразу поставить § ???
     
  19. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    config = getConfig() или не то?... Ну а как правильно то?
    А как сделать и красный и толстый?!! ChatColor.RED + ChatColor.BOLD + ""; не пашет
     
  20. TheBlacK.Z

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

    Баллы:
    78
    Сделай хотя бы так:
    Код:
        public static String colorMSG(String format){
            return ChatColor.translateAlternateColorCodes('&', format);
            }
    
    Код:
       Bukkit.broadcastMessage(colorMSG('&',"&9&l[Plugin]&a Был загружен."));
    
     
  21. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    А зачем жизнь сложнять?
     
Статус темы:
Закрыта.

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