Вопрос Выводит пустое сообщение, вместо нормального.

Limon_MineDel

Разработчик
Пользователь
Сообщения
212
Решения
7
Пишу плагин и уже не могу разобраться с этим неделю. При написание команд в чат /mnt on и /mnt off в ответ пустое сообщение. Все пути до строки указаны верно. Не могу понять в чём дело. Помогите пожалуйста, заранее спасибо.
Вам необходимо зарегистрироваться для просмотра изображений-вложений

Java:
package ru.lymonmine.lsrvbungeecore.command;



import com.sun.org.apache.xerces.internal.xs.StringList;

import net.md_5.bungee.api.ChatColor;

import net.md_5.bungee.api.CommandSender;

import net.md_5.bungee.api.chat.TextComponent;

import net.md_5.bungee.api.plugin.Command;

import ru.lymonmine.lsrvbungeecore.database.SQLMaintenance;

import ru.lymonmine.lsrvbungeecore.main;

import ru.lymonmine.lsrvbungeecore.util.maintenanceUtil;



import java.util.*;



public class mntcmd extends Command {

    private static SQLMaintenance db;



    public mntcmd() {



        super("mnt");

    }



    @Override

    public void execute(CommandSender sender, String[] args) {



        List<String> cmds = new ArrayList<String>();

        cmds.add("add");

        cmds.add("remove");

        cmds.add("on");

        cmds.add("off");



        try {

            db = new SQLMaintenance();

        } catch (Exception e) {

            throw new RuntimeException(e);

        }



        if (sender.hasPermission("lsrvbungeecore.maintenance")) {

            if (args.length == 0 || !cmds.contains(args[0])) {

                for (String help_mess : main.instanse.config.getStringList("lang.maintenance.help")) {

                    help_mess = help_mess.replace("{plugin-prefix}",

                            main.instanse.config.getString("lang.prefix"));

                    help_mess = ChatColor.translateAlternateColorCodes('&', help_mess);

                    sender.sendMessage(new TextComponent(help_mess));

                }

            } else {

                if (args[0].equals("on")) {

                    String on_mess = main.instanse.config.getString("lang.maintenance.on");

                    on_mess = on_mess.replace("{plugin-prefix}", main.instanse.config.getString("lang.prefix"));

                    on_mess = ChatColor.translateAlternateColorCodes('&', on_mess);

                    sender.sendMessage(new TextComponent(on_mess));

                    db.saveEnable();

                }

                if (args[0].equals("off")) {

                    String off_mess = main.instanse.config.getString("lang.maintenance.off");

                    off_mess = off_mess.replace("{plugin-prefix}", main.instanse.config.getString("lang.prefix"));

                    off_mess = ChatColor.translateAlternateColorCodes('&', off_mess);

                    sender.sendMessage(new TextComponent(off_mess));

                    db.saveDisable();

                }

                if (args.length == 2 && args[0].equals("add")) {

                    sender.sendMessage(new TextComponent(maintenanceUtil.add(args)));

                } else if (args[0].equals("add")) {

                    String add_usage_mess = main.instanse.config.getString("lang.maintenance.usage-add");

                    add_usage_mess = ChatColor.translateAlternateColorCodes('&', add_usage_mess);

                    sender.sendMessage(new TextComponent(add_usage_mess));

                }

                if (args.length == 2 && args[0].equals("remove")) {

                    sender.sendMessage(new TextComponent(maintenanceUtil.remove(args)));

                } else if (args[0].equals("remove")) {

                    String remove_usage_mess = main.instanse.config.getString("lang.maintenance.usage-remove");

                    remove_usage_mess = ChatColor.translateAlternateColorCodes('&', remove_usage_mess);

                    sender.sendMessage(new TextComponent(remove_usage_mess));

                }

            }





        } else {

            sender.sendMessage(new TextComponent(ChatColor.translateAlternateColorCodes('&', main.instanse.config.getString("lang.noperm")

                    .replace("{plugin-prefix}", main.instanse.config.getString("lang.prefix")))));

        }



    }

}
Авто объединение сообщений:

UP
 
Последнее редактирование модератором:
Ты уверен в том, что конфиг возвращает тебе не пустую строку? Через логгер выведи off_mess.isEmpty().
Строка не пустая.
Вам необходимо зарегистрироваться для просмотра изображений-вложений
, но если я пытаюсь ёё вывести, то просто пустое сообщение.Хотя путь верный
Вам необходимо зарегистрироваться для просмотра изображений-вложений
 
В таком случае кидай более полную картину. Стоило бы скинуть главный класс и класс твоего конфига, если он существует.
Самое интересное, что это только с этими 2 строчками.
Код:
package ru.lymonmine.lsrvbungeecore;

import net.md_5.bungee.api.plugin.*;

import java.nio.file.*;

import net.md_5.bungee.config.*;
import ru.lymonmine.lsrvbungeecore.command.*;
import ru.lymonmine.lsrvbungeecore.listener.*;
import ru.lymonmine.lsrvbungeecore.util.maintenanceUtil;

import java.io.*;

public class main extends Plugin {
    public Configuration config;
    public File f;
    public static main instanse;


    public void onEnable() {
        //Конфиг
        getDataFolder().mkdirs();
        f = new File(getDataFolder(), "config.yml");
        if (!f.exists()) {
            try {
                Files.copy(this.getResourceAsStream("config.yml"), f.toPath(), new CopyOption[0]);
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
        try {
            config = ConfigurationProvider.getProvider(YamlConfiguration.class).load(f);
        } catch (IOException ex2) {
            ex2.printStackTrace();
        }
        //Конфиг

        instanse = this;
        try {
            maintenanceUtil.kickOnlinePlayers();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }

        //Команды, листенеры
        getProxy().getPluginManager().registerCommand(this, new pingcmd());
        getProxy().getPluginManager().registerCommand(this, new onlinecmd());
        getProxy().getPluginManager().registerCommand(this, new alertcmd());
        getProxy().getPluginManager().registerCommand(this, new servercmd());
        getProxy().getPluginManager().registerCommand(this, new findcmd());
        getProxy().getPluginManager().registerCommand(this, new msgcmd());
        getProxy().getPluginManager().registerCommand(this, new hubcmd());
        getProxy().getPluginManager().registerListener(this, new JLListener());
        getProxy().getPluginManager().registerListener(this, new motdListener());
        getProxy().getPluginManager().registerCommand(this, new mntcmd());
        //Команды, листенеры
    }
}
 
Вопрос не решён
Авто объединение сообщений:

Решено. Парсер Yaml воспронимал on и OFF, не так как надо. Сменил on и OFF на enabled и disabled
 
Последнее редактирование:
Назад
Сверху Снизу