Files
Purpur/patches/server/0120-PaperPR-Add-BellRingEvent.patch
William Blake Galbreath c0c212bf48 Updated Upstream (Paper)
Upstream has released updates that appears to apply and compile correctly

Paper Changes:
b75eeca0 Boost light task priority to ensure it doesnt hold up chunk loads
3d2bc848 Ensure VillagerTrades doesn't load async - fixes #3495
e470f1ef Add more information to Timing Reports
f4a47db6 Improve Thread Pool usage to allow single threads for single cpu servers
a4fe910f Fix sounds when using worldedit regen command
70ad51a8 Updated Upstream (Bukkit/CraftBukkit)
d7cfa4fa Improve legacy format serialization more
2020-06-05 21:42:48 -05:00

50 lines
2.5 KiB
Diff

From dd59c9d44aa90f5ee82eaa1ce53a4273584bc21c Mon Sep 17 00:00:00 2001
From: Eearslya Sleiarion <eearslya@gmail.com>
Date: Mon, 24 Jun 2019 21:27:32 -0700
Subject: [PATCH] PaperPR - Add BellRingEvent
---
src/main/java/net/minecraft/server/BlockBell.java | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/src/main/java/net/minecraft/server/BlockBell.java b/src/main/java/net/minecraft/server/BlockBell.java
index dbdbfb8ad9..0bbd1e1594 100644
--- a/src/main/java/net/minecraft/server/BlockBell.java
+++ b/src/main/java/net/minecraft/server/BlockBell.java
@@ -45,7 +45,7 @@ public class BlockBell extends BlockTileEntity {
Entity entity1 = ((EntityArrow) entity).getShooter();
EntityHuman entityhuman = entity1 instanceof EntityHuman ? (EntityHuman) entity1 : null;
- this.a(world, iblockdata, movingobjectpositionblock, entityhuman, true);
+ this.handleBellRing(world, iblockdata, movingobjectpositionblock, entityhuman, true, entity); // Purpur
}
}
@@ -56,11 +56,23 @@ public class BlockBell extends BlockTileEntity {
}
public boolean a(World world, IBlockData iblockdata, MovingObjectPositionBlock movingobjectpositionblock, @Nullable EntityHuman entityhuman, boolean flag) {
+ // Purpur start - BellRingEvent
+ return this.handleBellRing(world, iblockdata, movingobjectpositionblock, entityhuman, true, entityhuman);
+ }
+
+ public boolean handleBellRing(World world, IBlockData iblockdata, MovingObjectPositionBlock movingobjectpositionblock, @Nullable EntityHuman entityhuman, boolean flag, @Nullable Entity entity) {
+ // Purpur end
EnumDirection enumdirection = movingobjectpositionblock.getDirection();
BlockPosition blockposition = movingobjectpositionblock.getBlockPosition();
boolean flag1 = !flag || this.a(iblockdata, enumdirection, movingobjectpositionblock.getPos().y - (double) blockposition.getY());
if (flag1) {
+ // Purpur start - BellRingEvent
+ org.bukkit.block.Block block = world.getWorld().getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ());
+ if (!new com.destroystokyo.paper.event.block.BellRingEvent(block, (org.bukkit.entity.Entity) entity.getBukkitEntity()).callEvent()) {
+ return true;
+ }
+ // Purpur end
boolean flag2 = this.a(world, blockposition, enumdirection);
if (flag2 && entityhuman != null) {
--
2.24.0