From 7726948a06927759b235d5c8c50c1771b282b316 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Fri, 28 Oct 2022 21:16:21 +0200 Subject: [PATCH 1/2] Add Custom Callbacks for SWListInv --- SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java b/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java index 9116443..0f9f3c0 100644 --- a/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java +++ b/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java @@ -55,8 +55,10 @@ public class SWListInv extends SWInventory { public void open(){ opened = true; inventory.clear(); - callbacks.clear(); - setCallback(-999, (ClickType click) -> player.closeInventory()); + callbacks.keySet().stream().filter(i -> i < 0).forEach(callbacks::remove); + if(!callbacks.containsKey(-999)) { + setCallback(-999, (ClickType click) -> player.closeInventory()); + } if (sizeBiggerMax()) { if (page != 0) { -- 2.39.2 From b7e057e7757dc3b1e9f92b76654fe89425cf6ef4 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Fri, 28 Oct 2022 21:24:38 +0200 Subject: [PATCH 2/2] Fix --- SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java b/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java index 0f9f3c0..28c92fc 100644 --- a/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java +++ b/SpigotCore_Main/src/de/steamwar/inventory/SWListInv.java @@ -28,6 +28,7 @@ import org.bukkit.entity.Player; import org.bukkit.event.inventory.ClickType; import java.util.*; +import java.util.stream.Collectors; public class SWListInv extends SWInventory { @@ -55,7 +56,7 @@ public class SWListInv extends SWInventory { public void open(){ opened = true; inventory.clear(); - callbacks.keySet().stream().filter(i -> i < 0).forEach(callbacks::remove); + callbacks.keySet().stream().filter(i -> i >= 0).collect(Collectors.toList()).forEach(callbacks::remove); if(!callbacks.containsKey(-999)) { setCallback(-999, (ClickType click) -> player.closeInventory()); } -- 2.39.2