diff --git a/src/mineverse/Aust1n46/chat/MineverseChat.java b/src/mineverse/Aust1n46/chat/MineverseChat.java index 4df5328..b1e7ea5 100644 --- a/src/mineverse/Aust1n46/chat/MineverseChat.java +++ b/src/mineverse/Aust1n46/chat/MineverseChat.java @@ -193,8 +193,9 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { //} Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Establishing BungeeCord")); - Bukkit.getMessenger().registerOutgoingPluginChannel(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL); - Bukkit.getMessenger().registerIncomingPluginChannel(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, this); + Bukkit.getMessenger().registerOutgoingPluginChannel(this, PLUGIN_MESSAGING_CHANNEL); + Bukkit.getMessenger().registerIncomingPluginChannel(this, PLUGIN_MESSAGING_CHANNEL, this); + PluginManager pluginManager = getServer().getPluginManager(); if(pluginManager.isPluginEnabled("Towny")) { Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Enabling Towny Formatting")); @@ -246,7 +247,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { .replace("{player}", p.getName()).replace("{channel_color}", channel.getColor()) .replace("{channel_name}", mute.getChannel())); if(channel.getBungee()) { - MineverseChat.getInstance().synchronize(p, true); + synchronize(p, true); } } } @@ -270,15 +271,6 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Disabled Successfully")); } - @SuppressWarnings("unchecked") - public static void unregister(String name) { - try { - ((Map) knownCommands.get((SimpleCommandMap) commandMap.get(Bukkit.getServer()))).remove(name); - } - catch(Exception e) { - } - } - @SuppressWarnings("unused") private void loadCommandMap() { try { @@ -290,10 +282,6 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { catch(Exception e) { } } - - public static MineverseChat getInstance() { - return getPlugin(MineverseChat.class); - } private void registerListeners() { PluginManager pluginManager = getServer().getPluginManager(); @@ -308,14 +296,9 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { ProtocolLibrary.getProtocolManager().addPacketListener(new PacketListener()); } - public static Field getPosField() { - return posField; - } - public static Class getChatMessageType() { - return chatMessageType; - } - + + private void loadNMS() { try { posField = MinecraftReflection.getMinecraftClass("PacketPlayOutChat").getDeclaredField("b"); @@ -347,11 +330,12 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { return null; } } - + private String getVersion() { return Bukkit.getServer().getClass().getPackage().getName().split("\\.")[3]; } - + + private boolean setupPermissions() { RegisteredServiceProvider permissionProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.permission.Permission.class); if(permissionProvider != null) { @@ -368,6 +352,31 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { return(chat != null); } + + + + + public static MineverseChat getInstance() { + return getPlugin(MineverseChat.class); + } + + @SuppressWarnings("unchecked") + public static void unregister(String name) { + try { + ((Map) knownCommands.get((SimpleCommandMap) commandMap.get(Bukkit.getServer()))).remove(name); + } + catch(Exception e) { + } + } + + public static Field getPosField() { + return posField; + } + + public static Class getChatMessageType() { + return chatMessageType; + } + public static Chat getVaultChat() { return chat; } @@ -376,7 +385,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { return permission; } - public void synchronize(MineverseChatPlayer mcp, boolean changes) { + public static void synchronize(MineverseChatPlayer mcp, boolean changes) { // System.out.println("Sync started..."); ByteArrayOutputStream outstream = new ByteArrayOutputStream(); DataOutputStream out = new DataOutputStream(outstream); @@ -387,7 +396,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { // System.out.println(mcp.getPlayer().getServer().getServerName()); // out.writeUTF(mcp.getPlayer().getServer().getServerName()); out.writeUTF(mcp.getUUID().toString()); - Bukkit.getServer().getScheduler().runTaskLaterAsynchronously(this, new Runnable() { + Bukkit.getServer().getScheduler().runTaskLaterAsynchronously(getInstance(), new Runnable() { @Override public void run() { if(mcp.hasPlayed()) { @@ -445,10 +454,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { out.writeBoolean(mcp.isSpy()); out.writeBoolean(mcp.getMessageToggle()); } - for(MineverseChatPlayer p : MineverseChatAPI.getOnlineMineverseChatPlayers()) { - p.getPlayer().sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, outstream.toByteArray()); - break; - } + sendPluginMessage(outstream); // System.out.println("Sync start bottom..."); out.close(); } @@ -458,21 +464,20 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { } public static void sendPluginMessage(ByteArrayOutputStream byteOutStream) { - MineverseChatAPI.getOnlineMineverseChatPlayers().iterator().next().getPlayer().sendPluginMessage(MineverseChat.getInstance(), MineverseChat.PLUGIN_MESSAGING_CHANNEL, byteOutStream.toByteArray()); + MineverseChatAPI.getOnlineMineverseChatPlayers().iterator().next().getPlayer().sendPluginMessage(getInstance(), PLUGIN_MESSAGING_CHANNEL, byteOutStream.toByteArray()); } public static void sendDiscordSRVPluginMessage(String chatChannel, String message) { if(MineverseChatAPI.getOnlineMineverseChatPlayers().size() == 0) { return; } - Player host = MineverseChatAPI.getOnlineMineverseChatPlayers().iterator().next().getPlayer(); ByteArrayOutputStream byteOutStream = new ByteArrayOutputStream(); DataOutputStream out = new DataOutputStream(byteOutStream); try { out.writeUTF("DiscordSRV"); out.writeUTF(chatChannel); out.writeUTF(message); - host.sendPluginMessage(MineverseChat.getInstance(), MineverseChat.PLUGIN_MESSAGING_CHANNEL, byteOutStream.toByteArray()); + sendPluginMessage(byteOutStream); out.close(); } catch(Exception e) { @@ -482,7 +487,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { @Override public void onPluginMessageReceived(String channel, Player player, byte[] inputStream) { - if(!channel.equals(MineverseChat.PLUGIN_MESSAGING_CHANNEL)) { + if(!channel.equals(PLUGIN_MESSAGING_CHANNEL)) { return; } try { @@ -614,7 +619,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { for(String s : listening) { out.writeUTF(s); } - player.sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, stream.toByteArray()); + sendPluginMessage(stream); } if(identifier.equals("Receive")) { String sender = msgin.readUTF(); @@ -704,7 +709,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { p.setHasPlayed(true); // Only run a sync update if the player joined a BungeeCord channel if(isThereABungeeChannel) { - this.synchronize(p, true); + synchronize(p, true); } } } @@ -721,7 +726,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { out.writeUTF(server); out.writeUTF(receiver); out.writeUTF(sender.toString()); - player.sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, stream.toByteArray()); + sendPluginMessage(stream); return; } out.writeUTF("Ignore"); @@ -730,7 +735,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { out.writeUTF(p.getUUID().toString()); out.writeUTF(receiver); out.writeUTF(sender.toString()); - player.sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, stream.toByteArray()); + sendPluginMessage(stream); return; } if(identifier.equals("Offline")) { @@ -750,14 +755,14 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { p.getPlayer().sendMessage(LocalizedMessage.IGNORE_PLAYER_OFF.toString() .replace("{player}", receiverName)); p.removeIgnore(receiver); - this.synchronize(p, true); + synchronize(p, true); return; } p.addIgnore(receiver); p.getPlayer().sendMessage(LocalizedMessage.IGNORE_PLAYER_ON.toString() .replace("{player}", receiverName)); - this.synchronize(p, true); + synchronize(p, true); } } if(subchannel.equals("Mute")) { @@ -1096,7 +1101,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { out.writeUTF(server); out.writeUTF(receiver); out.writeUTF(sender.toString()); - player.sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, stream.toByteArray()); + sendPluginMessage(stream); return; } if(p.getIgnores().contains(sender)) { @@ -1105,7 +1110,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { out.writeUTF(server); out.writeUTF(receiver); out.writeUTF(sender.toString()); - player.sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, stream.toByteArray()); + sendPluginMessage(stream); return; } if(!p.getMessageToggle()) { @@ -1114,7 +1119,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { out.writeUTF(server); out.writeUTF(receiver); out.writeUTF(sender.toString()); - player.sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, stream.toByteArray()); + sendPluginMessage(stream); return; } p.getPlayer().sendMessage(Format.FormatStringAll(PlaceholderAPI.setBracketPlaceholders(p.getPlayer(), send.replaceAll("receiver_", ""))) + msg); @@ -1136,7 +1141,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { out.writeUTF(sName); out.writeUTF(Format.FormatStringAll(PlaceholderAPI.setBracketPlaceholders(p.getPlayer(), echo.replaceAll("receiver_", ""))) + msg); out.writeUTF(Format.FormatStringAll(PlaceholderAPI.setBracketPlaceholders(p.getPlayer(), spy.replaceAll("receiver_", ""))) + msg); - player.sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, stream.toByteArray()); + sendPluginMessage(stream); return; } if(identifier.equals("Offline")) { diff --git a/src/mineverse/Aust1n46/chat/command/chat/BungeeToggle.java b/src/mineverse/Aust1n46/chat/command/chat/BungeeToggle.java index 2b49c70..038b63f 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/BungeeToggle.java +++ b/src/mineverse/Aust1n46/chat/command/chat/BungeeToggle.java @@ -23,12 +23,12 @@ public class BungeeToggle implements VentureCommand { if(!mcp.getBungeeToggle()) { mcp.setBungeeToggle(true); mcp.getPlayer().sendMessage(LocalizedMessage.BUNGEE_TOGGLE_ON.toString()); - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return; } mcp.setBungeeToggle(false); mcp.getPlayer().sendMessage(LocalizedMessage.BUNGEE_TOGGLE_OFF.toString()); - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return; } mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); diff --git a/src/mineverse/Aust1n46/chat/command/chat/Channel.java b/src/mineverse/Aust1n46/chat/command/chat/Channel.java index 5af1923..af1881a 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Channel.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Channel.java @@ -71,7 +71,7 @@ public class Channel implements VentureCommand, Listener { mcp.setCurrentChannel(channel); mcp.getPlayer().sendMessage(event.getMessage()); if(channel.getBungee()) { - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); } return; } diff --git a/src/mineverse/Aust1n46/chat/command/chat/Leave.java b/src/mineverse/Aust1n46/chat/command/chat/Leave.java index 7a77437..17f36e1 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Leave.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Leave.java @@ -41,7 +41,7 @@ public class Leave implements VentureCommand { .replace("{channel_name}", ChatChannel.getDefaultChannel().getName())); } if(channel.getBungee()) { - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); } return; } diff --git a/src/mineverse/Aust1n46/chat/command/message/IgnoreCommandExecutor.java b/src/mineverse/Aust1n46/chat/command/message/IgnoreCommandExecutor.java index 7808235..392f239 100644 --- a/src/mineverse/Aust1n46/chat/command/message/IgnoreCommandExecutor.java +++ b/src/mineverse/Aust1n46/chat/command/message/IgnoreCommandExecutor.java @@ -80,7 +80,7 @@ public class IgnoreCommandExecutor implements TabExecutor { mcp.getPlayer().sendMessage(LocalizedMessage.IGNORE_PLAYER_OFF.toString() .replace("{player}", player.getName())); mcp.removeIgnore(player.getUUID()); - plugin.synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return true; } if(player.getPlayer().hasPermission("venturechat.ignore.bypass")) { @@ -91,7 +91,7 @@ public class IgnoreCommandExecutor implements TabExecutor { mcp.getPlayer().sendMessage(LocalizedMessage.IGNORE_PLAYER_ON.toString() .replace("{player}", player.getName())); mcp.addIgnore(player.getUUID()); - plugin.synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return true; } diff --git a/src/mineverse/Aust1n46/chat/command/message/MessageToggle.java b/src/mineverse/Aust1n46/chat/command/message/MessageToggle.java index d3fab3a..66bc85b 100644 --- a/src/mineverse/Aust1n46/chat/command/message/MessageToggle.java +++ b/src/mineverse/Aust1n46/chat/command/message/MessageToggle.java @@ -23,12 +23,12 @@ public class MessageToggle implements VentureCommand { if(!mcp.getMessageToggle()) { mcp.setMessageToggle(true); mcp.getPlayer().sendMessage(LocalizedMessage.MESSAGE_TOGGLE_ON.toString()); - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return; } mcp.setMessageToggle(false); mcp.getPlayer().sendMessage(LocalizedMessage.MESSAGE_TOGGLE_OFF.toString()); - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return; } mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); diff --git a/src/mineverse/Aust1n46/chat/command/message/Spy.java b/src/mineverse/Aust1n46/chat/command/message/Spy.java index e6a70fc..c3be973 100644 --- a/src/mineverse/Aust1n46/chat/command/message/Spy.java +++ b/src/mineverse/Aust1n46/chat/command/message/Spy.java @@ -23,12 +23,12 @@ public class Spy implements VentureCommand { if(!mcp.isSpy()) { mcp.setSpy(true); mcp.getPlayer().sendMessage(LocalizedMessage.SPY_ON.toString()); - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return; } mcp.setSpy(false); mcp.getPlayer().sendMessage(LocalizedMessage.SPY_OFF.toString()); - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); return; } mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); diff --git a/src/mineverse/Aust1n46/chat/command/mute/Muteall.java b/src/mineverse/Aust1n46/chat/command/mute/Muteall.java index eeb9ef6..f550131 100644 --- a/src/mineverse/Aust1n46/chat/command/mute/Muteall.java +++ b/src/mineverse/Aust1n46/chat/command/mute/Muteall.java @@ -45,7 +45,7 @@ public class Muteall implements VentureCommand { } } if(bungee) { - MineverseChat.getInstance().synchronize(player, true); + MineverseChat.synchronize(player, true); } sender.sendMessage(LocalizedMessage.MUTE_PLAYER_ALL_SENDER.toString() .replace("{player}", player.getName())); @@ -67,7 +67,7 @@ public class Muteall implements VentureCommand { } } if(bungee) { - MineverseChat.getInstance().synchronize(player, true); + MineverseChat.synchronize(player, true); } sender.sendMessage(LocalizedMessage.MUTE_PLAYER_ALL_SENDER_REASON.toString() .replace("{player}", player.getName()) diff --git a/src/mineverse/Aust1n46/chat/command/mute/Unmuteall.java b/src/mineverse/Aust1n46/chat/command/mute/Unmuteall.java index a671e75..760dc31 100644 --- a/src/mineverse/Aust1n46/chat/command/mute/Unmuteall.java +++ b/src/mineverse/Aust1n46/chat/command/mute/Unmuteall.java @@ -34,7 +34,7 @@ public class Unmuteall implements VentureCommand { } } if(bungee) { - MineverseChat.getInstance().synchronize(player, true); + MineverseChat.synchronize(player, true); } sender.sendMessage(LocalizedMessage.UNMUTE_PLAYER_ALL_SENDER.toString() .replace("{player}", player.getName())); diff --git a/src/mineverse/Aust1n46/chat/listeners/ChatListener.java b/src/mineverse/Aust1n46/chat/listeners/ChatListener.java index cf73fd5..bec0a3b 100644 --- a/src/mineverse/Aust1n46/chat/listeners/ChatListener.java +++ b/src/mineverse/Aust1n46/chat/listeners/ChatListener.java @@ -315,7 +315,7 @@ public class ChatListener implements Listener { .replace("{reason}", LocalizedMessage.SPAM_MUTE_REASON_TEXT.toString())); } if(eventChannel.getBungee()) { - plugin.synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); } mcp.getSpam().get(eventChannel).set(0, 0L); mcp.setQuickChat(false); diff --git a/src/mineverse/Aust1n46/chat/listeners/CommandListener.java b/src/mineverse/Aust1n46/chat/listeners/CommandListener.java index 96e4a2e..e48c322 100644 --- a/src/mineverse/Aust1n46/chat/listeners/CommandListener.java +++ b/src/mineverse/Aust1n46/chat/listeners/CommandListener.java @@ -148,7 +148,7 @@ public class CommandListener implements CommandExecutor, Listener { mcp.addListening(channel.getName()); mcp.setCurrentChannel(channel); if(channel.getBungee()) { - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); } event.setCancelled(true); return; @@ -157,7 +157,7 @@ public class CommandListener implements CommandExecutor, Listener { message = message.substring(channel.getAlias().length() + 1); mcp.addListening(channel.getName()); if(channel.getBungee()) { - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); } mcp.setQuickChannel(channel); /*String format = ""; @@ -208,7 +208,7 @@ public class CommandListener implements CommandExecutor, Listener { mcp.setQuickChannel(channel); mcp.addListening(channel.getName()); if(channel.getBungee()) { - MineverseChat.getInstance().synchronize(mcp, true); + MineverseChat.synchronize(mcp, true); } String msg = ""; for(int x = 0; x < args.length; x++) { diff --git a/src/mineverse/Aust1n46/chat/listeners/LoginListener.java b/src/mineverse/Aust1n46/chat/listeners/LoginListener.java index 8879658..eb589e0 100644 --- a/src/mineverse/Aust1n46/chat/listeners/LoginListener.java +++ b/src/mineverse/Aust1n46/chat/listeners/LoginListener.java @@ -101,7 +101,7 @@ public class LoginListener implements Listener { final MineverseChatPlayer sync = mcp; plugin.getServer().getScheduler().runTaskLaterAsynchronously(plugin, new Runnable() { public void run() { - plugin.synchronize(sync, false); + MineverseChat.synchronize(sync, false); } }, delayInTicks); }