aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0654-prevent-unintended-light-block-manipulation.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0654-prevent-unintended-light-block-manipulation.patch')
-rw-r--r--patches/server/0654-prevent-unintended-light-block-manipulation.patch18
1 files changed, 18 insertions, 0 deletions
diff --git a/patches/server/0654-prevent-unintended-light-block-manipulation.patch b/patches/server/0654-prevent-unintended-light-block-manipulation.patch
new file mode 100644
index 0000000000..90c181a20a
--- /dev/null
+++ b/patches/server/0654-prevent-unintended-light-block-manipulation.patch
@@ -0,0 +1,18 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jake Potrebic <[email protected]>
+Date: Mon, 13 Sep 2021 18:55:45 -0700
+Subject: [PATCH] prevent unintended light block manipulation
+
+
+diff --git a/src/main/java/net/minecraft/world/level/block/LightBlock.java b/src/main/java/net/minecraft/world/level/block/LightBlock.java
+index a0fadee4be7c263ceaf1f4a987169b0f50308072..a847b79da488c9d6059c9da941a50de8b1bfc24f 100644
+--- a/src/main/java/net/minecraft/world/level/block/LightBlock.java
++++ b/src/main/java/net/minecraft/world/level/block/LightBlock.java
+@@ -54,6 +54,7 @@ public class LightBlock extends Block implements SimpleWaterloggedBlock {
+ @Override
+ public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) {
+ if (!world.isClientSide && player.canUseGameMasterBlocks()) {
++ if (player.getItemInHand(hand).getItem() != Items.LIGHT || !player.mayInteract(world, pos) || !player.mayUseItemAt(pos, hit.getDirection(), player.getItemInHand(hand))) { return InteractionResult.FAIL; } // Paper - Prevent unintended light block manipulation
+ world.setBlock(pos, state.cycle(LEVEL), 2);
+ return InteractionResult.SUCCESS;
+ } else {