From f094c07b5f46bb4910b5d71e0bfa4fddaf4c4465 Mon Sep 17 00:00:00 2001 From: Idra Date: Wed, 17 Jan 2024 18:27:40 +0000 Subject: [PATCH 1/3] Change GUI title to 'Trash Pack' from 'Dank Pack' --- src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java b/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java index c2ce97a..b413240 100644 --- a/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java +++ b/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java @@ -56,7 +56,7 @@ public class TrashGUI extends ChestMenu { private final TrashPack trashPack; public TrashGUI(TrashPackInstance packInstance, ItemStack itemStack) { - super("Dank Pack - Tier " + packInstance.getTier()); + super("Trash Pack - Tier " + packInstance.getTier()); this.packInstance = packInstance; this.itemStack = itemStack; this.trashPack = (TrashPack) SlimefunItem.getByItem(itemStack); From 0f04a1fac3091b59379d059cfca04a369a716aef Mon Sep 17 00:00:00 2001 From: Idra Date: Wed, 17 Jan 2024 19:21:50 +0000 Subject: [PATCH 2/3] Fix epic dupe glitch --- .../java/io/github/sefiraat/danktech2/core/DankGUI.java | 6 +++++- .../java/io/github/sefiraat/danktech2/core/TrashGUI.java | 7 ++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java b/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java index 50c9b09..30f1d14 100644 --- a/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java +++ b/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java @@ -20,6 +20,8 @@ import org.bukkit.inventory.meta.ItemMeta; import java.text.MessageFormat; +import java.util.Arrays; + public class DankGUI extends ChestMenu { @@ -80,7 +82,9 @@ public DankGUI(DankPackInstance packInstance, ItemStack itemStack) { } // Don't let players shift click into the GUI to bypass the handler - addPlayerInventoryClickHandler((p, slot, item, action) -> !action.isShiftClicked()); + addPlayerInventoryClickHandler((p, slot, item, action) -> + !action.isShiftClicked() && Arrays.stream(packInstance.getItems()) + .noneMatch(packItem -> packItem != null && item != null && packItem.getType() == item.getType())); setupAllItems(); } diff --git a/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java b/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java index b413240..bfd4a94 100644 --- a/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java +++ b/src/main/java/io/github/sefiraat/danktech2/core/TrashGUI.java @@ -19,6 +19,8 @@ import org.bukkit.inventory.meta.ItemMeta; import java.text.MessageFormat; +import java.util.Arrays; + public class TrashGUI extends ChestMenu { @@ -69,7 +71,10 @@ public TrashGUI(TrashPackInstance packInstance, ItemStack itemStack) { } // Don't let players shift click into the GUI to bypass the handler - addPlayerInventoryClickHandler((p, slot, item, action) -> !action.isShiftClicked()); + // Also don't allow clicks on items that the pack contains; this allows for item duplication + addPlayerInventoryClickHandler((p, slot, item, action) -> + !action.isShiftClicked() && Arrays.stream(packInstance.getItems()) + .noneMatch(packItem -> packItem != null && item != null && packItem.getType() == item.getType())); setupAllItems(); } From d0746ecab42f49b007c02cc08269db9b593f584a Mon Sep 17 00:00:00 2001 From: Idra Date: Thu, 18 Jan 2024 14:51:30 +0000 Subject: [PATCH 3/3] Add comment to DankGUI as well --- src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java b/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java index 30f1d14..c9f04ed 100644 --- a/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java +++ b/src/main/java/io/github/sefiraat/danktech2/core/DankGUI.java @@ -82,6 +82,7 @@ public DankGUI(DankPackInstance packInstance, ItemStack itemStack) { } // Don't let players shift click into the GUI to bypass the handler + // Also don't allow clicks on items that the pack contains; this allows for item duplication addPlayerInventoryClickHandler((p, slot, item, action) -> !action.isShiftClicked() && Arrays.stream(packInstance.getItems()) .noneMatch(packItem -> packItem != null && item != null && packItem.getType() == item.getType()));