From ba2705429b2e6a784ad27ee4ed154473238dbfb4 Mon Sep 17 00:00:00 2001 From: Ryandw11 <6239385+ryandw11@users.noreply.github.com> Date: Mon, 8 Jul 2019 06:23:09 -0700 Subject: [PATCH] Begining chanes of 2.4 --- plugin.yml | 2 +- .../ryandw11/ultrachat/api/UltraChatAPI.java | 92 +----------- .../api/channels/ChannelBuilder.java | 133 +++++++++++++++++ .../ultrachat/api/channels/ChatChannel.java | 108 ++++++++++++++ .../api/events/ChannelChatEvent.java | 78 ++++++++++ .../api/{ => events}/GlobalChatEvent.java | 2 +- .../api/{ => events}/JsonChatEvent.java | 2 +- .../api/{ => events}/WorldChatEvent.java | 2 +- .../api/managers/ChannelManager.java | 137 ++++++++++++++++++ .../ultrachat/commands/ChatCommand.java | 2 +- .../ryandw11/ultrachat/commands/Global.java | 4 +- src/me/ryandw11/ultrachat/commands/World.java | 4 +- .../ultrachat/formatting/Chat_Json.java | 2 +- .../formatting/PlayerFormatting.java | 24 +++ .../ryandw11/ultrachat/formatting/Range.java | 4 +- .../ultrachat/listner/ConsoleLogChat.java | 2 +- .../ryandw11/ultrachat/listner/NoSwear.java | 2 +- src/me/ryandw11/ultrachat/listner/Notify.java | 2 +- .../ultrachat/listner/Notify_1_12.java | 2 +- .../ryandw11/ultrachat/listner/StopChat.java | 2 +- .../pluginhooks/AdvancedBanMute.java | 6 +- .../ultrachat/pluginhooks/EssentialsMute.java | 7 +- 22 files changed, 512 insertions(+), 107 deletions(-) create mode 100644 src/me/ryandw11/ultrachat/api/channels/ChannelBuilder.java create mode 100644 src/me/ryandw11/ultrachat/api/channels/ChatChannel.java create mode 100644 src/me/ryandw11/ultrachat/api/events/ChannelChatEvent.java rename src/me/ryandw11/ultrachat/api/{ => events}/GlobalChatEvent.java (95%) rename src/me/ryandw11/ultrachat/api/{ => events}/JsonChatEvent.java (96%) rename src/me/ryandw11/ultrachat/api/{ => events}/WorldChatEvent.java (96%) create mode 100644 src/me/ryandw11/ultrachat/api/managers/ChannelManager.java diff --git a/plugin.yml b/plugin.yml index 9a3c5b6..cadac69 100644 --- a/plugin.yml +++ b/plugin.yml @@ -1,5 +1,5 @@ name: UltraChat -version: 2.3.2 +version: 2.3.3 main: me.ryandw11.ultrachat.UltraChat author: Ryandw11 description: A chat formatting plugin. diff --git a/src/me/ryandw11/ultrachat/api/UltraChatAPI.java b/src/me/ryandw11/ultrachat/api/UltraChatAPI.java index a25c1f2..e115234 100644 --- a/src/me/ryandw11/ultrachat/api/UltraChatAPI.java +++ b/src/me/ryandw11/ultrachat/api/UltraChatAPI.java @@ -8,6 +8,8 @@ import org.bukkit.Bukkit; import org.bukkit.entity.Player; import me.ryandw11.ultrachat.UltraChat; +import me.ryandw11.ultrachat.api.channels.ChannelBuilder; +import me.ryandw11.ultrachat.api.channels.ChatChannel; import me.ryandw11.ultrachat.formatting.PlayerFormatting; /** * UltraChatAPI @@ -23,60 +25,12 @@ public class UltraChatAPI{ * * */ - /** - * Grab the Instance - * @return #getPlugin() - * @deprecated - */ - public static UltraChat getInstance(){ - return getPlugin(); + private UltraChat plugin; + public UltraChatAPI(){ + this.plugin = UltraChat.plugin; } - private UltraChat plugin; - public UltraChatAPI(UltraChat plugin){ - this.plugin = plugin; - } - /** - * Grab the player's current channel. - * @param player - * @return The player's current channel. - */ - public String getPlayerChannel(Player player){ - return plugin.data.getString(player.getUniqueId() + ".channel"); - } - /** - * Get the servers default channel. - * @return Default Channel - */ - public String getDefaultChannel(){ - return plugin.getConfig().getString("Default_Channel"); - } - /** - * Set the player's channel. - * @param player - * @param channel - */ - public void setPlayerChannel(Player player, String channel){ - plugin.data.set(player.getUniqueId() + ".channel", channel); - plugin.saveFile(); - } - /** - * Set the default channel - * @param channel - */ - public void setDefaultChannel(String channel){ - plugin.getConfig().set("Default_Config", channel); - plugin.saveConfig(); - } - /** - * Get a channel's json. - * @param channel - * @return Json array - */ - @SuppressWarnings("unchecked") - public ArrayList getChannelJson(String channel){ - return (ArrayList) plugin.channel.get(channel + ".JSON"); - } + /** * Get a format's json. * @param number @@ -86,15 +40,6 @@ public class UltraChatAPI{ public ArrayList getChatFormatJson(String number){ return (ArrayList) plugin.getConfig().get("Custom_Chat." + number + ".JSON"); } - /** - * Set a channel's json. - * @param json - * @param channel - */ - public void setChannelJson(ArrayList json, String channel){ - plugin.channel.set(channel + ".json", json); - plugin.saveChannel(); - } /** * Set a format's json. * @param json @@ -105,22 +50,6 @@ public class UltraChatAPI{ plugin.getConfig().set("Custom_Chat." + number + ".JSON", json); plugin.saveConfig(); } - /** - * Check to see if channels are enabled. - * @deprecated Use getMode() - * @return boolean - */ - public boolean isChannelEnabled(){ - return plugin.getConfig().getBoolean("Channels"); - } - /** - * Check to see if json is enabled. - * @deprecated Use getMode() - * @return boolean - */ - public boolean isJsonEnabled(){ - return plugin.getConfig().getBoolean("JSON"); - } /** * Get the current chat mode. * @return chat mode @@ -235,6 +164,7 @@ public class UltraChatAPI{ * @param always_appear * @param format * @param json + * @deprecated */ public void createChannel(String channel, String prefix, String permission, boolean always_appear, String format, ArrayList json){ @@ -247,6 +177,7 @@ public class UltraChatAPI{ } /** * Remove a channel. + * @deprecated * @param channel */ public void removeChannel(String channel){ @@ -254,13 +185,6 @@ public class UltraChatAPI{ plugin.saveChannel(); } - /** - * Grab the plugin. - * @return plugin. Don't worry about the return - */ - public static UltraChat getPlugin(){ - return UltraChat.plugin; - } /** * Get the current formatting type. * @return The value of the config. diff --git a/src/me/ryandw11/ultrachat/api/channels/ChannelBuilder.java b/src/me/ryandw11/ultrachat/api/channels/ChannelBuilder.java new file mode 100644 index 0000000..a2c0068 --- /dev/null +++ b/src/me/ryandw11/ultrachat/api/channels/ChannelBuilder.java @@ -0,0 +1,133 @@ +package me.ryandw11.ultrachat.api.channels; + +import java.util.ArrayList; +import java.util.List; + +import org.bukkit.configuration.ConfigurationSection; + +import me.ryandw11.ultrachat.UltraChat; + + +/** + * A Builder to make a channel. + * @author Ryandw11 + * @since 2.3.3 + */ +public class ChannelBuilder { + + private String name; + private String prefix; + private String permission; + private boolean alwaysAppear; + private String format; + private List json; + + /** + * The Builder to create a channel. + * @param name The name of the channel (usually lowercase) + */ + public ChannelBuilder(String name) { + this.setName(name); + setPrefix("[" + name + "]"); + setPermission("none"); + setAlwaysAppear(false); + setJson(new ArrayList()); + setFormat("%prefix% %player% %suffix%&7 >> "); + } + + protected String getName() { + return name; + } + + /** + * Set the name of the channel. + * @param name The name. (Lowercase is standard) + * @return The builder + */ + public ChannelBuilder setName(String name) { + this.name = name; + return this; + } + + protected String getPrefix() { + return prefix; + } + + /** + * Set the prefix of the channel + * @param prefix The prefix (supports & codes) + * @return The builder + */ + public ChannelBuilder setPrefix(String prefix) { + this.prefix = prefix; + return this; + } + + protected String getPermission() { + return permission; + } + + /** + * Set the permission for the channel. + * @param permission The permission + * @return The builder. + */ + public ChannelBuilder setPermission(String permission) { + this.permission = permission; + return this; + } + + protected boolean isAlwaysAppear() { + return alwaysAppear; + } + + /** + * Set if the channel is always appear + * @param alwaysAppear + * @return The builder + */ + public ChannelBuilder setAlwaysAppear(boolean alwaysAppear) { + this.alwaysAppear = alwaysAppear; + return this; + } + + /** + * Build the channel + * @return The channel. Note: If the channel name is already used it will return the existing one. + */ + @SuppressWarnings("unchecked") + public ChatChannel build() { + if(UltraChat.plugin.channel.contains(this.name)) { + ConfigurationSection cs = UltraChat.plugin.channel.getConfigurationSection(this.name); + this.setPrefix(cs.getString("prefix")); + this.setPermission(cs.getString("permission")); + this.setAlwaysAppear(cs.getBoolean("always_appear")); + this.setFormat(cs.getString("format")); + this.setJson((ArrayList) cs.get("JSON")); + } + return new ChatChannel(this); + } + + public List getJson() { + return json; + } + + /** + * Set the json lore. + * @param json List of lore. + */ + public ChannelBuilder setJson(List json) { + this.json = json; + return this; + } + + public String getFormat() { + return format; + } + + public ChannelBuilder setFormat(String format) { + this.format = format; + return this; + } + +} diff --git a/src/me/ryandw11/ultrachat/api/channels/ChatChannel.java b/src/me/ryandw11/ultrachat/api/channels/ChatChannel.java new file mode 100644 index 0000000..3614409 --- /dev/null +++ b/src/me/ryandw11/ultrachat/api/channels/ChatChannel.java @@ -0,0 +1,108 @@ +package me.ryandw11.ultrachat.api.channels; + +import java.util.List; + +import me.ryandw11.ultrachat.UltraChat; + +public class ChatChannel { + + private String name; + private String prefix; + private String permission; + private boolean alwaysAppear; + private String format; + private List json; + + /** + * For internal use only. Always use the channel builder. + * @param cb + */ + public ChatChannel(ChannelBuilder cb) { + this.name = cb.getName(); + this.prefix = cb.getPrefix(); + this.permission = cb.getPermission(); + this.alwaysAppear = cb.isAlwaysAppear(); + this.json = cb.getJson(); + this.format = cb.getFormat(); + } + + public String getName() { + return name; + } + + /** + * Auto calls the update() method. + *

Note: If this channel is the default channel then you will need to change the default channel name manually

+ * @param name + */ + public void setName(String name) { + UltraChat.plugin.channel.set(this.name, null); + this.name = name; + update(); + } + + public String getPrefix() { + return prefix; + } + + public void setPrefix(String prefix) { + this.prefix = prefix; + update(); + } + + public String getPermission() { + return permission; + } + + public void setPermission(String permission) { + this.permission = permission; + update(); + } + + public boolean isAlwaysAppear() { + return alwaysAppear; + } + + public void setAlwaysAppear(boolean alwaysAppear) { + this.alwaysAppear = alwaysAppear; + update(); + } + + public List getJson() { + return json; + } + + public void setJson(List json) { + this.json = json; + update(); + } + + /** + * Call this after every change and after intialization to save the channel to the files. + */ + private void update() { + UltraChat plugin = UltraChat.plugin; + plugin.channel.set(this.getName() + ".prefix", this.getPrefix()); + plugin.channel.set(this.getName() + ".permission", this.getPrefix()); + plugin.channel.set(this.getName() + ".always_appear", this.isAlwaysAppear()); + plugin.channel.set(this.getName() + ".format", this.getFormat()); + plugin.channel.set(this.getName() + ".JSON", this.getJson()); + } + + /** + * Delete the channel + */ + public void delete() { + UltraChat.plugin.channel.set(this.getName(), null); + } + + public String getFormat() { + return format; + } + + public void setFormat(String format) { + this.format = format; + update(); + } + +} diff --git a/src/me/ryandw11/ultrachat/api/events/ChannelChatEvent.java b/src/me/ryandw11/ultrachat/api/events/ChannelChatEvent.java new file mode 100644 index 0000000..d08b66e --- /dev/null +++ b/src/me/ryandw11/ultrachat/api/events/ChannelChatEvent.java @@ -0,0 +1,78 @@ +package me.ryandw11.ultrachat.api.events; + +import java.util.Set; + +import org.bukkit.entity.Player; +import org.bukkit.event.Event; +import org.bukkit.event.HandlerList; + +import me.ryandw11.ultrachat.api.channels.ChatChannel; +import me.ryandw11.ultrachat.api.managers.ChannelManager; +/** + * Event class - + * Async Event + * @author Ryandw11 + * + */ +public class ChannelChatEvent extends Event { + private static final HandlerList handlers = new HandlerList(); + private Player player; + private String chat; + private ChatChannel channel; + private Set recipients; + private boolean cancelled; + + public ChannelChatEvent(Player p, String chat, Set recipients) { + super(true); + player = p; + this.chat = chat; + this.recipients = recipients; + this.channel = new ChannelManager().getPlayerChannel(p); + } + /** + * Grab the recipients. + * @return The recipients. + */ + public Set getRecipients(){ + return recipients; + } + /** + * Set the recipients. + * @param recipents The set of recipients. + */ + public void setRecipients(Set recipients){ + this.recipients = recipients; + } + + public Player getPlayer() { + return player; + } + + public String getMessage() { + return chat; + } + + public ChatChannel getChannel() { + return channel; + } + + public void setMessage(String message){ + chat = message; + } + + public boolean isCancelled(){ + return cancelled; + } + + public void setCancelled(boolean cancel){ + cancelled = cancel; + } + + public HandlerList getHandlers() { + return handlers; + } + + public static HandlerList getHandlerList() { + return handlers; + } +} diff --git a/src/me/ryandw11/ultrachat/api/GlobalChatEvent.java b/src/me/ryandw11/ultrachat/api/events/GlobalChatEvent.java similarity index 95% rename from src/me/ryandw11/ultrachat/api/GlobalChatEvent.java rename to src/me/ryandw11/ultrachat/api/events/GlobalChatEvent.java index b5cf5fb..f166587 100644 --- a/src/me/ryandw11/ultrachat/api/GlobalChatEvent.java +++ b/src/me/ryandw11/ultrachat/api/events/GlobalChatEvent.java @@ -1,4 +1,4 @@ -package me.ryandw11.ultrachat.api; +package me.ryandw11.ultrachat.api.events; import org.bukkit.entity.Player; diff --git a/src/me/ryandw11/ultrachat/api/JsonChatEvent.java b/src/me/ryandw11/ultrachat/api/events/JsonChatEvent.java similarity index 96% rename from src/me/ryandw11/ultrachat/api/JsonChatEvent.java rename to src/me/ryandw11/ultrachat/api/events/JsonChatEvent.java index fd79a05..81fb026 100644 --- a/src/me/ryandw11/ultrachat/api/JsonChatEvent.java +++ b/src/me/ryandw11/ultrachat/api/events/JsonChatEvent.java @@ -1,4 +1,4 @@ -package me.ryandw11.ultrachat.api; +package me.ryandw11.ultrachat.api.events; import java.util.Set; diff --git a/src/me/ryandw11/ultrachat/api/WorldChatEvent.java b/src/me/ryandw11/ultrachat/api/events/WorldChatEvent.java similarity index 96% rename from src/me/ryandw11/ultrachat/api/WorldChatEvent.java rename to src/me/ryandw11/ultrachat/api/events/WorldChatEvent.java index a219623..e7d0d2e 100644 --- a/src/me/ryandw11/ultrachat/api/WorldChatEvent.java +++ b/src/me/ryandw11/ultrachat/api/events/WorldChatEvent.java @@ -1,4 +1,4 @@ -package me.ryandw11.ultrachat.api; +package me.ryandw11.ultrachat.api.events; import java.util.Set; diff --git a/src/me/ryandw11/ultrachat/api/managers/ChannelManager.java b/src/me/ryandw11/ultrachat/api/managers/ChannelManager.java new file mode 100644 index 0000000..838acbe --- /dev/null +++ b/src/me/ryandw11/ultrachat/api/managers/ChannelManager.java @@ -0,0 +1,137 @@ +package me.ryandw11.ultrachat.api.managers; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; + +import me.ryandw11.ultrachat.UltraChat; +import me.ryandw11.ultrachat.api.channels.ChannelBuilder; +import me.ryandw11.ultrachat.api.channels.ChatChannel; + +public class ChannelManager { + private UltraChat plugin; + public ChannelManager() { + this.plugin = UltraChat.plugin; + } + + /** + * Get a channel via its name + * @param name The name of the channel + * @return The channel. + */ + public ChatChannel getChannelByName(String name) { + ChannelBuilder cb = new ChannelBuilder(name); + return cb.build(); + } + + /** + * Grab the player's current channel. + * @param player + * @return The player's current channel. + */ + public ChatChannel getPlayerChannel(Player player){ + ChannelBuilder cb = new ChannelBuilder(plugin.data.getString(player.getUniqueId() + ".channel")); + return cb.build(); + } + + /** + * Grab an offline player's current channel. + * @param player + * @return + */ + public ChatChannel getPlayerChannel(UUID player) { + ChannelBuilder cb = new ChannelBuilder(plugin.data.getString(player + ".channel")); + return cb.build(); + } + + /** + * Get the servers default channel. + * @return Default Channel + */ + public ChatChannel getDefaultChannel(){ + ChannelBuilder cb = new ChannelBuilder(plugin.getConfig().getString("Default_Channel")); + return cb.build(); + } + + /** + * Set the player's channel. + * @param player + * @param channel + */ + public void setPlayerChannel(Player player, ChatChannel channel){ + plugin.data.set(player.getUniqueId() + ".channel", channel.getName()); + plugin.saveFile(); + } + + /** + * Set the player's channel. + * @param player + * @param channel + */ + public void setPlayerChannel(UUID player, ChatChannel channel) { + plugin.data.set(player + ".channel", channel.getName()); + plugin.saveFile(); + } + + + /** + * Set the default channel + * @param channel + */ + public void setDefaultChannel(ChatChannel channel){ + plugin.getConfig().set("Default_Config", channel.getName()); + plugin.saveConfig(); + } + + /** + * If a given channel exists (In this instance if it is save in the files) + * @param channel + */ + public boolean channelExists(ChatChannel channel) { + return plugin.channel.contains(channel.getName()); + } + + /** + * If a given channel exists based upon the name. + * @param name + * @return + */ + public boolean channelExists(String name) { + return plugin.channel.contains(name); + } + + /** + * Get all online players in a given channel. + * @param channel + * @return + */ + public List getPlayersInChannel(ChatChannel channel){ + List output = new ArrayList<>(); + for(Player p : Bukkit.getOnlinePlayers()) { + if(this.getPlayerChannel(p).getName().equals(channel.getName())) { + output.add(p); + } + } + return output; + } + + /** + * Get all players in a channel online or offline. + * @param channel + * @return + */ + public List getAllPlayersInChannel(ChatChannel channel){ + List output = new ArrayList<>(); + for(String s : plugin.data.getConfigurationSection("").getKeys(false)) { + UUID ud = UUID.fromString(s); + if(this.getPlayerChannel(ud).getName().equals(channel.getName())) { + output.add(ud); + } + } + return output; + } + +} diff --git a/src/me/ryandw11/ultrachat/commands/ChatCommand.java b/src/me/ryandw11/ultrachat/commands/ChatCommand.java index 00444a5..b4a21b5 100644 --- a/src/me/ryandw11/ultrachat/commands/ChatCommand.java +++ b/src/me/ryandw11/ultrachat/commands/ChatCommand.java @@ -258,7 +258,7 @@ public class ChatCommand implements CommandExecutor { } else if(args.length == 1 && args[0].equalsIgnoreCase("hooks")){ if(p.hasPermission("ultrachat.hooks")){ - UltraChatAPI uapi = new UltraChatAPI(plugin); + UltraChatAPI uapi = new UltraChatAPI(); p.sendMessage(ChatColor.BLUE + "Ultra Chat Hooks:"); if(uapi.getActiveHooks() == null){ p.sendMessage(ChatColor.GREEN + "No hooks are currently active!"); diff --git a/src/me/ryandw11/ultrachat/commands/Global.java b/src/me/ryandw11/ultrachat/commands/Global.java index 8050847..cbe210e 100644 --- a/src/me/ryandw11/ultrachat/commands/Global.java +++ b/src/me/ryandw11/ultrachat/commands/Global.java @@ -10,10 +10,10 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import me.ryandw11.ultrachat.UltraChat; -import me.ryandw11.ultrachat.api.GlobalChatEvent; import me.ryandw11.ultrachat.api.JSON; import me.ryandw11.ultrachat.api.Lang; import me.ryandw11.ultrachat.api.UltraChatAPI; +import me.ryandw11.ultrachat.api.events.GlobalChatEvent; import me.ryandw11.ultrachat.formatting.PlayerFormatting; public class Global implements CommandExecutor { @@ -34,7 +34,7 @@ public class Global implements CommandExecutor { p.sendMessage(Lang.NO_PERM.toString()); return true; } - UltraChatAPI uapi = new UltraChatAPI(plugin); + UltraChatAPI uapi = new UltraChatAPI(); PlayerFormatting pf = new PlayerFormatting(p); if(!uapi.isRangeJson()){ GlobalChatEvent e = new GlobalChatEvent(p, this.getMessage(args, p)); diff --git a/src/me/ryandw11/ultrachat/commands/World.java b/src/me/ryandw11/ultrachat/commands/World.java index b57e245..3cd8305 100644 --- a/src/me/ryandw11/ultrachat/commands/World.java +++ b/src/me/ryandw11/ultrachat/commands/World.java @@ -14,7 +14,7 @@ import me.ryandw11.ultrachat.UltraChat; import me.ryandw11.ultrachat.api.JSON; import me.ryandw11.ultrachat.api.Lang; import me.ryandw11.ultrachat.api.UltraChatAPI; -import me.ryandw11.ultrachat.api.WorldChatEvent; +import me.ryandw11.ultrachat.api.events.WorldChatEvent; import me.ryandw11.ultrachat.formatting.PlayerFormatting; public class World implements CommandExecutor { @@ -35,7 +35,7 @@ public class World implements CommandExecutor { p.sendMessage(Lang.NO_PERM.toString()); return true; } - UltraChatAPI uapi = new UltraChatAPI(plugin); + UltraChatAPI uapi = new UltraChatAPI(); PlayerFormatting pf = new PlayerFormatting(p); if(!uapi.isRangeJson()){ WorldChatEvent e = new WorldChatEvent(p, this.getMessage(args, p), new HashSet( p.getWorld().getPlayers())); diff --git a/src/me/ryandw11/ultrachat/formatting/Chat_Json.java b/src/me/ryandw11/ultrachat/formatting/Chat_Json.java index 244d222..54cccee 100644 --- a/src/me/ryandw11/ultrachat/formatting/Chat_Json.java +++ b/src/me/ryandw11/ultrachat/formatting/Chat_Json.java @@ -11,7 +11,7 @@ import org.bukkit.event.player.AsyncPlayerChatEvent; import me.ryandw11.ultrachat.UltraChat; import me.ryandw11.ultrachat.api.JSON; -import me.ryandw11.ultrachat.api.JsonChatEvent; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; /** * If JSON is enabled. * @author Ryandw11 diff --git a/src/me/ryandw11/ultrachat/formatting/PlayerFormatting.java b/src/me/ryandw11/ultrachat/formatting/PlayerFormatting.java index 892338d..2a86e37 100644 --- a/src/me/ryandw11/ultrachat/formatting/PlayerFormatting.java +++ b/src/me/ryandw11/ultrachat/formatting/PlayerFormatting.java @@ -14,6 +14,11 @@ import net.md_5.bungee.api.ChatColor; */ public class PlayerFormatting { private UltraChat plugin; + + /** + * Get the formatting for a player. + * @param p + */ public PlayerFormatting(Player p){ plugin = UltraChat.plugin; @@ -27,6 +32,25 @@ public class PlayerFormatting { local = PlaceholderAPI.setPlaceholders(p, ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("Local.format"))); } + /** + * Get the formatting for an offline player. + *

Note: Placeholders will not work in this mode.

+ * @param op The offline player + * @param worldname The name of the world to get the preffix and suffix from. + * @since 2.3.3 + */ + public PlayerFormatting(OfflinePlayer op, String worldname) { + plugin = UltraChat.plugin; + color = ChatColor.translateAlternateColorCodes('&', plugin.data.getString(op.getUniqueId() + ".color")); + prefix = ChatColor.translateAlternateColorCodes('&', plugin.chat.getPlayerPrefix(worldname, op)); + suffix = ChatColor.translateAlternateColorCodes('&', plugin.chat.getPlayerSuffix(worldname, op)); + formatOp = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("Custom_Chat.Op_Chat.Format")); + defaults = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("Custom_Chat.Default_Chat.Format")); + global = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("Global.format")); + world = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("World.format")); + local = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("Local.format")); + } + private String prefix; private String suffix; public String color; diff --git a/src/me/ryandw11/ultrachat/formatting/Range.java b/src/me/ryandw11/ultrachat/formatting/Range.java index 3a4ac86..16e7c87 100644 --- a/src/me/ryandw11/ultrachat/formatting/Range.java +++ b/src/me/ryandw11/ultrachat/formatting/Range.java @@ -14,8 +14,8 @@ import org.bukkit.event.player.AsyncPlayerChatEvent; import me.ryandw11.ultrachat.UltraChat; import me.ryandw11.ultrachat.api.JSON; -import me.ryandw11.ultrachat.api.JsonChatEvent; import me.ryandw11.ultrachat.api.UltraChatAPI; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; public class Range implements Listener{ private UltraChat plugin; @@ -28,7 +28,7 @@ public class Range implements Listener{ public void onChat(AsyncPlayerChatEvent e){ Player p = e.getPlayer(); PlayerFormatting pf = new PlayerFormatting(p); - UltraChatAPI uapi = new UltraChatAPI(plugin); + UltraChatAPI uapi = new UltraChatAPI(); if(p.hasPermission("ultrachat.chat.color")){ e.setMessage(ChatColor.translateAlternateColorCodes('&', e.getMessage())); } diff --git a/src/me/ryandw11/ultrachat/listner/ConsoleLogChat.java b/src/me/ryandw11/ultrachat/listner/ConsoleLogChat.java index bf5810b..4794f41 100644 --- a/src/me/ryandw11/ultrachat/listner/ConsoleLogChat.java +++ b/src/me/ryandw11/ultrachat/listner/ConsoleLogChat.java @@ -6,8 +6,8 @@ import org.bukkit.Bukkit; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; -import me.ryandw11.ultrachat.api.JsonChatEvent; import me.ryandw11.ultrachat.api.Lang; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; public class ConsoleLogChat implements Listener{ diff --git a/src/me/ryandw11/ultrachat/listner/NoSwear.java b/src/me/ryandw11/ultrachat/listner/NoSwear.java index 1b6b186..fe358ad 100644 --- a/src/me/ryandw11/ultrachat/listner/NoSwear.java +++ b/src/me/ryandw11/ultrachat/listner/NoSwear.java @@ -3,8 +3,8 @@ package me.ryandw11.ultrachat.listner; import java.util.List; import me.ryandw11.ultrachat.UltraChat; -import me.ryandw11.ultrachat.api.JsonChatEvent; import me.ryandw11.ultrachat.api.Lang; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; diff --git a/src/me/ryandw11/ultrachat/listner/Notify.java b/src/me/ryandw11/ultrachat/listner/Notify.java index 85d1c8b..546fb6c 100644 --- a/src/me/ryandw11/ultrachat/listner/Notify.java +++ b/src/me/ryandw11/ultrachat/listner/Notify.java @@ -8,8 +8,8 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.AsyncPlayerChatEvent; import me.ryandw11.ultrachat.UltraChat; -import me.ryandw11.ultrachat.api.JsonChatEvent; import me.ryandw11.ultrachat.api.Lang; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; /** * * @author Ryandw11 diff --git a/src/me/ryandw11/ultrachat/listner/Notify_1_12.java b/src/me/ryandw11/ultrachat/listner/Notify_1_12.java index b460c8c..a600a7a 100644 --- a/src/me/ryandw11/ultrachat/listner/Notify_1_12.java +++ b/src/me/ryandw11/ultrachat/listner/Notify_1_12.java @@ -7,8 +7,8 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.AsyncPlayerChatEvent; import me.ryandw11.ultrachat.UltraChat; -import me.ryandw11.ultrachat.api.JsonChatEvent; import me.ryandw11.ultrachat.api.Lang; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; /** * For 1.12 and below servers. diff --git a/src/me/ryandw11/ultrachat/listner/StopChat.java b/src/me/ryandw11/ultrachat/listner/StopChat.java index 8be8ffd..008569c 100644 --- a/src/me/ryandw11/ultrachat/listner/StopChat.java +++ b/src/me/ryandw11/ultrachat/listner/StopChat.java @@ -6,8 +6,8 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.AsyncPlayerChatEvent; import me.ryandw11.ultrachat.UltraChat; -import me.ryandw11.ultrachat.api.JsonChatEvent; import me.ryandw11.ultrachat.api.Lang; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; /** * Prevent players from chatting when the chat is stopped. * @author Ryandw11 diff --git a/src/me/ryandw11/ultrachat/pluginhooks/AdvancedBanMute.java b/src/me/ryandw11/ultrachat/pluginhooks/AdvancedBanMute.java index d3fcf45..66878f4 100644 --- a/src/me/ryandw11/ultrachat/pluginhooks/AdvancedBanMute.java +++ b/src/me/ryandw11/ultrachat/pluginhooks/AdvancedBanMute.java @@ -6,9 +6,9 @@ import org.bukkit.event.Listener; import me.leoko.advancedban.manager.PunishmentManager; import me.leoko.advancedban.manager.UUIDManager; -import me.ryandw11.ultrachat.api.GlobalChatEvent; -import me.ryandw11.ultrachat.api.JsonChatEvent; -import me.ryandw11.ultrachat.api.WorldChatEvent; +import me.ryandw11.ultrachat.api.events.GlobalChatEvent; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; +import me.ryandw11.ultrachat.api.events.WorldChatEvent; public class AdvancedBanMute implements Listener{ diff --git a/src/me/ryandw11/ultrachat/pluginhooks/EssentialsMute.java b/src/me/ryandw11/ultrachat/pluginhooks/EssentialsMute.java index b43f131..11f45e0 100644 --- a/src/me/ryandw11/ultrachat/pluginhooks/EssentialsMute.java +++ b/src/me/ryandw11/ultrachat/pluginhooks/EssentialsMute.java @@ -6,9 +6,10 @@ import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import com.earth2me.essentials.Essentials; -import me.ryandw11.ultrachat.api.GlobalChatEvent; -import me.ryandw11.ultrachat.api.JsonChatEvent; -import me.ryandw11.ultrachat.api.WorldChatEvent; + +import me.ryandw11.ultrachat.api.events.GlobalChatEvent; +import me.ryandw11.ultrachat.api.events.JsonChatEvent; +import me.ryandw11.ultrachat.api.events.WorldChatEvent; public class EssentialsMute implements Listener{