SPIGOT-5887: ClickType doesn't include off hand swaps

This commit is contained in:
md_5 2020-06-30 11:43:15 +10:00
parent 23aac2a53f
commit e09dbecab8
No known key found for this signature in database
GPG Key ID: E8E901AC7C617C11

View File

@ -1310,8 +1310,8 @@
+ } + }
+ break; + break;
+ case SWAP: + case SWAP:
+ if (packetplayinwindowclick.d() >= 0 && packetplayinwindowclick.d() < 9) { + if ((packetplayinwindowclick.d() >= 0 && packetplayinwindowclick.d() < 9) || packetplayinwindowclick.d() == 40) {
+ click = ClickType.NUMBER_KEY; + click = (packetplayinwindowclick.d() == 40) ? ClickType.SWAP_OFFHAND : ClickType.NUMBER_KEY;
+ Slot clickedSlot = this.player.activeContainer.getSlot(packetplayinwindowclick.c()); + Slot clickedSlot = this.player.activeContainer.getSlot(packetplayinwindowclick.c());
+ if (clickedSlot.isAllowed(player)) { + if (clickedSlot.isAllowed(player)) {
+ ItemStack hotbar = this.player.inventory.getItem(packetplayinwindowclick.d()); + ItemStack hotbar = this.player.inventory.getItem(packetplayinwindowclick.d());