diff --git a/pom.xml b/pom.xml
index 5c8c9c3..63aad7d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -50,7 +50,7 @@
org.spigotmc
spigot
- 1.13.2
+ 1.14-pre5
diff --git a/src/main/java/com/songoda/ultimatemoderation/gui/GUINotesManager.java b/src/main/java/com/songoda/ultimatemoderation/gui/GUINotesManager.java
index 5f8de8c..af4c118 100644
--- a/src/main/java/com/songoda/ultimatemoderation/gui/GUINotesManager.java
+++ b/src/main/java/com/songoda/ultimatemoderation/gui/GUINotesManager.java
@@ -125,7 +125,7 @@ public class GUINotesManager extends AbstractGUI {
});
abstractChatConfirm.setOnClose(() ->
- init(inventory.getTitle(), inventory.getSize()));
+ init(setTitle, inventory.getSize()));
}));
}
diff --git a/src/main/java/com/songoda/ultimatemoderation/gui/GUIPunish.java b/src/main/java/com/songoda/ultimatemoderation/gui/GUIPunish.java
index 1154ea1..4922bdd 100644
--- a/src/main/java/com/songoda/ultimatemoderation/gui/GUIPunish.java
+++ b/src/main/java/com/songoda/ultimatemoderation/gui/GUIPunish.java
@@ -177,7 +177,7 @@ public class GUIPunish extends AbstractGUI {
justSaved = false;
});
- gui.setOnClose((player2, inventory3) -> init(inventory.getTitle(), inventory.getSize()));
+ gui.setOnClose((player2, inventory3) -> init(setTitle, inventory.getSize()));
ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta();
@@ -200,7 +200,7 @@ public class GUIPunish extends AbstractGUI {
justSaved = false;
});
- gui.setOnClose((player2, inventory3) -> init(inventory.getTitle(), inventory.getSize()));
+ gui.setOnClose((player2, inventory3) -> init(setTitle, inventory.getSize()));
ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta();
@@ -252,7 +252,7 @@ public class GUIPunish extends AbstractGUI {
});
gui.setOnClose((player2, inventory3) ->
- init(inventory.getTitle(), inventory.getSize()));
+ init(setTitle, inventory.getSize()));
ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta();
diff --git a/src/main/java/com/songoda/ultimatemoderation/gui/GUITemplateSelector.java b/src/main/java/com/songoda/ultimatemoderation/gui/GUITemplateSelector.java
index fef070d..2fd1d70 100644
--- a/src/main/java/com/songoda/ultimatemoderation/gui/GUITemplateSelector.java
+++ b/src/main/java/com/songoda/ultimatemoderation/gui/GUITemplateSelector.java
@@ -42,7 +42,7 @@ public class GUITemplateSelector extends AbstractGUI {
punish.setDuration(template.getDuration());
punish.setReason(template.getReason());
punish.setTemplate(template);
- punish.init(punish.getInventory().getTitle(), punish.getInventory().getSize());
+ punish.init(setTitle, punish.getInventory().getSize());
punish.runTask();
}));
}
@@ -52,7 +52,7 @@ public class GUITemplateSelector extends AbstractGUI {
@Override
protected void registerClickables() {
registerClickable(8, ((player1, inventory1, cursor, slot, type) -> {
- punish.init(punish.getInventory().getTitle(), punish.getInventory().getSize());
+ punish.init(punish.getSetTitle(), punish.getInventory().getSize());
punish.runTask();
}));
}
diff --git a/src/main/java/com/songoda/ultimatemoderation/gui/GUITicket.java b/src/main/java/com/songoda/ultimatemoderation/gui/GUITicket.java
index 553e0a7..58ff6eb 100644
--- a/src/main/java/com/songoda/ultimatemoderation/gui/GUITicket.java
+++ b/src/main/java/com/songoda/ultimatemoderation/gui/GUITicket.java
@@ -140,7 +140,7 @@ public class GUITicket extends AbstractGUI {
});
abstractChatConfirm.setOnClose(() ->
- init(inventory.getTitle(), inventory.getSize()));
+ init(setTitle, inventory.getSize()));
}));
}
diff --git a/src/main/java/com/songoda/ultimatemoderation/storage/types/StorageYaml.java b/src/main/java/com/songoda/ultimatemoderation/storage/types/StorageYaml.java
index 876fda3..7b804d9 100644
--- a/src/main/java/com/songoda/ultimatemoderation/storage/types/StorageYaml.java
+++ b/src/main/java/com/songoda/ultimatemoderation/storage/types/StorageYaml.java
@@ -4,12 +4,10 @@ import com.songoda.ultimatemoderation.UltimateModeration;
import com.songoda.ultimatemoderation.storage.Storage;
import com.songoda.ultimatemoderation.storage.StorageItem;
import com.songoda.ultimatemoderation.storage.StorageRow;
-import org.apache.commons.io.FileUtils;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.MemorySection;
-import java.io.File;
-import java.io.IOException;
+import java.io.*;
import java.util.*;
public class StorageYaml extends Storage {
@@ -109,7 +107,7 @@ public class StorageYaml extends Storage {
File data = new File(instance.getDataFolder(), "data.yml");
File dataClone = new File(instance.getDataFolder(), "data-backup-" + System.currentTimeMillis() + ".yml");
try {
- FileUtils.copyFile(data, dataClone);
+ copyFile(data, dataClone);
} catch (IOException e) {
e.printStackTrace();
}
@@ -128,4 +126,22 @@ public class StorageYaml extends Storage {
public void closeConnection() {
dataFile.saveConfig();
}
+
+
+ private static void copyFile(File source, File dest) throws IOException {
+ InputStream is = null;
+ OutputStream os = null;
+ try {
+ is = new FileInputStream(source);
+ os = new FileOutputStream(dest);
+ byte[] buffer = new byte[1024];
+ int length;
+ while ((length = is.read(buffer)) > 0) {
+ os.write(buffer, 0, length);
+ }
+ } finally {
+ is.close();
+ os.close();
+ }
+ }
}
diff --git a/src/main/java/com/songoda/ultimatemoderation/utils/ServerVersion.java b/src/main/java/com/songoda/ultimatemoderation/utils/ServerVersion.java
index 66be358..baa8316 100644
--- a/src/main/java/com/songoda/ultimatemoderation/utils/ServerVersion.java
+++ b/src/main/java/com/songoda/ultimatemoderation/utils/ServerVersion.java
@@ -9,7 +9,8 @@ public enum ServerVersion {
V1_10("org.bukkit.craftbukkit.v1_10"),
V1_11("org.bukkit.craftbukkit.v1_11"),
V1_12("org.bukkit.craftbukkit.v1_12"),
- V1_13("org.bukkit.craftbukkit.v1_13");
+ V1_13("org.bukkit.craftbukkit.v1_13"),
+ V1_14("org.bukkit.craftbukkit.v1_14");
private final String packagePrefix;
diff --git a/src/main/java/com/songoda/ultimatemoderation/utils/SettingsManager.java b/src/main/java/com/songoda/ultimatemoderation/utils/SettingsManager.java
index f024bdb..127b610 100644
--- a/src/main/java/com/songoda/ultimatemoderation/utils/SettingsManager.java
+++ b/src/main/java/com/songoda/ultimatemoderation/utils/SettingsManager.java
@@ -43,14 +43,14 @@ public class SettingsManager implements Listener {
return;
}
- if (event.getInventory().getTitle().equals(pluginName + " Settings Manager")) {
+ if (event.getView().getTitle().equals(pluginName + " Settings Manager")) {
event.setCancelled(true);
if (clickedItem.getType().name().contains("STAINED_GLASS")) return;
String type = ChatColor.stripColor(clickedItem.getItemMeta().getDisplayName());
this.cat.put((Player) event.getWhoClicked(), type);
this.openEditor((Player) event.getWhoClicked());
- } else if (event.getInventory().getTitle().equals(pluginName + " Settings Editor")) {
+ } else if (event.getView().equals(pluginName + " Settings Editor")) {
event.setCancelled(true);
if (clickedItem.getType().name().contains("STAINED_GLASS")) return;
diff --git a/src/main/java/com/songoda/ultimatemoderation/utils/gui/AbstractGUI.java b/src/main/java/com/songoda/ultimatemoderation/utils/gui/AbstractGUI.java
index e6eb1dc..4fe1d48 100644
--- a/src/main/java/com/songoda/ultimatemoderation/utils/gui/AbstractGUI.java
+++ b/src/main/java/com/songoda/ultimatemoderation/utils/gui/AbstractGUI.java
@@ -28,6 +28,7 @@ public abstract class AbstractGUI implements Listener {
private static boolean listenersInitialized = false;
protected final Player player;
protected Inventory inventory = null;
+ protected String setTitle = null;
protected boolean cancelBottom = false;
private Map clickables = new HashMap<>();
private List onCloses = new ArrayList<>();
@@ -115,8 +116,9 @@ public abstract class AbstractGUI implements Listener {
public void init(String title, int slots) {
if (inventory == null
|| inventory.getSize() != slots
- || ChatColor.translateAlternateColorCodes('&', title) != inventory.getTitle()) {
+ || ChatColor.translateAlternateColorCodes('&', title) != player.getOpenInventory().getTitle()) {
this.inventory = Bukkit.getServer().createInventory(new GUIHolder(), slots, Methods.formatText(title));
+ this.setTitle = Methods.formatText(title);
if (this.clickables.size() == 0)
registerClickables();
if (this.onCloses.size() == 0)
@@ -229,4 +231,8 @@ public abstract class AbstractGUI implements Listener {
return AbstractGUI.this;
}
}
+
+ public String getSetTitle() {
+ return setTitle;
+ }
}