Форматирование (BB-код):
[22:35:48 ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'mdt' in plugin mDonateText v1.0
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[patched_1.12.2.jar:git-Paper-1618]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:152) ~[patched_1.12.2.jar:git-Paper-1618]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:685) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.PlayerConnection.handleCommand(PlayerConnection.java:1492) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:1297) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:45) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:5) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:14) ~[patched_1.12.2.jar:git-Paper-1618]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:850) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:423) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:774) ~[patched_1.12.2.jar:git-Paper-1618]
at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:666) ~[patched_1.12.2.jar:git-Paper-1618]
at java.lang.Thread.run(Thread.java:831) [?:?]
Caused by: java.lang.IllegalArgumentException: bound must be positive
at java.util.Random.nextInt(Random.java:388) ~[?:?]
at ru.fucktmgc.mDonateText.Main.onCommand(Main.java:49) ~[?:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[patched_1.12.2.jar:git-Paper-1618]
... 15 more
Main.java
Java:
package ru.fucktmgc.mDonateText;
import com.google.common.base.Joiner;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import java.util.*;
public class Main extends JavaPlugin implements CommandExecutor {
public Main(){
}
private static Main instance;
private Random random;
public static Main getInstance() {
return instance;
}
public void onEnable() {
instance = this;
this.random = new Random();
getCommand("mdonatetext").setExecutor(this);
}
public void onDisable() {
}
@Override
public boolean onCommand(CommandSender sender, org.bukkit.command.Command cmd, String label, String[] args) {
FileConfiguration Config = Main.getInstance().getConfig();
if (!(sender instanceof Player)) {
sender.sendMessage(Objects.requireNonNull(Config.getString("messages.not-player")));
return true;
}
if (!sender.hasPermission("mDonateText.use")) {
sender.sendMessage(Objects.requireNonNull(Config.getString("messages.not-perm")));
return true;
}
if (args.length == 2) {
String name = args[0];
String donate = Joiner.on(" ").join(Arrays.copyOfRange(args, 1, args.length));
ArrayList<String> text = new ArrayList<>(Utils.getSection("text"));
List<String> list = Utils.getStringList("text." + text.get(this.random.nextInt(text.size())));
list.forEach((x) -> {
Bukkit.broadcastMessage(Utils.color(x.replace("{player}", name).replace("{text}", donate)));
});
}
return false;
}
}