mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-19 14:59:32 +00:00
44 lines
2.9 KiB
Diff
44 lines
2.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: MC_XiaoHei <xiaohei.xor7@outlook.com>
|
|
Date: Sat, 17 May 2025 11:38:56 +0000
|
|
Subject: [PATCH] Do not reset placed block on exception
|
|
|
|
|
|
diff --git a/net/minecraft/world/item/BlockItem.java b/net/minecraft/world/item/BlockItem.java
|
|
index 593e65ef3a768d4039047e42e666c8382a5d38eb..cf143589407dc2146c9ce18f509077017fba0b48 100644
|
|
--- a/net/minecraft/world/item/BlockItem.java
|
|
+++ b/net/minecraft/world/item/BlockItem.java
|
|
@@ -92,20 +92,22 @@ public class BlockItem extends Item {
|
|
BlockState blockState = level.getBlockState(clickedPos);
|
|
if (blockState.is(placementState.getBlock())) {
|
|
blockState = this.updateBlockStateFromTag(clickedPos, level, itemInHand, blockState);
|
|
+ // Leaves start - we do not need this
|
|
// Paper start - Reset placed block on exception
|
|
- try {
|
|
+ // try {
|
|
this.updateCustomBlockEntityTag(clickedPos, level, player, itemInHand, blockState);
|
|
updateBlockEntityComponents(level, clickedPos, itemInHand);
|
|
- } catch (Exception ex) {
|
|
- ((org.bukkit.craftbukkit.block.CraftBlockState) oldBukkitState).revertPlace();
|
|
- if (player instanceof ServerPlayer serverPlayer) {
|
|
- org.apache.logging.log4j.LogManager.getLogger().error("Player {} tried placing invalid block", player.getScoreboardName(), ex);
|
|
- serverPlayer.getBukkitEntity().kickPlayer("Packet processing error");
|
|
- return InteractionResult.FAIL;
|
|
- }
|
|
- throw ex; // Rethrow exception if not placed by a player
|
|
- }
|
|
+ // } catch (Exception ex) {
|
|
+ // ((org.bukkit.craftbukkit.block.CraftBlockState) oldBukkitState).revertPlace();
|
|
+ // if (player instanceof ServerPlayer serverPlayer) {
|
|
+ // org.apache.logging.log4j.LogManager.getLogger().error("Player {} tried placing invalid block", player.getScoreboardName(), ex);
|
|
+ // serverPlayer.getBukkitEntity().kickPlayer("Packet processing error");
|
|
+ // return InteractionResult.FAIL;
|
|
+ // }
|
|
+ // throw ex; // Rethrow exception if not placed by a player
|
|
+ // }
|
|
// Paper end - Reset placed block on exception
|
|
+ // Leaves end - we dot not need this
|
|
blockState.getBlock().setPlacedBy(level, clickedPos, blockState, player, itemInHand);
|
|
// CraftBukkit start
|
|
if (bukkitState != null) {
|