Skip to content

Commit bcfa880

Browse files
committed
fix: shift clicking an item into an interactable menu calls item updates
1 parent eef7bbe commit bcfa880

2 files changed

Lines changed: 6 additions & 8 deletions

File tree

menus/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ plugins {
55

66

77
group = 'net.staticstudios'
8-
version = '1.0.11-SNAPSHOT'
8+
version = '1.0.12-SNAPSHOT'
99

1010
repositories {
1111
mavenCentral()

menus/src/main/java/net/staticstudios/menus/listener/MenuListener.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -62,15 +62,13 @@ void onButtonClick(InventoryClickEvent e) {
6262
if (inSlot == null || inSlot.getType().isEmpty()) {
6363
e.getInventory().setItem(slot, e.getCurrentItem());
6464
e.getCurrentItem().setAmount(0);
65-
return;
65+
} else {
66+
int amountToMove = Math.min(e.getCurrentItem().getAmount(), inSlot.getMaxStackSize() - inSlot.getAmount());
67+
inSlot.setAmount(inSlot.getAmount() + amountToMove);
68+
e.getInventory().setItem(slot, inSlot);
69+
e.getCurrentItem().setAmount(e.getCurrentItem().getAmount() - amountToMove);
6670
}
6771

68-
int amountToMove = Math.min(e.getCurrentItem().getAmount(), inSlot.getMaxStackSize() - inSlot.getAmount());
69-
70-
inSlot.setAmount(inSlot.getAmount() + amountToMove);
71-
e.getInventory().setItem(slot, inSlot);
72-
e.getCurrentItem().setAmount(e.getCurrentItem().getAmount() - amountToMove);
73-
7472
Bukkit.getScheduler().runTaskLater(StaticMenus.getPlugin(), () -> {
7573
Player player = Bukkit.getPlayer(playerId);
7674
if (player != null && interactableMenu == player.getOpenInventory().getTopInventory().getHolder(false)) {

0 commit comments

Comments
 (0)