1.14 Compatibility. (Awaiting API Fix)

This commit is contained in:
Brianna 2019-04-23 11:01:48 -04:00
parent f82ea9e223
commit 463e92672a
9 changed files with 39 additions and 16 deletions

View File

@ -50,7 +50,7 @@
<dependency> <dependency>
<groupId>org.spigotmc</groupId> <groupId>org.spigotmc</groupId>
<artifactId>spigot</artifactId> <artifactId>spigot</artifactId>
<version>1.13.2</version> <version>1.14-pre5</version>
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -125,7 +125,7 @@ public class GUINotesManager extends AbstractGUI {
}); });
abstractChatConfirm.setOnClose(() -> abstractChatConfirm.setOnClose(() ->
init(inventory.getTitle(), inventory.getSize())); init(setTitle, inventory.getSize()));
})); }));
} }

View File

@ -177,7 +177,7 @@ public class GUIPunish extends AbstractGUI {
justSaved = false; 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); ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta(); ItemMeta meta = item.getItemMeta();
@ -200,7 +200,7 @@ public class GUIPunish extends AbstractGUI {
justSaved = false; 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); ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta(); ItemMeta meta = item.getItemMeta();
@ -252,7 +252,7 @@ public class GUIPunish extends AbstractGUI {
}); });
gui.setOnClose((player2, inventory3) -> gui.setOnClose((player2, inventory3) ->
init(inventory.getTitle(), inventory.getSize())); init(setTitle, inventory.getSize()));
ItemStack item = new ItemStack(Material.PAPER); ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta(); ItemMeta meta = item.getItemMeta();

View File

@ -42,7 +42,7 @@ public class GUITemplateSelector extends AbstractGUI {
punish.setDuration(template.getDuration()); punish.setDuration(template.getDuration());
punish.setReason(template.getReason()); punish.setReason(template.getReason());
punish.setTemplate(template); punish.setTemplate(template);
punish.init(punish.getInventory().getTitle(), punish.getInventory().getSize()); punish.init(setTitle, punish.getInventory().getSize());
punish.runTask(); punish.runTask();
})); }));
} }
@ -52,7 +52,7 @@ public class GUITemplateSelector extends AbstractGUI {
@Override @Override
protected void registerClickables() { protected void registerClickables() {
registerClickable(8, ((player1, inventory1, cursor, slot, type) -> { registerClickable(8, ((player1, inventory1, cursor, slot, type) -> {
punish.init(punish.getInventory().getTitle(), punish.getInventory().getSize()); punish.init(punish.getSetTitle(), punish.getInventory().getSize());
punish.runTask(); punish.runTask();
})); }));
} }

View File

@ -140,7 +140,7 @@ public class GUITicket extends AbstractGUI {
}); });
abstractChatConfirm.setOnClose(() -> abstractChatConfirm.setOnClose(() ->
init(inventory.getTitle(), inventory.getSize())); init(setTitle, inventory.getSize()));
})); }));
} }

View File

@ -4,12 +4,10 @@ import com.songoda.ultimatemoderation.UltimateModeration;
import com.songoda.ultimatemoderation.storage.Storage; import com.songoda.ultimatemoderation.storage.Storage;
import com.songoda.ultimatemoderation.storage.StorageItem; import com.songoda.ultimatemoderation.storage.StorageItem;
import com.songoda.ultimatemoderation.storage.StorageRow; import com.songoda.ultimatemoderation.storage.StorageRow;
import org.apache.commons.io.FileUtils;
import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.MemorySection; import org.bukkit.configuration.MemorySection;
import java.io.File; import java.io.*;
import java.io.IOException;
import java.util.*; import java.util.*;
public class StorageYaml extends Storage { public class StorageYaml extends Storage {
@ -109,7 +107,7 @@ public class StorageYaml extends Storage {
File data = new File(instance.getDataFolder(), "data.yml"); File data = new File(instance.getDataFolder(), "data.yml");
File dataClone = new File(instance.getDataFolder(), "data-backup-" + System.currentTimeMillis() + ".yml"); File dataClone = new File(instance.getDataFolder(), "data-backup-" + System.currentTimeMillis() + ".yml");
try { try {
FileUtils.copyFile(data, dataClone); copyFile(data, dataClone);
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
} }
@ -128,4 +126,22 @@ public class StorageYaml extends Storage {
public void closeConnection() { public void closeConnection() {
dataFile.saveConfig(); 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();
}
}
} }

View File

@ -9,7 +9,8 @@ public enum ServerVersion {
V1_10("org.bukkit.craftbukkit.v1_10"), V1_10("org.bukkit.craftbukkit.v1_10"),
V1_11("org.bukkit.craftbukkit.v1_11"), V1_11("org.bukkit.craftbukkit.v1_11"),
V1_12("org.bukkit.craftbukkit.v1_12"), 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; private final String packagePrefix;

View File

@ -43,14 +43,14 @@ public class SettingsManager implements Listener {
return; return;
} }
if (event.getInventory().getTitle().equals(pluginName + " Settings Manager")) { if (event.getView().getTitle().equals(pluginName + " Settings Manager")) {
event.setCancelled(true); event.setCancelled(true);
if (clickedItem.getType().name().contains("STAINED_GLASS")) return; if (clickedItem.getType().name().contains("STAINED_GLASS")) return;
String type = ChatColor.stripColor(clickedItem.getItemMeta().getDisplayName()); String type = ChatColor.stripColor(clickedItem.getItemMeta().getDisplayName());
this.cat.put((Player) event.getWhoClicked(), type); this.cat.put((Player) event.getWhoClicked(), type);
this.openEditor((Player) event.getWhoClicked()); 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); event.setCancelled(true);
if (clickedItem.getType().name().contains("STAINED_GLASS")) return; if (clickedItem.getType().name().contains("STAINED_GLASS")) return;

View File

@ -28,6 +28,7 @@ public abstract class AbstractGUI implements Listener {
private static boolean listenersInitialized = false; private static boolean listenersInitialized = false;
protected final Player player; protected final Player player;
protected Inventory inventory = null; protected Inventory inventory = null;
protected String setTitle = null;
protected boolean cancelBottom = false; protected boolean cancelBottom = false;
private Map<Range, Clickable> clickables = new HashMap<>(); private Map<Range, Clickable> clickables = new HashMap<>();
private List<OnClose> onCloses = new ArrayList<>(); private List<OnClose> onCloses = new ArrayList<>();
@ -115,8 +116,9 @@ public abstract class AbstractGUI implements Listener {
public void init(String title, int slots) { public void init(String title, int slots) {
if (inventory == null if (inventory == null
|| inventory.getSize() != slots || 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.inventory = Bukkit.getServer().createInventory(new GUIHolder(), slots, Methods.formatText(title));
this.setTitle = Methods.formatText(title);
if (this.clickables.size() == 0) if (this.clickables.size() == 0)
registerClickables(); registerClickables();
if (this.onCloses.size() == 0) if (this.onCloses.size() == 0)
@ -229,4 +231,8 @@ public abstract class AbstractGUI implements Listener {
return AbstractGUI.this; return AbstractGUI.this;
} }
} }
public String getSetTitle() {
return setTitle;
}
} }