aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0498-Add-PlayerShearBlockEvent.patch
diff options
context:
space:
mode:
authorTomTom <[email protected]>2023-11-03 15:05:57 +0100
committerGitHub <[email protected]>2023-11-03 14:05:57 +0000
commit487109fddc74813b81bf17dfe8ec7be443963d9d (patch)
tree8fbfe1ec07553dc9149882389257d948b0486e02 /patches/server/0498-Add-PlayerShearBlockEvent.patch
parent8493340be4fa69fa9369719272e5dff1b7a2f455 (diff)
downloadPaper-487109fddc74813b81bf17dfe8ec7be443963d9d.tar.gz
Paper-487109fddc74813b81bf17dfe8ec7be443963d9d.zip
Readd 0414 use distance map to optimise entity tracker (#9868)
Diffstat (limited to 'patches/server/0498-Add-PlayerShearBlockEvent.patch')
-rw-r--r--patches/server/0498-Add-PlayerShearBlockEvent.patch70
1 files changed, 0 insertions, 70 deletions
diff --git a/patches/server/0498-Add-PlayerShearBlockEvent.patch b/patches/server/0498-Add-PlayerShearBlockEvent.patch
deleted file mode 100644
index 56a84bee18..0000000000
--- a/patches/server/0498-Add-PlayerShearBlockEvent.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: JRoy <[email protected]>
-Date: Thu, 27 Aug 2020 15:02:48 -0400
-Subject: [PATCH] Add PlayerShearBlockEvent
-
-
-diff --git a/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java b/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java
-index 9d61c9ada132af89292a5da7d3cce7777a961c13..61539bd963acf46f5f05865b235f9dbc05c771c3 100644
---- a/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java
-+++ b/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java
-@@ -120,7 +120,7 @@ public class BeehiveBlock extends BaseEntityBlock {
- }
-
- public static void dropHoneycomb(Level world, BlockPos pos) {
-- popResource(world, pos, new ItemStack(Items.HONEYCOMB, 3));
-+ popResource(world, pos, new ItemStack(Items.HONEYCOMB, 3)); // Paper - conflict on change, item needs to be set below
- }
-
- @Override
-@@ -133,8 +133,19 @@ public class BeehiveBlock extends BaseEntityBlock {
- Item item = itemstack.getItem();
-
- if (itemstack.is(Items.SHEARS)) {
-+ // Paper start - Add PlayerShearBlockEvent
-+ io.papermc.paper.event.block.PlayerShearBlockEvent event = new io.papermc.paper.event.block.PlayerShearBlockEvent((org.bukkit.entity.Player) player.getBukkitEntity(), io.papermc.paper.util.MCUtil.toBukkitBlock(world, pos), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(itemstack), (hand == InteractionHand.OFF_HAND ? org.bukkit.inventory.EquipmentSlot.OFF_HAND : org.bukkit.inventory.EquipmentSlot.HAND), new java.util.ArrayList<>());
-+ event.getDrops().add(org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(new ItemStack(Items.HONEYCOMB, 3)));
-+ if (!event.callEvent()) {
-+ return InteractionResult.PASS;
-+ }
-+ // Paper end
- world.playSound(player, player.getX(), player.getY(), player.getZ(), SoundEvents.BEEHIVE_SHEAR, SoundSource.BLOCKS, 1.0F, 1.0F);
-- BeehiveBlock.dropHoneycomb(world, pos);
-+ // Paper start - Add PlayerShearBlockEvent
-+ for (org.bukkit.inventory.ItemStack itemDrop : event.getDrops()) {
-+ popResource(world, pos, org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(itemDrop));
-+ }
-+ // Paper end
- itemstack.hurtAndBreak(1, player, (entityhuman1) -> {
- entityhuman1.broadcastBreakEvent(hand);
- });
-diff --git a/src/main/java/net/minecraft/world/level/block/PumpkinBlock.java b/src/main/java/net/minecraft/world/level/block/PumpkinBlock.java
-index 0e8cbe7a465edc31b78b7e47a928435f9c2b6bd9..4568d1659dda897de5f6c2059629a4718d401e63 100644
---- a/src/main/java/net/minecraft/world/level/block/PumpkinBlock.java
-+++ b/src/main/java/net/minecraft/world/level/block/PumpkinBlock.java
-@@ -27,13 +27,24 @@ public class PumpkinBlock extends StemGrownBlock {
- ItemStack itemStack = player.getItemInHand(hand);
- if (itemStack.is(Items.SHEARS)) {
- if (!world.isClientSide) {
-+ // Paper start - Add PlayerShearBlockEvent
-+ io.papermc.paper.event.block.PlayerShearBlockEvent event = new io.papermc.paper.event.block.PlayerShearBlockEvent((org.bukkit.entity.Player) player.getBukkitEntity(), io.papermc.paper.util.MCUtil.toBukkitBlock(world, pos), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(itemStack), (hand == InteractionHand.OFF_HAND ? org.bukkit.inventory.EquipmentSlot.OFF_HAND : org.bukkit.inventory.EquipmentSlot.HAND), new java.util.ArrayList<>());
-+ event.getDrops().add(org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(new ItemStack(Items.PUMPKIN_SEEDS, 4)));
-+ if (!event.callEvent()) {
-+ return InteractionResult.PASS;
-+ }
-+ // Paper end
- Direction direction = hit.getDirection();
- Direction direction2 = direction.getAxis() == Direction.Axis.Y ? player.getDirection().getOpposite() : direction;
- world.playSound((Player)null, pos, SoundEvents.PUMPKIN_CARVE, SoundSource.BLOCKS, 1.0F, 1.0F);
- world.setBlock(pos, Blocks.CARVED_PUMPKIN.defaultBlockState().setValue(CarvedPumpkinBlock.FACING, direction2), 11);
-- ItemEntity itemEntity = new ItemEntity(world, (double)pos.getX() + 0.5D + (double)direction2.getStepX() * 0.65D, (double)pos.getY() + 0.1D, (double)pos.getZ() + 0.5D + (double)direction2.getStepZ() * 0.65D, new ItemStack(Items.PUMPKIN_SEEDS, 4));
-+ // Paper start - Add PlayerShearBlockEvent
-+ for (org.bukkit.inventory.ItemStack item : event.getDrops()) {
-+ ItemEntity itemEntity = new ItemEntity(world, (double) pos.getX() + 0.5D + (double) direction2.getStepX() * 0.65D, (double) pos.getY() + 0.1D, (double) pos.getZ() + 0.5D + (double) direction2.getStepZ() * 0.65D, org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(item));
-+ // Paper end
- itemEntity.setDeltaMovement(0.05D * (double)direction2.getStepX() + world.random.nextDouble() * 0.02D, 0.05D, 0.05D * (double)direction2.getStepZ() + world.random.nextDouble() * 0.02D);
- world.addFreshEntity(itemEntity);
-+ } // Paper - Add PlayerShearBlockEvent
- itemStack.hurtAndBreak(1, player, (playerx) -> {
- playerx.broadcastBreakEvent(hand);
- });