diff --git a/src/com/loohp/interactivechat/Commands.java b/src/com/loohp/interactivechat/Commands.java index 34d0f34c..b8b8a2b4 100644 --- a/src/com/loohp/interactivechat/Commands.java +++ b/src/com/loohp/interactivechat/Commands.java @@ -1,4 +1,4 @@ -package com.loohp.interactivechat; + package com.loohp.interactivechat; import java.util.ArrayList; import java.util.List; @@ -10,7 +10,6 @@ import org.bukkit.command.TabCompleter; import org.bukkit.entity.Player; import org.bukkit.inventory.Inventory; -import org.bukkit.scheduler.BukkitRunnable; import com.loohp.interactivechat.Updater.Updater; import com.loohp.interactivechat.Utils.MaterialUtils; @@ -48,16 +47,14 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String if (sender.hasPermission("interactivechat.update")) { sender.sendMessage(ChatColor.AQUA + "[InteractiveChat] InteractiveChat written by LOOHP!"); sender.sendMessage(ChatColor.GOLD + "[InteractiveChat] You are running InteractiveChat version: " + InteractiveChat.plugin.getDescription().getVersion()); - new BukkitRunnable() { - public void run() { - String version = Updater.checkUpdate(); - if (version.equals("latest")) { - sender.sendMessage(ChatColor.GREEN + "[InteractiveChat] You are running the latest version!"); - } else { - Updater.sendUpdateMessage(version); - } + Bukkit.getScheduler().runTaskAsynchronously(InteractiveChat.plugin, () -> { + String version = Updater.checkUpdate(); + if (version.equals("latest")) { + sender.sendMessage(ChatColor.GREEN + "[InteractiveChat] You are running the latest version!"); + } else { + Updater.sendUpdateMessage(version); } - }.runTaskAsynchronously(InteractiveChat.plugin); + }); } else { sender.sendMessage(InteractiveChat.NoPermission); } @@ -107,7 +104,8 @@ public List onTabComplete(CommandSender sender, Command cmd, String labe return tab; } - if (args.length <= 1) { + switch (args.length) { + case 0: if (sender.hasPermission("interactivechat.reload")) { tab.add("reload"); } @@ -115,8 +113,21 @@ public List onTabComplete(CommandSender sender, Command cmd, String labe tab.add("update"); } return tab; + case 1: + if (sender.hasPermission("interactivechat.reload")) { + if ("reload".startsWith(args[0].toLowerCase())) { + tab.add("reload"); + } + } + if (sender.hasPermission("interactivechat.update")) { + if ("update".startsWith(args[0].toLowerCase())) { + tab.add("update"); + } + } + return tab; + default: + return tab; } - return tab; } } diff --git a/src/com/loohp/interactivechat/ConfigManager.java b/src/com/loohp/interactivechat/ConfigManager.java index febf96d8..abc903e7 100644 --- a/src/com/loohp/interactivechat/ConfigManager.java +++ b/src/com/loohp/interactivechat/ConfigManager.java @@ -25,7 +25,9 @@ public static void reloadConfig() { loadConfig(); } - public static void loadConfig() { + public static void loadConfig() { + InteractiveChat.aliasesMapping.clear(); + InteractiveChat.FilterUselessColorCodes = getConfig().getBoolean("Settings.FilterUselessColorCodes"); InteractiveChat.AllowMention = getConfig().getBoolean("Chat.AllowMention"); @@ -46,6 +48,19 @@ public static void loadConfig() { InteractiveChat.invPlaceholder = ChatColor.translateAlternateColorCodes('&', getConfig().getString("ItemDisplay.Inventory.Keyword")); InteractiveChat.enderPlaceholder = ChatColor.translateAlternateColorCodes('&', getConfig().getString("ItemDisplay.EnderChest.Keyword")); + for (String alias : getConfig().getStringList("ItemDisplay.Item.Aliases")) { + alias = ChatColor.translateAlternateColorCodes('&', alias); + InteractiveChat.aliasesMapping.put(alias, InteractiveChat.itemPlaceholder); + } + for (String alias : getConfig().getStringList("ItemDisplay.Inventory.Aliases")) { + alias = ChatColor.translateAlternateColorCodes('&', alias); + InteractiveChat.aliasesMapping.put(alias, InteractiveChat.invPlaceholder); + } + for (String alias : getConfig().getStringList("ItemDisplay.EnderChest.Aliases")) { + alias = ChatColor.translateAlternateColorCodes('&', alias); + InteractiveChat.aliasesMapping.put(alias, InteractiveChat.enderPlaceholder); + } + InteractiveChat.itemReplaceText = ChatColor.translateAlternateColorCodes('&', getConfig().getString("ItemDisplay.Item.Text")); InteractiveChat.invReplaceText = ChatColor.translateAlternateColorCodes('&', getConfig().getString("ItemDisplay.Inventory.Text")); InteractiveChat.enderReplaceText = ChatColor.translateAlternateColorCodes('&', getConfig().getString("ItemDisplay.EnderChest.Text")); @@ -86,7 +101,12 @@ public static void loadConfig() { InteractiveChat.placeholderList.add(InteractiveChat.enderPlaceholder); } for (int customNo = 1; getConfig().contains("CustomPlaceholders." + String.valueOf(customNo)) == true; customNo = customNo + 1) { - InteractiveChat.placeholderList.add(getConfig().getString("CustomPlaceholders." + String.valueOf(customNo) + ".Text")); + String placeholder = getConfig().getString("CustomPlaceholders." + String.valueOf(customNo) + ".Text"); + InteractiveChat.placeholderList.add(placeholder); + for (String alias : getConfig().getStringList("CustomPlaceholders." + String.valueOf(customNo) + ".Aliases")) { + alias = ChatColor.translateAlternateColorCodes('&', alias); + InteractiveChat.aliasesMapping.put(alias, placeholder); + } } InteractiveChat.commandList = getConfig().getStringList("Settings.CommandsToParse"); diff --git a/src/com/loohp/interactivechat/Hooks/EssentialsHook.java b/src/com/loohp/interactivechat/Hooks/EssentialsNicknames.java similarity index 97% rename from src/com/loohp/interactivechat/Hooks/EssentialsHook.java rename to src/com/loohp/interactivechat/Hooks/EssentialsNicknames.java index e4da621b..a71c8fdf 100644 --- a/src/com/loohp/interactivechat/Hooks/EssentialsHook.java +++ b/src/com/loohp/interactivechat/Hooks/EssentialsNicknames.java @@ -14,7 +14,7 @@ import net.ess3.api.events.NickChangeEvent; -public class EssentialsHook implements Listener { +public class EssentialsNicknames implements Listener { private static Essentials essen; private static String prefix; diff --git a/src/com/loohp/interactivechat/InteractiveChat.java b/src/com/loohp/interactivechat/InteractiveChat.java index 187d0cc1..d5e42e44 100644 --- a/src/com/loohp/interactivechat/InteractiveChat.java +++ b/src/com/loohp/interactivechat/InteractiveChat.java @@ -5,7 +5,6 @@ import java.util.HashSet; import java.util.List; import java.util.UUID; -import java.util.concurrent.Callable; import org.bukkit.Bukkit; import org.bukkit.ChatColor; @@ -18,11 +17,12 @@ import com.comphenix.protocol.ProtocolLibrary; import com.comphenix.protocol.ProtocolManager; import com.loohp.interactivechat.Debug.Debug; -import com.loohp.interactivechat.Hooks.EssentialsHook; +import com.loohp.interactivechat.Hooks.EssentialsNicknames; import com.loohp.interactivechat.Listeners.ChatPackets; import com.loohp.interactivechat.Listeners.Events; +import com.loohp.interactivechat.Metrics.Charts; import com.loohp.interactivechat.Metrics.Metrics; -import com.loohp.interactivechat.ObjectHolders.CommandPlaceholderGroup; +import com.loohp.interactivechat.ObjectHolders.CommandPlaceholderInfo; import com.loohp.interactivechat.Utils.MaterialUtils; import com.loohp.interactivechat.Utils.RarityUtils; @@ -37,8 +37,8 @@ public class InteractiveChat extends JavaPlugin { public static String space0 = "\u200B"; public static String space1 = "\u200A"; - public static boolean ess3 = false; - public static boolean cm = false; + public static boolean EssentialsHook = false; + public static boolean ChatManagerHook = false; public static boolean useItem = true; public static boolean useInventory = true; @@ -109,14 +109,16 @@ public class InteractiveChat extends JavaPlugin { public static long mentionDuration = 2; public static List commandList = new ArrayList(); - public static HashMap commandPlaceholderMatch = new HashMap(); - - public static boolean UpdaterEnabled = true; - public static int UpdaterTaskID = -1; + public static HashMap commandPlaceholderMatch = new HashMap(); public static HashMap essenNick = new HashMap(); public static boolean FilterUselessColorCodes = true; + + public static HashMap aliasesMapping = new HashMap(); + + public static boolean UpdaterEnabled = true; + public static int UpdaterTaskID = -1; @Override public void onEnable() { @@ -160,8 +162,7 @@ public void onEnable() { } else if (packageName.contains("1_8_R1")) { version = "OLDlegacy1.8"; } else { - getServer().getConsoleSender().sendMessage(ChatColor.RED + "This version of minecraft is unsupported!"); - plugin.getPluginLoader().disablePlugin(this); + getServer().getConsoleSender().sendMessage(ChatColor.RED + "[InteractiveChat] This version of minecraft is unsupported!"); } getCommand("interactivechat").setExecutor(new Commands()); @@ -172,28 +173,23 @@ public void onEnable() { ChatPackets.chatMessageListener(); if (Bukkit.getServer().getPluginManager().getPlugin("Essentials") != null) { - getServer().getConsoleSender().sendMessage(ChatColor.AQUA + "Interactive Chat has hooked into Essentials!"); - ess3 = true; - getServer().getPluginManager().registerEvents(new EssentialsHook(), this); - EssentialsHook.setup(); + getServer().getConsoleSender().sendMessage(ChatColor.AQUA + "[InteractiveChat] InteractiveChat has hooked into Essentials!"); + EssentialsHook = true; + getServer().getPluginManager().registerEvents(new EssentialsNicknames(), this); + EssentialsNicknames.setup(); } if (Bukkit.getServer().getPluginManager().getPlugin("ChatManager") != null) { - getServer().getConsoleSender().sendMessage(ChatColor.AQUA + "Interactive Chat has hooked into ChatManager!"); - cm = true; + getServer().getConsoleSender().sendMessage(ChatColor.AQUA + "[InteractiveChat] InteractiveChat has hooked into ChatManager!"); + ChatManagerHook = true; } MaterialUtils.setupLang(); RarityUtils.setupRarity(); - metrics.addCustomChart(new Metrics.SingleLineChart("total_placeholders", new Callable() { - @Override - public Integer call() throws Exception { - return InteractiveChat.placeholderList.size(); - } - })); + Charts.setup(metrics); - getServer().getConsoleSender().sendMessage(ChatColor.GREEN + "InteractiveChat has been Enabled!"); + getServer().getConsoleSender().sendMessage(ChatColor.GREEN + "[InteractiveChat] InteractiveChat has been Enabled!"); for (Player player : Bukkit.getOnlinePlayers()) { InteractiveChat.mentionCooldown.put(player, (System.currentTimeMillis() - 3000)); @@ -202,6 +198,6 @@ public Integer call() throws Exception { @Override public void onDisable() { - getServer().getConsoleSender().sendMessage(ChatColor.RED + "InteractiveChat has been Disabled!"); + getServer().getConsoleSender().sendMessage(ChatColor.RED + "[InteractiveChat] InteractiveChat has been Disabled!"); } } \ No newline at end of file diff --git a/src/com/loohp/interactivechat/Listeners/Events.java b/src/com/loohp/interactivechat/Listeners/Events.java index 1e28ad5f..35f4cf7a 100644 --- a/src/com/loohp/interactivechat/Listeners/Events.java +++ b/src/com/loohp/interactivechat/Listeners/Events.java @@ -17,7 +17,7 @@ import org.bukkit.event.player.PlayerQuitEvent; import com.loohp.interactivechat.InteractiveChat; -import com.loohp.interactivechat.ObjectHolders.CommandPlaceholderGroup; +import com.loohp.interactivechat.ObjectHolders.CommandPlaceholderInfo; import com.loohp.interactivechat.Utils.CustomStringUtils; import com.loohp.interactivechat.Utils.MessageUtils; @@ -32,7 +32,7 @@ public void onJoin(PlayerJoinEvent event) { } @EventHandler - public void onJoin(PlayerQuitEvent event) { + public void onLeave(PlayerQuitEvent event) { InteractiveChat.mentionCooldown.remove(event.getPlayer()); } @@ -47,7 +47,7 @@ public void onCommand(PlayerCommandPreprocessEvent event) { String regexPlaceholder = CustomStringUtils.escapeMetaCharacters(placeholder); String uuidmatch = "<" + UUID.randomUUID().toString() + ">"; command = command.replaceFirst(regexPlaceholder, uuidmatch); - InteractiveChat.commandPlaceholderMatch.put(uuidmatch, new CommandPlaceholderGroup(event.getPlayer(), placeholder, uuidmatch, InteractiveChat.commandPlaceholderMatch)); + InteractiveChat.commandPlaceholderMatch.put(uuidmatch, new CommandPlaceholderInfo(event.getPlayer(), placeholder, uuidmatch, InteractiveChat.commandPlaceholderMatch)); event.setMessage(command); break; } @@ -62,7 +62,7 @@ public void checkChat(AsyncPlayerChatEvent event) { if (event.isCancelled()) { return; } - if (InteractiveChat.cm) { + if (InteractiveChat.ChatManagerHook) { return; } @@ -97,7 +97,7 @@ public void checkChatforChatManager(AsyncPlayerChatEvent event) { if (event.isCancelled()) { return; } - if (!InteractiveChat.cm) { + if (!InteractiveChat.ChatManagerHook) { return; } @@ -138,7 +138,7 @@ public void onMention(AsyncPlayerChatEvent event) { if (!player.getName().equals(player.getDisplayName())) { playernames.add(player.getDisplayName()); } - if (InteractiveChat.ess3 == true) { + if (InteractiveChat.EssentialsHook == true) { if (InteractiveChat.essenNick.containsKey(player)) { playernames.add(InteractiveChat.essenNick.get(player)); } diff --git a/src/com/loohp/interactivechat/Metrics/Charts.java b/src/com/loohp/interactivechat/Metrics/Charts.java new file mode 100644 index 00000000..5b3a35f8 --- /dev/null +++ b/src/com/loohp/interactivechat/Metrics/Charts.java @@ -0,0 +1,20 @@ +package com.loohp.interactivechat.Metrics; + +import java.util.concurrent.Callable; + +import com.loohp.interactivechat.InteractiveChat; + +public class Charts { + + public static void setup(Metrics metrics) { + + metrics.addCustomChart(new Metrics.SingleLineChart("total_placeholders", new Callable() { + @Override + public Integer call() throws Exception { + return InteractiveChat.placeholderList.size(); + } + })); + + } + +} diff --git a/src/com/loohp/interactivechat/Modules/MentionDisplay.java b/src/com/loohp/interactivechat/Modules/MentionDisplay.java index bbd57731..c4053d1f 100644 --- a/src/com/loohp/interactivechat/Modules/MentionDisplay.java +++ b/src/com/loohp/interactivechat/Modules/MentionDisplay.java @@ -62,7 +62,7 @@ public static BaseComponent process(BaseComponent basecomponent, Player beenping if (!names.contains(reciever.getName())) { names.add(reciever.getName()); } - if (InteractiveChat.ess3) { + if (InteractiveChat.EssentialsHook) { if (InteractiveChat.essenNick.containsKey(reciever)) { names.add(InteractiveChat.essenNick.get(reciever)); } diff --git a/src/com/loohp/interactivechat/Modules/PlayernameDisplay.java b/src/com/loohp/interactivechat/Modules/PlayernameDisplay.java index 172986fd..19b3028a 100644 --- a/src/com/loohp/interactivechat/Modules/PlayernameDisplay.java +++ b/src/com/loohp/interactivechat/Modules/PlayernameDisplay.java @@ -33,7 +33,7 @@ public class PlayernameDisplay { public static BaseComponent process(BaseComponent basecomponent, String messageKey, long unix) { HashMap names = new HashMap(); Bukkit.getOnlinePlayers().forEach((each) -> names.put(each.getName(), each)); - if (InteractiveChat.ess3) { + if (InteractiveChat.EssentialsHook) { InteractiveChat.essenNick.forEach((player, name) -> names.put(name, player)); } diff --git a/src/com/loohp/interactivechat/Modules/ProcessCommands.java b/src/com/loohp/interactivechat/Modules/ProcessCommands.java index b49d819f..1e64da45 100644 --- a/src/com/loohp/interactivechat/Modules/ProcessCommands.java +++ b/src/com/loohp/interactivechat/Modules/ProcessCommands.java @@ -7,7 +7,7 @@ import org.bukkit.entity.Player; import com.loohp.interactivechat.InteractiveChat; -import com.loohp.interactivechat.ObjectHolders.CommandPlaceholderGroup; +import com.loohp.interactivechat.ObjectHolders.CommandPlaceholderInfo; import com.loohp.interactivechat.ObjectHolders.ProcessCommandsReturn; import com.loohp.interactivechat.Utils.CustomStringUtils; @@ -28,7 +28,7 @@ public static ProcessCommandsReturn process(BaseComponent basecomponent) { TextComponent textcomponent = (TextComponent) base; String text = textcomponent.getText(); boolean contains = false; - for (Entry entry : InteractiveChat.commandPlaceholderMatch.entrySet()) { + for (Entry entry : InteractiveChat.commandPlaceholderMatch.entrySet()) { if (text.contains(entry.getKey())) { String newText = text.replace(entry.getKey(), entry.getValue().getPlaceholder()); textcomponent.setText(newText); diff --git a/src/com/loohp/interactivechat/Modules/SenderFinder.java b/src/com/loohp/interactivechat/Modules/SenderFinder.java index 09c48050..094ac1c9 100644 --- a/src/com/loohp/interactivechat/Modules/SenderFinder.java +++ b/src/com/loohp/interactivechat/Modules/SenderFinder.java @@ -59,7 +59,7 @@ public static Optional getSender(BaseComponent basecomponent, String mes HashMap names = new HashMap(); Bukkit.getOnlinePlayers().forEach((each) -> names.put(each.getName(), each)); - if (InteractiveChat.ess3) { + if (InteractiveChat.EssentialsHook) { InteractiveChat.essenNick.forEach((player, name) -> names.put(name, player)); } diff --git a/src/com/loohp/interactivechat/ObjectHolders/CommandPlaceholderGroup.java b/src/com/loohp/interactivechat/ObjectHolders/CommandPlaceholderInfo.java similarity index 76% rename from src/com/loohp/interactivechat/ObjectHolders/CommandPlaceholderGroup.java rename to src/com/loohp/interactivechat/ObjectHolders/CommandPlaceholderInfo.java index c554f56e..8bad41b8 100644 --- a/src/com/loohp/interactivechat/ObjectHolders/CommandPlaceholderGroup.java +++ b/src/com/loohp/interactivechat/ObjectHolders/CommandPlaceholderInfo.java @@ -8,14 +8,14 @@ import com.loohp.interactivechat.InteractiveChat; -public class CommandPlaceholderGroup { +public class CommandPlaceholderInfo { String placeholder; String uuidmatch; UUID sender; - HashMap map; + HashMap map; - public CommandPlaceholderGroup(Player sender, String placeholder, String uuidmatch, HashMap mapToRemoveFrom) { + public CommandPlaceholderInfo(Player sender, String placeholder, String uuidmatch, HashMap mapToRemoveFrom) { this.placeholder = placeholder; this.uuidmatch = uuidmatch; this.sender = sender.getUniqueId(); diff --git a/src/com/loohp/interactivechat/Updater/Updater.java b/src/com/loohp/interactivechat/Updater/Updater.java index 30a2f99d..8e4bf4af 100644 --- a/src/com/loohp/interactivechat/Updater/Updater.java +++ b/src/com/loohp/interactivechat/Updater/Updater.java @@ -8,7 +8,6 @@ import org.bukkit.Bukkit; import org.bukkit.entity.Player; -import org.bukkit.scheduler.BukkitRunnable; import com.loohp.interactivechat.InteractiveChat; @@ -21,17 +20,15 @@ public class Updater { public static void updaterInterval() { - InteractiveChat.UpdaterTaskID = new BukkitRunnable() { - public void run() { - int minute = LocalDateTime.now().getMinute(); - if (minute == 0 || minute == 30) { - String version = Updater.checkUpdate(); - if (!version.equals("latest")) { - Updater.sendUpdateMessage(version); - } + InteractiveChat.UpdaterTaskID = Bukkit.getScheduler().runTaskTimerAsynchronously(InteractiveChat.plugin, () -> { + int minute = LocalDateTime.now().getMinute(); + if (minute == 0 || minute == 30) { + String version = Updater.checkUpdate(); + if (!version.equals("latest")) { + Updater.sendUpdateMessage(version); } } - }.runTaskTimerAsynchronously(InteractiveChat.plugin, 500, 1190).getTaskId(); + }, 500, 1190).getTaskId(); } public static void sendUpdateMessage(String version) { @@ -65,10 +62,8 @@ public static String checkUpdate() { return "error"; } - public static String readStringFromURL(String requestURL) throws IOException - { - try (Scanner scanner = new Scanner(new URL(requestURL).openStream(), StandardCharsets.UTF_8.toString())) - { + public static String readStringFromURL(String requestURL) throws IOException { + try (Scanner scanner = new Scanner(new URL(requestURL).openStream(), StandardCharsets.UTF_8.toString())) { scanner.useDelimiter("\\A"); return scanner.hasNext() ? scanner.next() : ""; } diff --git a/src/com/loohp/interactivechat/Utils/MessageUtils.java b/src/com/loohp/interactivechat/Utils/MessageUtils.java index 9e8c2c40..f7356280 100644 --- a/src/com/loohp/interactivechat/Utils/MessageUtils.java +++ b/src/com/loohp/interactivechat/Utils/MessageUtils.java @@ -5,7 +5,7 @@ import net.md_5.bungee.api.ChatColor; public class MessageUtils { - + public static String preprocessMessage(String message) { for (String placeholder : InteractiveChat.placeholderList) { if (ChatColor.stripColor(message).contains(placeholder)) { @@ -14,6 +14,14 @@ public static String preprocessMessage(String message) { message = message.replaceAll(regex, placeholder); } } + for (String placeholder : InteractiveChat.aliasesMapping.keySet()) { + if (ChatColor.stripColor(message).contains(placeholder)) { + String regex = CustomStringUtils.escapeMetaCharacters(placeholder); + regex = regex.replaceAll("\\\\?.", "(?:§.)?(?:$0)"); + message = message.replaceAll(regex, placeholder); + } + message = message.replaceAll(CustomStringUtils.escapeMetaCharacters(placeholder), InteractiveChat.aliasesMapping.get(placeholder)); + } return message; } diff --git a/src/config.yml b/src/config.yml index e0de31e1..0d4efa7b 100644 --- a/src/config.yml +++ b/src/config.yml @@ -103,6 +103,8 @@ ItemDisplay: CaseSensitive: false #The keyword to trigger the item display function Keyword: "[item]" + Aliases: + - "[i]" #The text to replace the keyword #Special Placeholders: #Use {Item} for item display name @@ -127,6 +129,8 @@ ItemDisplay: CaseSensitive: false #The keyword to trigger the inventory display function Keyword: "[inv]" + Aliases: + - "[inventory]" #The text to replace the keyword Text: "&f[&b%player_name%'s Inventory&f]" #The title of the inventory view @@ -144,6 +148,8 @@ ItemDisplay: CaseSensitive: false #The keyword to trigger the ender chest display function Keyword: "[ender]" + Aliases: + - "[e]" #The text to replace the keyword Text: "&f[&d%player_name%'s Ender Chest&f]" #The title of the ender chest inventory view @@ -192,6 +198,8 @@ CustomPlaceholders: ParsePlayer: sender #The keyword to look for in the chat Text: "[money]" + Aliases: + - "[m]" #Parse Placeholders in the keyword text ParseKeyword: false #Whether or the keyword check is case sensitive @@ -231,6 +239,7 @@ CustomPlaceholders: '2': ParsePlayer: viewer Text: "SunKnights" + Aliases: [] ParseKeyword: false CaseSensitive: false Cooldown: 0 @@ -249,6 +258,7 @@ CustomPlaceholders: '3': ParsePlayer: sender Text: "[gametime]" + Aliases: [] ParseKeyword: false CaseSensitive: true Cooldown: 0 @@ -265,6 +275,7 @@ CustomPlaceholders: '4': ParsePlayer: viewer Text: "[Hover]" + Aliases: [] ParseKeyword: false CaseSensitive: false Cooldown: 0 diff --git a/src/plugin.yml b/src/plugin.yml index 8c4f4316..a1b83859 100644 --- a/src/plugin.yml +++ b/src/plugin.yml @@ -1,6 +1,6 @@ name: InteractiveChat author: loohp -version: 2.1.1 +version: 2.1.2 main: com.loohp.interactivechat.InteractiveChat api-version: 1.13 description: Make the chat interactive