From ee4968b309023adaf958b05fd0b1a5de2186737a Mon Sep 17 00:00:00 2001
From: ryandw11 <>
Date: Tue, 23 Apr 2019 21:06:37 -0700
Subject: [PATCH] 1.14 Update
Updated the plugin to support 1.14
---
.classpath | 2 +-
plugin.yml | 2 +-
src/me/ryandw11/ultrachat/UltraChat.java | 22 +-
.../ultrachat/api/GlobalChatEvent.java | 1 +
.../ryandw11/ultrachat/api/JsonChatEvent.java | 1 +
.../ultrachat/api/WorldChatEvent.java | 1 +
.../ultrachat/gui/ColorGUI_1_13_R2.java | 355 ++++++++++++++++++
.../ultrachat/gui/ColorGUI_Latest.java | 26 +-
8 files changed, 397 insertions(+), 13 deletions(-)
create mode 100644 src/me/ryandw11/ultrachat/gui/ColorGUI_1_13_R2.java
diff --git a/.classpath b/.classpath
index 72ae891..fecb8aa 100644
--- a/.classpath
+++ b/.classpath
@@ -6,10 +6,10 @@
-
+
diff --git a/plugin.yml b/plugin.yml
index ae35ea8..bc2b8d9 100644
--- a/plugin.yml
+++ b/plugin.yml
@@ -1,5 +1,5 @@
name: UltraChat
-version: 2.3.0
+version: 2.3.1-Pre1
main: me.ryandw11.ultrachat.UltraChat
author: Ryandw11
description: A chat formatting plugin.
diff --git a/src/me/ryandw11/ultrachat/UltraChat.java b/src/me/ryandw11/ultrachat/UltraChat.java
index 6346cd5..cb63e99 100644
--- a/src/me/ryandw11/ultrachat/UltraChat.java
+++ b/src/me/ryandw11/ultrachat/UltraChat.java
@@ -21,6 +21,7 @@ import me.ryandw11.ultrachat.formatting.Chat_Json;
import me.ryandw11.ultrachat.formatting.Normal;
import me.ryandw11.ultrachat.formatting.Range;
import me.ryandw11.ultrachat.gui.ColorGUI;
+import me.ryandw11.ultrachat.gui.ColorGUI_1_13_R2;
import me.ryandw11.ultrachat.gui.ColorGUI_Latest;
import me.ryandw11.ultrachat.gui.ColorGUI_Outdated;
import me.ryandw11.ultrachat.listner.ConsoleLogChat;
@@ -45,8 +46,8 @@ import org.bukkit.plugin.java.JavaPlugin;
/**
* Main Class
* @author Ryandw11
- * @version 2.3
- * Updated for 1.13.
+ * @version 2.3.1-Pre1
+ * Updated for 1.14.
* (Very few API methods here)
*/
public class UltraChat extends JavaPlugin{
@@ -362,13 +363,20 @@ public class UltraChat extends JavaPlugin{
} catch (ArrayIndexOutOfBoundsException w0w) {
version = " ";
}
- if (version.equals("v1_13_R2")) {
+ if (version.equals("v1_13_R2") || version.equals("v1_14_R1")) {
Bukkit.getServer().getPluginManager().registerEvents(new Notify(), this);
- colorGUI = new ColorGUI_Latest();
- Bukkit.getServer().getPluginManager().registerEvents(new ColorGUI_Latest(), this);
- if(!(plugin.getConfig().getBoolean("ChatColor_Command")))
- getCommand("color").setExecutor(new ColorGUI_Latest());
+ if(version.equals("v1_13_R2")) {
+ colorGUI = new ColorGUI_1_13_R2();
+ Bukkit.getServer().getPluginManager().registerEvents(new ColorGUI_1_13_R2(), this);
+ if(!(plugin.getConfig().getBoolean("ChatColor_Command")))
+ getCommand("color").setExecutor(new ColorGUI_1_13_R2());
+ }else {
+ colorGUI = new ColorGUI_Latest();
+ Bukkit.getServer().getPluginManager().registerEvents(new ColorGUI_Latest(), this);
+ if(!(plugin.getConfig().getBoolean("ChatColor_Command")))
+ getCommand("color").setExecutor(new ColorGUI_Latest());
+ }
}else {
Bukkit.getServer().getPluginManager().registerEvents(new Notify_1_12(), this);
colorGUI = new ColorGUI_Outdated();
diff --git a/src/me/ryandw11/ultrachat/api/GlobalChatEvent.java b/src/me/ryandw11/ultrachat/api/GlobalChatEvent.java
index 890b584..de34ca2 100644
--- a/src/me/ryandw11/ultrachat/api/GlobalChatEvent.java
+++ b/src/me/ryandw11/ultrachat/api/GlobalChatEvent.java
@@ -16,6 +16,7 @@ public class GlobalChatEvent extends Event {
private boolean cancelled;
public GlobalChatEvent(Player p, String chat) {
+ super(true);
player = p;
this.chat = chat;
}
diff --git a/src/me/ryandw11/ultrachat/api/JsonChatEvent.java b/src/me/ryandw11/ultrachat/api/JsonChatEvent.java
index 697706b..8a5890c 100644
--- a/src/me/ryandw11/ultrachat/api/JsonChatEvent.java
+++ b/src/me/ryandw11/ultrachat/api/JsonChatEvent.java
@@ -18,6 +18,7 @@ public class JsonChatEvent extends Event {
private boolean cancelled;
public JsonChatEvent(Player p, String chat, Set recipients) {
+ super(true);
player = p;
this.chat = chat;
this.recipients = recipients;
diff --git a/src/me/ryandw11/ultrachat/api/WorldChatEvent.java b/src/me/ryandw11/ultrachat/api/WorldChatEvent.java
index d6ce5db..a6e3ef3 100644
--- a/src/me/ryandw11/ultrachat/api/WorldChatEvent.java
+++ b/src/me/ryandw11/ultrachat/api/WorldChatEvent.java
@@ -18,6 +18,7 @@ public class WorldChatEvent extends Event {
private boolean cancelled;
public WorldChatEvent(Player p, String chat, Set recipients) {
+ super(true);
player = p;
this.chat = chat;
this.recipients = recipients;
diff --git a/src/me/ryandw11/ultrachat/gui/ColorGUI_1_13_R2.java b/src/me/ryandw11/ultrachat/gui/ColorGUI_1_13_R2.java
new file mode 100644
index 0000000..d5d1a08
--- /dev/null
+++ b/src/me/ryandw11/ultrachat/gui/ColorGUI_1_13_R2.java
@@ -0,0 +1,355 @@
+package me.ryandw11.ultrachat.gui;
+
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.Material;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandExecutor;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+import org.bukkit.event.inventory.InventoryClickEvent;
+import org.bukkit.inventory.Inventory;
+import org.bukkit.inventory.ItemStack;
+import org.bukkit.inventory.meta.ItemMeta;
+
+import me.ryandw11.ultrachat.UltraChat;
+import me.ryandw11.ultrachat.api.Lang;
+
+/**
+ * ColorGUI class.
+ * Updated for 1.13.
+ * @author Ryandw11
+ *
+ */
+public class ColorGUI_1_13_R2 implements CommandExecutor, Listener, ColorGUI{
+
+ private UltraChat plugin;
+ public ColorGUI_1_13_R2(){
+ plugin = UltraChat.plugin;
+ }
+ public void openGUI(Player p){
+ Inventory i = Bukkit.createInventory(null, 9*2, Lang.COLOR_GUI.toString());
+
+ ItemStack darkblueitem = new ItemStack(Material.BLUE_WOOL);
+ ItemMeta darkbluemeta = darkblueitem.getItemMeta();
+
+ ItemStack greenitem = new ItemStack(Material.GREEN_WOOL);
+ ItemMeta greenmeta = greenitem.getItemMeta();
+
+ ItemStack lightblueitem = new ItemStack(Material.CYAN_WOOL);
+ ItemMeta lightbluemeta = lightblueitem.getItemMeta();
+
+ ItemStack reditem = new ItemStack(Material.RED_WOOL);
+ ItemMeta redmeta = reditem.getItemMeta();
+
+ ItemStack purpleitem = new ItemStack(Material.PURPLE_WOOL);
+ ItemMeta purplemeta = purpleitem.getItemMeta();
+
+ ItemStack golditem = new ItemStack(Material.ORANGE_WOOL);
+ ItemMeta goldmeta = golditem.getItemMeta();
+
+ ItemStack lightgrayitem = new ItemStack(Material.LIGHT_GRAY_WOOL);
+ ItemMeta lightgraymeta = lightgrayitem.getItemMeta();
+
+ ItemStack grayitem = new ItemStack(Material.GRAY_WOOL);
+ ItemMeta graymeta = grayitem.getItemMeta();
+
+ ItemStack blueitem = new ItemStack(Material.LAPIS_BLOCK);
+ ItemMeta bluemeta = blueitem.getItemMeta();
+
+ ItemStack lightgreenitem = new ItemStack(Material.LIME_WOOL);
+ ItemMeta lightgreenmeta = lightgreenitem.getItemMeta();
+
+ ItemStack aquaitem = new ItemStack(Material.LIGHT_BLUE_WOOL);
+ ItemMeta aquameta = aquaitem.getItemMeta();
+
+ ItemStack lightreditem = new ItemStack(Material.PINK_WOOL);
+ ItemMeta lightredmeta = lightreditem.getItemMeta();
+
+ ItemStack pinkitem = new ItemStack(Material.MAGENTA_WOOL);
+ ItemMeta pinkmeta = pinkitem.getItemMeta();
+
+ ItemStack yellowitem = new ItemStack(Material.YELLOW_WOOL);
+ ItemMeta yellowmeta = yellowitem.getItemMeta();
+
+ ItemStack whiteitem = new ItemStack(Material.WHITE_WOOL);
+ ItemMeta whitemeta = whiteitem.getItemMeta();
+
+ //==========================================================
+
+ darkbluemeta.setDisplayName("§1Dark Blue Color Chat");
+ darkblueitem.setItemMeta(darkbluemeta);
+
+ greenmeta.setDisplayName("§2Green Color Chat");
+ greenitem.setItemMeta(greenmeta);
+
+ lightbluemeta.setDisplayName("§3Cyan Color Chat");
+ lightblueitem.setItemMeta(lightbluemeta);
+
+ redmeta.setDisplayName("§4Red Color Chat");
+ reditem.setItemMeta(redmeta);
+
+ purplemeta.setDisplayName("§5Purple Color Chat");
+ purpleitem.setItemMeta(purplemeta);
+
+ goldmeta.setDisplayName("§6Gold Color Chat");
+ golditem.setItemMeta(goldmeta);
+
+ lightgraymeta.setDisplayName("§7Light Gray Color Chat");
+ lightgrayitem.setItemMeta(lightgraymeta);
+
+ graymeta.setDisplayName("§8Gray Color Chat");
+ grayitem.setItemMeta(graymeta);
+
+ bluemeta.setDisplayName("§9Blue Color Chat");
+ blueitem.setItemMeta(bluemeta);
+
+ lightgreenmeta.setDisplayName("§aLight Green Color Chat");
+ lightgreenitem.setItemMeta(lightgreenmeta);
+
+ aquameta.setDisplayName("§bAqua Color Chat");
+ aquaitem.setItemMeta(aquameta);
+
+ lightredmeta.setDisplayName("§cLight Red Color Chat");
+ lightreditem.setItemMeta(lightredmeta);
+
+ pinkmeta.setDisplayName("§dMagenta Color Chat");
+ pinkitem.setItemMeta(pinkmeta);
+
+ yellowmeta.setDisplayName("§eYellow Color Chat");
+ yellowitem.setItemMeta(yellowmeta);
+
+ whitemeta.setDisplayName("§fWhite Color Chat");
+ whiteitem.setItemMeta(whitemeta);
+ //==========================================================
+
+
+ i.setItem(0, darkblueitem);
+ i.setItem(1, greenitem);
+ i.setItem(2, lightblueitem);
+ i.setItem(3, reditem);
+ i.setItem(4, purpleitem);
+ i.setItem(5, golditem);
+ i.setItem(6, lightgrayitem);
+ i.setItem(7, grayitem);
+ i.setItem(8, blueitem);
+ i.setItem(9, lightgreenitem);
+ i.setItem(10, aquaitem);
+ i.setItem(11, lightreditem);
+ i.setItem(12, pinkitem);
+ i.setItem(13, yellowitem);
+ i.setItem(14, whiteitem);
+
+
+ p.openInventory(i);
+ }
+ /*
+ * Command
+ */
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command cmd, String s, String[] args) {
+ if(!(sender instanceof Player)){
+ plugin.getLogger().info("This command is for players only!");
+ return true;
+ }
+ Player p = (Player) sender;
+ if(p.hasPermission("ultrachat.color")){
+ openGUI(p.getPlayer());
+ }
+ else{
+ p.sendMessage(Lang.NO_PERM.toString());
+ }
+ return false;
+
+ }
+ /*
+ * Event
+ */
+
+ @EventHandler
+ public void onInventoryClickEvent(InventoryClickEvent e){
+ if(!e.getInventory().getName().equalsIgnoreCase(Lang.COLOR_GUI.toString())) return;
+
+ Player p = (Player) e.getWhoClicked();
+ e.setCancelled(true);
+
+ if(e.getCurrentItem() == null || e.getCurrentItem().getType() == Material.AIR || !e.getCurrentItem().hasItemMeta()){
+ p.closeInventory();
+ return;
+ }
+ //================
+ ItemStack item = e.getCurrentItem();
+
+ switch(item.getType()) {
+ case LAPIS_BLOCK:
+ if(p.hasPermission("ultrachat.color.blue")){
+ p.sendMessage(ChatColor.BLUE + "You choose blue color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&9");
+ plugin.saveFile();
+ }
+ else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case WHITE_WOOL:
+ p.sendMessage(ChatColor.WHITE + "You choose white color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&f");
+ plugin.saveFile();
+ break;
+ case ORANGE_WOOL:
+ if(p.hasPermission("ultrachat.color.gold")){
+ p.sendMessage(ChatColor.GOLD + "You choose gold color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&6");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+
+ case MAGENTA_WOOL:
+ if(p.hasPermission("ultrachat.color.magenta")){
+ p.sendMessage(ChatColor.LIGHT_PURPLE + "You choose magenta color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&d");
+ plugin.saveFile();
+ }
+ else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+
+
+
+ case LIGHT_BLUE_WOOL:
+ if(p.hasPermission("ultrachat.color.aqua")){
+ p.sendMessage(ChatColor.AQUA + "You choose Aqua color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&b");
+ plugin.saveFile();
+ }
+ else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+
+
+
+ case YELLOW_WOOL:
+ if(p.hasPermission("ultrachat.color.yellow")){
+ p.sendMessage(ChatColor.YELLOW + "You choose yellow color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&e");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+
+ case LIME_WOOL:
+ if(p.hasPermission("ultrachat.color.lightgreen")){
+ p.sendMessage(ChatColor.GREEN + "You choose light green color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&a");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case PINK_WOOL:
+ if(p.hasPermission("ultrachat.color.lightred")){
+ p.sendMessage(ChatColor.RED + "You choose light red color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&c");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case GRAY_WOOL:
+ if(p.hasPermission("ultrachat.color.gray")){
+ p.sendMessage(ChatColor.DARK_GRAY + "You choose gray color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&8");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case LIGHT_GRAY_WOOL:
+ if(p.hasPermission("ultrachat.color.lightgray")){
+ p.sendMessage(ChatColor.GRAY + "You choose light gray color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&7");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case CYAN_WOOL:
+ if(p.hasPermission("ultrachat.color.cyan")){
+ p.sendMessage(ChatColor.DARK_AQUA + "You choose cyan color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&3");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case PURPLE_WOOL:
+ if(p.hasPermission("ultrachat.color.purple")){
+ p.sendMessage(ChatColor.DARK_PURPLE + "You choose purple color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&5");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case BLUE_WOOL:
+ if(p.hasPermission("ultrachat.color.darkblue")){
+ p.sendMessage(ChatColor.DARK_BLUE + "You choose dark blue color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&1");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case GREEN_WOOL:
+ if(p.hasPermission("ultrachat.color.green")){
+ p.sendMessage(ChatColor.DARK_GREEN + "You choose green color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&2");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ case RED_WOOL:
+ if(p.hasPermission("ultrachat.color.red")){
+ p.sendMessage(ChatColor.DARK_RED + "You choose red color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&4");
+ plugin.saveFile();
+ }else{
+ p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
+ }
+ break;
+ default:
+ p.sendMessage(ChatColor.WHITE + "You choose white color chat!");
+ p.closeInventory();
+ plugin.data.set(p.getUniqueId() + ".color", "&f");
+ plugin.saveFile();
+ break;
+ }
+
+ }
+
+
+}
diff --git a/src/me/ryandw11/ultrachat/gui/ColorGUI_Latest.java b/src/me/ryandw11/ultrachat/gui/ColorGUI_Latest.java
index a0ab442..727a165 100644
--- a/src/me/ryandw11/ultrachat/gui/ColorGUI_Latest.java
+++ b/src/me/ryandw11/ultrachat/gui/ColorGUI_Latest.java
@@ -10,6 +10,7 @@ import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.InventoryClickEvent;
+import org.bukkit.event.inventory.InventoryType;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
@@ -19,7 +20,7 @@ import me.ryandw11.ultrachat.api.Lang;
/**
* ColorGUI class.
- * Updated for 1.13.
+ * Updated for 1.14+
* @author Ryandw11
*
*/
@@ -30,7 +31,7 @@ public class ColorGUI_Latest implements CommandExecutor, Listener, ColorGUI{
plugin = UltraChat.plugin;
}
public void openGUI(Player p){
- Inventory i = Bukkit.createInventory(null, 9*2, Lang.COLOR_GUI.toString());
+ Inventory i = Bukkit.createInventory(null, InventoryType.CHEST, Lang.COLOR_GUI.toString());
ItemStack darkblueitem = new ItemStack(Material.BLUE_WOOL);
ItemMeta darkbluemeta = darkblueitem.getItemMeta();
@@ -124,6 +125,15 @@ public class ColorGUI_Latest implements CommandExecutor, Listener, ColorGUI{
whitemeta.setDisplayName("§fWhite Color Chat");
whiteitem.setItemMeta(whitemeta);
//==========================================================
+
+ ItemStack holder = new ItemStack(Material.GRAY_STAINED_GLASS_PANE, 1);
+ ItemMeta holderM = holder.getItemMeta();
+ holderM.setDisplayName(" ");
+ holder.setItemMeta(holderM);
+
+ for(int o = 15; o < 27; o++) {
+ i.setItem(o, holder);
+ }
i.setItem(0, darkblueitem);
@@ -171,18 +181,24 @@ public class ColorGUI_Latest implements CommandExecutor, Listener, ColorGUI{
@EventHandler
public void onInventoryClickEvent(InventoryClickEvent e){
- if(!e.getInventory().getName().equalsIgnoreCase(Lang.COLOR_GUI.toString())) return;
+ try {
+ if(e.getView() == null || e.getView().getTitle() == null) return;
+ if(!e.getView().getTitle().equalsIgnoreCase(Lang.COLOR_GUI.toString())) return;
+ }catch(IllegalStateException ex) {
+ return;
+ }
Player p = (Player) e.getWhoClicked();
e.setCancelled(true);
if(e.getCurrentItem() == null || e.getCurrentItem().getType() == Material.AIR || !e.getCurrentItem().hasItemMeta()){
- p.closeInventory();
return;
}
//================
ItemStack item = e.getCurrentItem();
+ if(!e.getInventory().contains(item)) return;
+
switch(item.getType()) {
case LAPIS_BLOCK:
if(p.hasPermission("ultrachat.color.blue")){
@@ -341,6 +357,8 @@ public class ColorGUI_Latest implements CommandExecutor, Listener, ColorGUI{
p.sendMessage(ChatColor.RED + "You do not have permission for this color!");
}
break;
+ case GRAY_STAINED_GLASS_PANE:
+ break;
default:
p.sendMessage(ChatColor.WHITE + "You choose white color chat!");
p.closeInventory();