Помогите База данных в YAML

Sirfluffs

Новичок
Пользователь
Баллы
21
Имя в Minecraft
xSirfluffsXx
Здравствуйте! Как сделать базу данных только чтобы имена например записывались в конфиг (пример: users.yml) как в AAC. (/aacban)
 
чо за стёб один, как я должен понять если даже коментариев нету?

Все люди выше правы.
Тебе скинули ГОТОВЫЙ КОД, а ты все равно ничего не понимаешь.
Вывод тут один - не знаешь Java, иди учи
 
PHP:
@Override
public void onEnable() {
    CustomConfig cc = new CustomConfig(this, <название_конфига>, <находится_ли_конфиг_в_ресурсах>);
    FileConfiguration config = cc.getCfg();

    String example = config.getString("example");
}

// для перезагрузки сохранения конфига - <CustomConfig>.saveCfg();
// для перезагрузки перезагрузки конфига - <CustomConfig>.reloadCfg();

<название_конфига> - названия файла конфигурации, которое будет указано в папке плагина (String);
<находится_ли_конфиг_в_ресурсах> - является ли файл ресурсом. Т.е., если этот конфиг лежит у тебя в сурцах, и будет находится в плагине по-дефлоту - ставь true (boolean).
 
PHP:
@Override
public void onEnable() {
    CustomConfig cc = new CustomConfig(this, <название_конфига>, <находится_ли_конфиг_в_ресурсах>);
    FileConfiguration config = cc.getCfg();

    String example = config.getString("example");
}

// для перезагрузки сохранения конфига - <CustomConfig>.saveCfg();
// для перезагрузки перезагрузки конфига - <CustomConfig>.reloadCfg();

<название_конфига> - названия файла конфигурации, которое будет указано в папке плагина (String);
<находится_ли_конфиг_в_ресурсах> - является ли файл ресурсом. Т.е., если этот конфиг лежит у тебя в сурцах, и будет находится в плагине по-дефлоту - ставь true (boolean).
100% он и так не поймет. Смысл объяснять чайнику?
 
PHP:
@Override
public void onEnable() {
    CustomConfig cc = new CustomConfig(this, <название_конфига>, <находится_ли_конфиг_в_ресурсах>);
    FileConfiguration config = cc.getCfg();

    String example = config.getString("example");
}

// для перезагрузки сохранения конфига - <CustomConfig>.saveCfg();
// для перезагрузки перезагрузки конфига - <CustomConfig>.reloadCfg();

<название_конфига> - названия файла конфигурации, которое будет указано в папке плагина (String);
<находится_ли_конфиг_в_ресурсах> - является ли файл ресурсом. Т.е., если этот конфиг лежит у тебя в сурцах, и будет находится в плагине по-дефлоту - ставь true (boolean).
Я знаю это, мне надо записать в конфиг ник игрока, чтобы его не впустило в случае бана!
 
Я знаю это, мне надо записать в конфиг ник игрока, чтобы его не впустило в случае бана!
Ну берешь, записываешь с списочек туда ник, а при входе проверяешь наличие ника игрока в этом списочке. Если есть, то соответственно, кик.
 
Ну берешь, записываешь с списочек туда ник, а при входе проверяешь наличие ника игрока в этом списочке. Если есть, то соответственно, кик.
Команда:
PHP:
        if(cmd.getName().equals("ban"))
        {
            FileConfiguration cfg = YamlConfiguration.loadConfiguration(new File(getDataFolder() + File.separator + "users.yml"));
            if(sender.hasPermission("test.ban"))
            {
                if(args.length != 0)
                {
                    StringBuilder msg = new StringBuilder();
                   for (int i = 1; i < args.length; i++) {
                       msg.append(args[i].replace("&", "§") + " ");
                   }
                    Player ban = Bukkit.getPlayer(args[0]);
                    if(args[1] != null)
                    {
                        ban.kickPlayer("§f[§cBans§f] Вы были забанены!\nБан прилетел от: " + sender.getName() + "\nС причиной: " + msg);
                        cfg.set("Bans." + ban.getName() + ".admin" + sender.getName() + ".reason" + msg, (Object) null);
                        Bukkit.broadcastMessage("§c" + sender.getName().replace("Console", "Анти-чит") + "§f > Игрок §c" + ban.getName() + " §fбыл забанен с причиной: " + msg);
                        Bukkit.dispatchCommand(getServer().getConsoleSender(), "minecraft:ban " + args[0] + " " + msg);
                        try {
                            cfg.save(new File(getDataFolder() + File.separator + "users.yml"));
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    } else {
                        ban.kickPlayer("§f[§cBans§f] Вы были забанены!\nБан прилетел от: " + sender.getName() + "\nС причиной: &cНеуказана".replace("&", "§"));
                        cfg.set("Bans." + ban.getName() + ".admin" + sender.getName() + ".reason" + "§cНеуказана", (Object) null);
                        Bukkit.dispatchCommand(getServer().getConsoleSender(), "minecraft:ban " + args[0] + " §cНеуказана");
                        Bukkit.broadcastMessage("§c" + sender.getName() + "§f > Игрок §c" + ban.getName() + " §fбыл забанен с причиной: &cНеуказана".replace("&", "§"));
                        try {
                            cfg.save(new File(getDataFolder() + File.separator + "users.yml"));
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    }
                } else {
                    sender.sendMessage("§f[§cBans§f] Используйте /ban <ник> <причина>");
                }
            } else {
                sender.sendMessage("§f[§cBans§f] У вас нет прав!");
            }
        }
Event:
PHP:
    @EventHandler
    public void onLogin(PlayerLoginEvent e)
    {
        FileConfiguration cfg = YamlConfiguration.loadConfiguration(new File(getDataFolder() + File.separator + "users.yml"));
        Player p = e.getPlayer();
        /*if(cfg.getConfigurationSection("Bans." + p.getName()) != null)
        {
            String admin = getConfig().getString("Bans." + p.getName() + ".admin");
            String admin2 = "Bans." + p.getName() + ".admin";
            String reason = getConfig().getString(admin2 + admin + ".reason");
            e.setKickMessage("§f[§cBans§f] Вы были забанены!\nБан прилетел от: " + admin + "\nС причиной: " + reason.replace("Console", "Анти-чит"));
        }*/
        if(p.isBanned())
        {
            String admin = cfg.getString("Bans." + p.getName() + ".admin");
            String admin2 = "Bans." + p.getName() + ".admin";
            String reason = cfg.getString(admin2 + admin + ".reason");
            //e.setKickMessage("§f[§cBans§f] \nВы были забанены! \n §7Если вы думаете что это ложны бан, сообщите в тех.поддержку!");
            e.setKickMessage("§f[§cBans§f] \nВы были забанены!\n Админом: §c" + admin + "\n §fПричина: " + reason + "\n§fЕсли вы думаете что бан ложный сообщите сюда: \n §7vk.com/test");
        }
    }
не робит, в причине и ник админа пишет NULL
 
Вот лови.

PHP:
        //TODO кастомный конфиг.
        CustomConfig cfg = new CustomConfig(plugin, "users", false);
        //TODO мапа игроков.
        Map<String, String> users = new HashMap<String, String>();
        //TODO читаем записи из конфига и пишем в мап.
        if (cfg.getCfg().get("Ban") != null) {
            MemorySection section = (MemorySection) cfg.getCfg().get("Ban");
            for (String value : section.getKeys(false)) {
                users.put(value, (String) section.get(value));
            }
        }
        //TODO запись игрока в мап.
        users.put("player", "Ban hamer!");
        //TODO получение игрока из мап.
        users.get("player");
        //TODO запись мапы в конфиг.
        cfg.getCfg().set("Ban", users);
        //TODO запись конфига на диск.
        cfg.saveCfg();
 
Последнее редактирование:
Вот лови.

PHP:
        //TODO кастомный конфиг.
        CustomConfig cfg = new CustomConfig(null, "users", false);
        //TODO мапа игроков.
        Map<String, String> users = new HashMap<String, String>();
        //TODO читаем записи из конфига и пишем в мап.
        if (cfg.getCfg().get("Ban") != null) {
            MemorySection section = (MemorySection) cfg.getCfg().get("Ban");
            for (String value : section.getKeys(false)) {
                users.put(value, (String) section.get(value));
            }
        }
        //TODO запись игрока в мап.
        users.put("player", "Ban hamer!");
        //TODO получение игрока из мап.
        users.get("player");
        //TODO запись мапы в конфиг.
        cfg.getCfg().set("Ban", users);
        //TODO запись конфига на диск.
        cfg.saveCfg();
вместо player ник игрока да?
 
Назад
Верх