Pomoże ktoś?
Konsola:
[10:36:21 ERROR]: Could not pass event PlayerJoinEvent to HypixelPunishment v1.0
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) ~[server.jar:git-Bukkit-45c8386]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-Bukkit-45c8386]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:499) [server.jar:git-Bukkit-45c8386]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:484) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.PlayerList.onPlayerJoin(PlayerList.java:330) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.PlayerList.a(PlayerList.java:151) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.LoginListener.b(LoginListener.java:131) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.LoginListener.e(LoginListener.java:57) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.NetworkManager.a(NetworkManager.java:224) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.ServerConnection.c(SourceFile:187) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:768) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:371) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:651) [server.jar:git-Bukkit-45c8386]
at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:555) [server.jar:git-Bukkit-45c8386]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_202]
Caused by: java.lang.IllegalArgumentException: Cannot set to an empty path
at org.apache.commons.lang.Validate.notEmpty(Validate.java:321) ~[server.jar:git-Bukkit-45c8386]
at org.bukkit.configuration.MemorySection.set(MemorySection.java:167) ~[server.jar:git-Bukkit-45c8386]
at org.bukkit.configuration.MemorySection.set(MemorySection.java:201) ~[server.jar:git-Bukkit-45c8386]
at dev.Trolek_Bartu.HypixelPunishment.events.JoinLeaveEvent.onJoin(JoinLeaveEvent.java:68) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_202]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_202]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_202]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_202]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:296) ~[server.jar:git-Bukkit-45c8386]
... 14 more
A tu klasa w pluginie:
package dev.Trolek_Bartu.HypixelPunishment.events;
import dev.Trolek_Bartu.HypixelPunishment.Main;
import java.io.File;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
public class JoinLeaveEvent implements Listener {
@EventHandler
public void onLeave(PlayerQuitEvent event) {
String uuid = event.getPlayer().getUniqueId().toString();
File playerfile = new File(((Main)Main.getPlugin(Main.class)).getDataFolder() + File.separator, "kary.yml");
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(playerfile);
if (yamlConfiguration.contains(uuid) &&
yamlConfiguration.getBoolean(String.valueOf(uuid) + ".ban.zbanowany"))
event.setQuitMessage(null);
}
@EventHandler
public void onJoin(PlayerJoinEvent event) {
File playerfile = new File(((Main)Main.getPlugin(Main.class)).getDataFolder() + File.separator, "kary.yml");
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(playerfile);
String uuid = event.getPlayer().getUniqueId().toString();
long unixTime = System.currentTimeMillis() / 1000L;
if (yamlConfiguration.contains(uuid) &&
yamlConfiguration.getBoolean(String.valueOf(uuid) + ".ban.zbanowany")) {
if (yamlConfiguration.getInt(String.valueOf(uuid) + ".ban.dlugosc") <= unixTime && yamlConfiguration.getInt(String.valueOf(uuid) + ".ban.length") != -1)
try {
yamlConfiguration.set(String.valueOf(uuid) + ".ban.zbanowany", Boolean.valueOf(false));
yamlConfiguration.set(String.valueOf(uuid) + ".ban.powod", "");
yamlConfiguration.set(String.valueOf(uuid) + ".ban.dlugosc", Integer.valueOf(0));
yamlConfiguration.set(String.valueOf(uuid) + ".ban.id", "");
yamlConfiguration.save(playerfile);
} catch (IOException exception) {
exception.printStackTrace();
}
event.setJoinMessage(null);
if (yamlConfiguration.getInt(String.valueOf(uuid) + ".ban.dlugosc") == -1) {
event.getPlayer().kickPlayer(
"§cZostałeś zbanowany pernamentnie na tym serwerze!\n\n§7Powód: §f" +
yamlConfiguration.getString(String.valueOf(uuid) + ".ban.powod") + "\n" +
"§7Więcej znajdziesz na: §b§n"+ ((Main)Main.getPlugin(Main.class)).getConfig().getString("bandomain") + "\n\n" +
"§7ID bana: §f#"+ yamlConfiguration.getString(String.valueOf(uuid) + ".ban.id") + "\n" +
"§7Podaj swoje Id bana, żeby była możliwość rozpatrzenia twojego bana!");
} else {
if (yamlConfiguration.getInt(String.valueOf(uuid) + ".ban.dlugosc") == 0)
return;
event.getPlayer().kickPlayer(
"Zostałeś tymczasowo zbanowany na tym serwerze, unbana dostaniesz: §f"+ calculateTime(yamlConfiguration.getInt(String.valueOf(uuid) + ".ban.dlugosc") - unixTime) + "§c!\n\n" +
"§7Powód: §f " + yamlConfiguration.getString(String.valueOf(uuid) + ".ban.reason") + "\n" +
"§7Więcej znajdziesz na: §b§n"+ ((Main)Main.getPlugin(Main.class)).getConfig().getString("bandomain") + "\n\n" +
"§7ID bana: §f"+ yamlConfiguration.getString(String.valueOf(uuid) + ".ban.id") + "\n" +
"§7Podaj swoje Id bana, żeby była możliwość rozpatrzenia twojego bana!");
}
}
if (!yamlConfiguration.contains(uuid))
try {
yamlConfiguration.createSection(uuid);
yamlConfiguration.set(String.valueOf(uuid) + ".nazwa", event.getPlayer().getName());
yamlConfiguration.createSection(String.valueOf(uuid) + ".ban");
yamlConfiguration.createSection(String.valueOf(uuid) + ".mute");
yamlConfiguration.set(String.valueOf(uuid) + ".ban.zbanowany", Boolean.valueOf(false));
yamlConfiguration.set(String.valueOf(uuid) + ".ban.powod.", "");
yamlConfiguration.set(String.valueOf(uuid) + ".ban.dlugosc", Integer.valueOf(0));
yamlConfiguration.set(String.valueOf(uuid) + ".ban.id", "");
yamlConfiguration.set(String.valueOf(uuid) + ".mute.wyciszony", Boolean.valueOf(false));
yamlConfiguration.set(String.valueOf(uuid) + ".mute.powod", "");
yamlConfiguration.set(String.valueOf(uuid) + ".mute.dlugosc", Integer.valueOf(0));
yamlConfiguration.set(String.valueOf(uuid) + ".mute.id", "");
yamlConfiguration.save(playerfile);
} catch (IOException exception) {
exception.printStackTrace();
}
}
public static String calculateTime(long seconds) {
int days = (int)TimeUnit.SECONDS.toDays(seconds);
long hours = TimeUnit.SECONDS.toHours(seconds) - (days * 24);
long minute = TimeUnit.SECONDS.toMinutes(seconds) - TimeUnit.SECONDS.toHours(seconds) * 60L;
long second = TimeUnit.SECONDS.toSeconds(seconds) - TimeUnit.SECONDS.toMinutes(seconds) * 60L;
String time = (" " + days + "d " + hours + "h " + minute + "m " + second + "s").toString()
.replace(" 0d", "")
.replace(" 0h", "")
.replace(" 0m", "")
.replace(" 0s", "")
.replaceFirst(" ", "");
return time;
}
}