--- a/net/minecraft/world/level/block/BlockTripwireHook.java +++ b/net/minecraft/world/level/block/BlockTripwireHook.java @@ -30,6 +30,11 @@ import net.minecraft.world.phys.shapes.VoxelShape; import net.minecraft.world.phys.shapes.VoxelShapeCollision; +// CraftBukkit start +import org.bukkit.craftbukkit.block.CraftBlock; +import org.bukkit.event.block.BlockRedstoneEvent; +// CraftBukkit end + public class BlockTripwireHook extends Block { public static final MapCodec CODEC = simpleCodec(BlockTripwireHook::new); @@ -174,6 +179,15 @@ emitState(world, blockposition1, flag4, flag5, flag2, flag3); } + // CraftBukkit start + BlockRedstoneEvent eventRedstone = new BlockRedstoneEvent(CraftBlock.at(world, blockposition), 15, 0); + world.getCraftServer().getPluginManager().callEvent(eventRedstone); + + if (eventRedstone.getNewCurrent() > 0) { + return; + } + // CraftBukkit end + emitState(world, blockposition, flag4, flag5, flag2, flag3); if (!flag) { world.setBlock(blockposition, (IBlockData) iblockdata3.setValue(BlockTripwireHook.FACING, enumdirection), 3);