Finish PlayerPickItemEvent

This commit is contained in:
Nassim Jahnke
2024-12-05 10:27:55 +01:00
parent 4758f1202f
commit f4817c9013
2 changed files with 16 additions and 10 deletions

View File

@@ -20,19 +20,21 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ if (!event.callEvent()) {
+ return;
+ }
+ // Paper end - Add PlayerPickItemEvent
+ i = event.getSourceSlot();
if (i != -1) {
if (Inventory.isHotbarSlot(i)) {
- if (Inventory.isHotbarSlot(i)) {
- playerinventory.selected = i;
+ playerinventory.selected = event.getTargetSlot(); // Paper - Add target slot
+ if (Inventory.isHotbarSlot(i) && Inventory.isHotbarSlot(event.getTargetSlot())) {
+ playerinventory.selected = event.getTargetSlot();
} else {
- playerinventory.pickSlot(i);
+ playerinventory.pickSlot(i, event.getTargetSlot()); // Paper - Add target slot
+ playerinventory.pickSlot(i, event.getTargetSlot());
}
} else if (this.player.hasInfiniteMaterials()) {
- playerinventory.addAndPickItem(stack);
+ playerinventory.addAndPickItem(stack, event.getTargetSlot()); // Paper - Add target slot
+ playerinventory.addAndPickItem(stack, event.getTargetSlot());
+ // Paper end - Add PlayerPickItemEvent
}
this.player.connection.send(new ClientboundSetHeldSlotPacket(playerinventory.selected));