From d8a39d4c06a24493b92b18a3c19f81c7521f6054 Mon Sep 17 00:00:00 2001 From: CoreyShupe <37425956+CoreyShupe@users.noreply.github.com> Date: Sun, 15 Apr 2018 11:11:09 -0400 Subject: [PATCH] Small cleanup (#2) (PR) * Update NPCManager.java Fixed to a more singleton perspective * Update NPCLib.java Fixed import issue --- src/net/jitse/npclib/NPCLib.java | 19 ++++++++++++------- src/net/jitse/npclib/NPCManager.java | 7 ++++++- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/net/jitse/npclib/NPCLib.java b/src/net/jitse/npclib/NPCLib.java index 769a42f..df83702 100644 --- a/src/net/jitse/npclib/NPCLib.java +++ b/src/net/jitse/npclib/NPCLib.java @@ -10,9 +10,10 @@ import net.jitse.npclib.listeners.PlayerLeaveListener; import net.jitse.npclib.listeners.PlayerMoveListener; import net.jitse.npclib.skin.Skin; import net.jitse.npclib.version.Version; -import org.bukkit.Bukkit; +import org.bukkit.Server; import org.bukkit.ChatColor; import org.bukkit.plugin.java.JavaPlugin; +import org.bukkit.plugin.PluginManager; import java.lang.reflect.InvocationTargetException; import java.util.List; @@ -22,17 +23,19 @@ import java.util.List; */ public class NPCLib { + private final Server server; private final JavaPlugin plugin; private final Version version; public NPCLib(JavaPlugin plugin) { this.plugin = plugin; - - String versionName = Bukkit.getServer().getClass().getPackage().getName().split("\\.")[3]; + this.server = plugin.getServer(); + + String versionName = this.server.getClass().getPackage().getName().split("\\.")[3]; version = Version.getByName(versionName).orElse(null); if (version == null) { - Bukkit.getConsoleSender().sendMessage(ChatColor.RED + "NPCLib failed to initiate. Your server's version (" + this.server.getConsoleSender().sendMessage(ChatColor.RED + "NPCLib failed to initiate. Your server's version (" + versionName + ") is not supported."); } @@ -40,8 +43,10 @@ public class NPCLib { } private void registerInternal() { - plugin.getServer().getPluginManager().registerEvents(new PlayerMoveListener(), plugin); - plugin.getServer().getPluginManager().registerEvents(new PlayerLeaveListener(), plugin); + PluginManager pluginManager = this.server.getPluginManager(); + + pluginManager.registerEvents(new PlayerMoveListener(), plugin); + pluginManager.registerEvents(new PlayerLeaveListener(), plugin); new PacketListener().start(plugin); } @@ -58,7 +63,7 @@ public class NPCLib { try { return version.createNPC(plugin, skin, autoHideDistance, lines); } catch (InstantiationException | IllegalAccessException | InvocationTargetException exception) { - Bukkit.getConsoleSender().sendMessage(ChatColor.RED + "NPCLib failed to create NPC. Please report this stacktrace:"); + this.server.getConsoleSender().sendMessage(ChatColor.RED + "NPCLib failed to create NPC. Please report this stacktrace:"); exception.printStackTrace(); } diff --git a/src/net/jitse/npclib/NPCManager.java b/src/net/jitse/npclib/NPCManager.java index 220debd..6142c01 100644 --- a/src/net/jitse/npclib/NPCManager.java +++ b/src/net/jitse/npclib/NPCManager.java @@ -12,7 +12,7 @@ import java.util.Set; /** * @author Jitse Boonstra */ -public class NPCManager { +public final class NPCManager { private static Set npcs = new HashSet<>(); @@ -27,4 +27,9 @@ public class NPCManager { public static void remove(NPC npc) { npcs.remove(npc); } + + private NPCManager() { + throw new SecurityException("You cannot initialize this class."); + } + }