diff --git a/pom.xml b/pom.xml
index ab1b66e..94b8aad 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
tsp.headdb
HeadDB
- 5.0.0-rc.4
+ 5.0.0-rc.5
jar
HeadDB
diff --git a/src/main/java/tsp/headdb/HeadDB.java b/src/main/java/tsp/headdb/HeadDB.java
index fda1087..f718519 100644
--- a/src/main/java/tsp/headdb/HeadDB.java
+++ b/src/main/java/tsp/headdb/HeadDB.java
@@ -19,7 +19,6 @@ import tsp.headdb.core.economy.VaultProvider;
import tsp.headdb.core.storage.Storage;
import tsp.headdb.core.task.UpdateTask;
-import tsp.headdb.core.util.BuildProperties;
import tsp.headdb.core.util.HeadDBLogger;
import tsp.smartplugin.SmartPlugin;
import tsp.smartplugin.inventory.PaneListener;
@@ -35,7 +34,6 @@ public class HeadDB extends SmartPlugin {
private static HeadDB instance;
private HeadDBLogger logger;
- private BuildProperties buildProperties;
private TranslatableLocalization localization;
private Storage storage;
private BasicEconomyProvider economyProvider;
@@ -47,7 +45,6 @@ public class HeadDB extends SmartPlugin {
instance.saveDefaultConfig();
instance.logger = new HeadDBLogger(getConfig().getBoolean("debug"));
instance.logger.info("Loading HeadDB - " + instance.getDescription().getVersion());
- instance.buildProperties = new BuildProperties(this);
new UpdateTask(getConfig().getLong("refresh", 86400L)).schedule(this);
instance.logger.info("Loaded " + loadLocalization() + " languages!");
@@ -177,10 +174,6 @@ public class HeadDB extends SmartPlugin {
return localization;
}
- public BuildProperties getBuildProperties() {
- return buildProperties;
- }
-
public HeadDBLogger getLog() {
return logger;
}
diff --git a/src/main/java/tsp/headdb/core/api/event/HeadPurchaseEvent.java b/src/main/java/tsp/headdb/core/api/event/HeadPurchaseEvent.java
deleted file mode 100644
index 4a9acb5..0000000
--- a/src/main/java/tsp/headdb/core/api/event/HeadPurchaseEvent.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package tsp.headdb.core.api.event;
-
-import org.bukkit.entity.Player;
-import org.bukkit.event.Cancellable;
-import org.bukkit.event.Event;
-import org.bukkit.event.HandlerList;
-import org.jetbrains.annotations.NotNull;
-import tsp.headdb.implementation.head.Head;
-
-import java.math.BigDecimal;
-
-/**
- * Called BEFORE a head is added to the inventory but AFTER the transaction is complete.
- * This gives you the chance to cancel and refund the money.
- * This event is fired asynchronously!
- *
- * @author TheSilentPro (Silent)
- * @see Event#isAsynchronous()
- *
- * @deprecated Possible issues.
- */
-@Deprecated
-public class HeadPurchaseEvent extends Event implements Cancellable {
-
- private static final HandlerList HANDLER_LIST = new HandlerList();
- private Player player;
- private Head head;
- private BigDecimal cost;
- private final boolean success;
- private boolean cancelled;
-
- public HeadPurchaseEvent(Player player, Head head, BigDecimal cost, boolean success) {
- super(true);
- this.player = player;
- this.head = head;
- this.cost = cost;
- this.success = success;
- }
-
- public boolean isSuccessful() {
- return success;
- }
-
- @Override
- public boolean isCancelled() {
- return cancelled;
- }
-
- @Override
- public void setCancelled(boolean cancel) {
- this.cancelled = cancel;
- }
-
- @NotNull
- @Override
- public HandlerList getHandlers() {
- return HANDLER_LIST;
- }
-
- public Player getPlayer() {
- return player;
- }
-
- public void setPlayer(Player player) {
- this.player = player;
- }
-
- public Head getHead() {
- return head;
- }
-
- public void setHead(Head head) {
- this.head = head;
- }
-
- public BigDecimal getCost() {
- return cost;
- }
-
- public void setCost(BigDecimal cost) {
- this.cost = cost;
- }
-}
\ No newline at end of file
diff --git a/src/main/java/tsp/headdb/core/command/CommandInfo.java b/src/main/java/tsp/headdb/core/command/CommandInfo.java
index 8c7ec7f..65fcb26 100644
--- a/src/main/java/tsp/headdb/core/command/CommandInfo.java
+++ b/src/main/java/tsp/headdb/core/command/CommandInfo.java
@@ -2,8 +2,6 @@ package tsp.headdb.core.command;
import org.bukkit.command.CommandSender;
import tsp.headdb.HeadDB;
-import tsp.headdb.core.util.BuildProperties;
-import tsp.headdb.core.util.Utils;
import tsp.smartplugin.player.PlayerUtils;
public class CommandInfo extends SubCommand {
@@ -15,10 +13,8 @@ public class CommandInfo extends SubCommand {
@Override
public void handle(CommandSender sender, String[] args) {
if (HeadDB.getInstance().getConfig().getBoolean("showAdvancedPluginInfo")) {
- BuildProperties build = HeadDB.getInstance().getBuildProperties();
- PlayerUtils.sendMessage(sender, "&7Running &6HeadDB - " + build.getVersion());
- PlayerUtils.sendMessage(sender, "&7Created by &6" + Utils.toString(HeadDB.getInstance().getDescription().getAuthors()));
- PlayerUtils.sendMessage(sender, "&7Compiled on &6" + build.getTimestamp() + " &7by &6" + build.getAuthor());
+ PlayerUtils.sendMessage(sender, "&7Running &6HeadDB - " + HeadDB.getInstance().getDescription().getVersion());
+ PlayerUtils.sendMessage(sender, "&7GitHub: &6https://github.com/TheSilentPro/HeadDB");
} else {
PlayerUtils.sendMessage(sender, "&7Running &6HeadDB &7by &6TheSilentPro (Silent)");
PlayerUtils.sendMessage(sender, "&7GitHub: &6https://github.com/TheSilentPro/HeadDB");
diff --git a/src/main/java/tsp/headdb/core/command/CommandMain.java b/src/main/java/tsp/headdb/core/command/CommandMain.java
index 6c1be8d..82b6202 100644
--- a/src/main/java/tsp/headdb/core/command/CommandMain.java
+++ b/src/main/java/tsp/headdb/core/command/CommandMain.java
@@ -135,24 +135,26 @@ public class CommandMain extends HeadDBCommand implements CommandExecutor, TabCo
}));
// local
- pane.setButton(getInstance().getConfig().getInt("gui.main.meta.local.slot"), new Button(Utils.getItemFromConfig("gui.main.meta.local.item", Material.COMPASS), e -> {
- Set localHeads = HeadAPI.getLocalHeads();
- PagedPane localPane = Utils.createPaged(player, Utils.translateTitle(getLocalization().getMessage(player.getUniqueId(), "menu.main.local.name").orElse("Local Heads"), localHeads.size(), "Local"));
- for (LocalHead head : localHeads) {
- localPane.addButton(new Button(head.getItem(), le -> {
- if (le.isLeftClick()) {
- ItemStack localItem = head.getItem();
- if (le.isShiftClick()) {
- localItem.setAmount(64);
+ if (getInstance().getConfig().getBoolean("localHeads")) {
+ pane.setButton(getInstance().getConfig().getInt("gui.main.meta.local.slot"), new Button(Utils.getItemFromConfig("gui.main.meta.local.item", Material.COMPASS), e -> {
+ Set localHeads = HeadAPI.getLocalHeads();
+ PagedPane localPane = Utils.createPaged(player, Utils.translateTitle(getLocalization().getMessage(player.getUniqueId(), "menu.main.local.name").orElse("Local Heads"), localHeads.size(), "Local"));
+ for (LocalHead head : localHeads) {
+ localPane.addButton(new Button(head.getItem(), le -> {
+ if (le.isLeftClick()) {
+ ItemStack localItem = head.getItem();
+ if (le.isShiftClick()) {
+ localItem.setAmount(64);
+ }
+
+ player.getInventory().addItem(localItem);
}
+ }));
+ }
- player.getInventory().addItem(localItem);
- }
- }));
- }
-
- localPane.open(player);
- }));
+ localPane.open(player);
+ }));
+ }
// Fill
Utils.fill(pane, Utils.getItemFromConfig("gui.main.fill", Material.BLACK_STAINED_GLASS_PANE));
diff --git a/src/main/java/tsp/headdb/core/util/BuildProperties.java b/src/main/java/tsp/headdb/core/util/BuildProperties.java
deleted file mode 100644
index 2c5a157..0000000
--- a/src/main/java/tsp/headdb/core/util/BuildProperties.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package tsp.headdb.core.util;
-
-import org.bukkit.configuration.file.YamlConfiguration;
-import org.bukkit.plugin.java.JavaPlugin;
-
-import java.io.InputStream;
-import java.io.InputStreamReader;
-
-/**
- * This class contains the properties of the build.
- *
- * @author TheSilentPro (Silent)
- */
-public class BuildProperties {
-
- private String version = "unknown";
- private String timestamp = "unknown";
- private String author = "unknown";
-
- public BuildProperties(JavaPlugin plugin) {
- InputStream in = plugin.getResource("plugin.yml");
- if (in == null) {
- plugin.getLogger().severe("Could not get plugin.yml to read build information.");
- return;
- }
-
- YamlConfiguration data = YamlConfiguration.loadConfiguration(new InputStreamReader(in));
- this.version = data.getString("version", "unknown");
- this.timestamp = data.getString("buildTimestamp", "unknown");
- this.author = data.getString("buildAuthor", "unknown");
- }
-
- public String getVersion() {
- return version;
- }
-
- public String getTimestamp() {
- return timestamp;
- }
-
- public String getAuthor() {
- return author;
- }
-
-}
\ No newline at end of file
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index 8f37b87..087e1b6 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -1,4 +1,3 @@
-#file: noinspection YAMLSchemaValidation
name: ${project.name}
description: ${project.description}
@@ -9,18 +8,11 @@ api-version: 1.19
author: TheSilentPro (Silent)
spigot-id: 84967
-buildTimestamp: ${build.timestamp}
-buildAuthor: ${build.author}
-
-# Although not up-to-date, spigot already includes gson. This is here just in case.
-#libraries:
-# - "com.google.code.gson:gson:2.10"
-
commands:
headdb:
usage: /headdb help
description: Open the database
- aliases: [hdb, headdatabase, headmenu]
+ aliases: ["hdb", "headdatabase", "headmenu"]
permissions:
headdb.admin:
@@ -30,6 +22,10 @@ permissions:
headdb.command.search: true
headdb.command.give: true
headdb.command.update: true
+ headdb.command.reload: true
+ headdb.command.language: true
+ headdb.command.settings: true
+ headdb.command.texture: true
headdb.favorites: true
headdb.local: true
headdb.category.*: true
@@ -41,6 +37,14 @@ permissions:
default: op
headdb.command.update:
default: op
+ headdb.command.reload:
+ default: op
+ headdb.command.language:
+ default: op
+ headdb.command.settings:
+ default: op
+ headdb.command.texture:
+ default: op
headdb.favorites:
default: op
headdb.local: