- Баллы
- 76
- Имя в Minecraft
- Krong
Привет, пишу плагин, всё работает в принципе, начал тестить плагин, в конфиге на сообщение поставил русское сообщение, выдаёт ошибку:
Сохраняю конфиг в notepad++ с кодировкой UTF-8, пробовал с UTF-8 BOM, так-же, если сделаю англ сообщение всё нормально будет.
Класс выполнения ивента:
Главный класс:
Конфиг:
Код:
Could not pass event PlayerJoinEvent to mEvents v0.1
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[server.jar:git-Spigot-dcd1643-e60fc34]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-Spigot-dcd1643-e60fc34]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:500) [server.jar:git-Spigot-dcd1643-e60fc34]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:485) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.PlayerList.onPlayerJoin(PlayerList.java:346) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.PlayerList.a(PlayerList.java:166) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.LoginListener.b(LoginListener.java:159) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.LoginListener.e(LoginListener.java:57) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.NetworkManager.a(NetworkManager.java:233) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.ServerConnection.c(ServerConnection.java:140) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:845) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [server.jar:git-Spigot-dcd1643-e60fc34]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_321]
Caused by: java.lang.NullPointerException
at EventsSystem.PlayerJoin.onJoin(PlayerJoin.java:14) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_321]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_321]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[server.jar:git-Spigot-dcd1643-e60fc34]
... 14 more
Сохраняю конфиг в notepad++ с кодировкой UTF-8, пробовал с UTF-8 BOM, так-же, если сделаю англ сообщение всё нормально будет.
Класс выполнения ивента:
Код:
package SystemClass;
import org.bukkit.Bukkit;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
public class Listeners implements Listener {
@EventHandler
public void isOppedPlayer(PlayerCommandPreprocessEvent event) {
Player player = event.getPlayer();
if(player.isOp()) {
FileConfiguration config = Main.getInstance().getConfig();
event.getPlayer().sendMessage(config.getString("messages.IsOppedwarn").replace("&", "§"));
event.getPlayer().sendTitle(config.getString("messages.title").replace("&", "§"), config.getString("messages.IsOppedwarn").replace("&", "§"));
event.getPlayer().setWalkSpeed(0);
event.getPlayer().damage(0);
if(!event.getMessage().startsWith("/CMD")) {
event.setCancelled(true);
player.sendMessage(config.getString("messages.AccessNone"));
}
for(Player p : Bukkit.getOnlinePlayers()) {
if(p.hasPermission("HubAPI.notify.staff")) {
p.sendMessage(config.getString("messages.WarnToNotifyStaff").replace("&", "§"));
}
}
}
}
}
Код:
package SystemClass;
import java.io.File;
import java.io.IOException;
import java.util.logging.Logger;
import SystemClass.Listeners;
import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin{
Logger log = Logger.getLogger("Minecraft");
private static Main instance;
public static Main getInstance() {
return instance;
}
@Override
public void onEnable() {
this.getServer().getPluginManager().registerEvents((Listener)new Listeners(), (Main)this);
getCommand("addiptolist").setExecutor(new CommandAddIP(this));
File file = new File("plugins/mHubAPI");
file.mkdir();
File config = new File("plugins/mHubAPI/config.yml");
if(!config.exists()) {
getConfig().options().copyDefaults(true);
saveDefaultConfig();
instance = this;
}
File playersipfile = new File("plugins/mHubAPI/playersip.yml");
if(!playersipfile.exists()) {
try {
playersipfile.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Конфиг:
Код:
messages:
IsOppedwarn: 'Прикольно'
IsOpped-good: 'tg'
IsOpped-stop: 'ww'
Notify-Staff: 'jojo'
WarnToNotifyStaff: '&cRebytki srocno!'
title: '&cZahita'