summaryrefslogtreecommitdiffstats
path: root/src/main/java
diff options
context:
space:
mode:
authorLMBishop <13875753+LMBishop@users.noreply.github.com>2021-05-13 23:00:03 +0100
committerLMBishop <13875753+LMBishop@users.noreply.github.com>2021-05-13 23:00:03 +0100
commit9a37c5413588b486870d6bd9a2902fc380e5ae57 (patch)
treec73cd212dff1d666f1b272b73ad6e0669b404de4 /src/main/java
parente73c6456109b0082a4ab5cec53fde5bb357c267d (diff)
Add spacer menu element
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/leonardobishop/quests/menu/CategoryQMenu.java11
-rw-r--r--src/main/java/com/leonardobishop/quests/menu/QuestQMenu.java11
-rw-r--r--src/main/java/com/leonardobishop/quests/menu/element/SpacerMenuElement.java15
3 files changed, 33 insertions, 4 deletions
diff --git a/src/main/java/com/leonardobishop/quests/menu/CategoryQMenu.java b/src/main/java/com/leonardobishop/quests/menu/CategoryQMenu.java
index e389d9fa..a27b513e 100644
--- a/src/main/java/com/leonardobishop/quests/menu/CategoryQMenu.java
+++ b/src/main/java/com/leonardobishop/quests/menu/CategoryQMenu.java
@@ -5,6 +5,7 @@ import com.leonardobishop.quests.events.MenuController;
import com.leonardobishop.quests.menu.element.CategoryMenuElement;
import com.leonardobishop.quests.menu.element.CustomMenuElement;
import com.leonardobishop.quests.menu.element.MenuElement;
+import com.leonardobishop.quests.menu.element.SpacerMenuElement;
import com.leonardobishop.quests.player.QPlayer;
import com.leonardobishop.quests.util.Items;
import com.leonardobishop.quests.util.Messages;
@@ -45,10 +46,16 @@ public class CategoryQMenu implements QMenu {
if (!NumberUtils.isNumber(s)) continue;
int slot = Integer.parseInt(s);
int repeat = plugin.getConfig().getInt("custom-elements.categories." + s + ".repeat");
- ItemStack is = plugin.getItemStack("custom-elements.categories." + s + ".display", plugin.getConfig());
+ MenuElement menuElement;
+ if (plugin.getConfig().contains("custom-elements.categories." + s + ".display")) {
+ ItemStack is = plugin.getItemStack("custom-elements.categories." + s + ".display", plugin.getConfig());
+ menuElement = new CustomMenuElement(is);
+ } else if (plugin.getConfig().getBoolean("custom-elements.categories." + s + ".spacer", false)) {
+ menuElement = new SpacerMenuElement();
+ } else continue; // user = idiot
for (int i = 0; i <= repeat; i++) {
- menuElements.put(slot + i, new CustomMenuElement(is));
+ menuElements.put(slot + i, menuElement);
}
}
}
diff --git a/src/main/java/com/leonardobishop/quests/menu/QuestQMenu.java b/src/main/java/com/leonardobishop/quests/menu/QuestQMenu.java
index bfc78617..46891604 100644
--- a/src/main/java/com/leonardobishop/quests/menu/QuestQMenu.java
+++ b/src/main/java/com/leonardobishop/quests/menu/QuestQMenu.java
@@ -6,6 +6,7 @@ import com.leonardobishop.quests.events.MenuController;
import com.leonardobishop.quests.menu.element.CustomMenuElement;
import com.leonardobishop.quests.menu.element.MenuElement;
import com.leonardobishop.quests.menu.element.QuestMenuElement;
+import com.leonardobishop.quests.menu.element.SpacerMenuElement;
import com.leonardobishop.quests.player.QPlayer;
import com.leonardobishop.quests.player.questprogressfile.QuestProgress;
import com.leonardobishop.quests.quests.Quest;
@@ -65,10 +66,16 @@ public class QuestQMenu implements QMenu {
if (!NumberUtils.isNumber(s)) continue;
int slot = Integer.parseInt(s);
int repeat = plugin.getConfig().getInt(path + "." + s + ".repeat");
- ItemStack is = plugin.getItemStack(path + "." + s + ".display", plugin.getConfig());
+ MenuElement menuElement;
+ if (plugin.getConfig().contains(path + "." + s + ".display")) {
+ ItemStack is = plugin.getItemStack(path + "." + s + ".display", plugin.getConfig());
+ menuElement = new CustomMenuElement(is);
+ } else if (plugin.getConfig().getBoolean(path + "." + s + ".spacer", false)) {
+ menuElement = new SpacerMenuElement();
+ } else continue; // user = idiot
for (int i = 0; i <= repeat; i++) {
- menuElements.put(slot + i, new CustomMenuElement(is));
+ menuElements.put(slot + i, menuElement);
}
}
}
diff --git a/src/main/java/com/leonardobishop/quests/menu/element/SpacerMenuElement.java b/src/main/java/com/leonardobishop/quests/menu/element/SpacerMenuElement.java
new file mode 100644
index 00000000..e2859718
--- /dev/null
+++ b/src/main/java/com/leonardobishop/quests/menu/element/SpacerMenuElement.java
@@ -0,0 +1,15 @@
+package com.leonardobishop.quests.menu.element;
+
+import org.bukkit.Material;
+import org.bukkit.inventory.ItemStack;
+
+/**
+ * literally has the sole purpose of returning Material.AIR
+ */
+public class SpacerMenuElement extends MenuElement {
+
+ @Override
+ public ItemStack asItemStack() {
+ return new ItemStack(Material.AIR);
+ }
+}