mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-19 14:59:32 +00:00
--------- Co-authored-by: violetc <58360096+s-yh-china@users.noreply.github.com> Co-authored-by: Fortern <blueten.ki@gmail.com> Co-authored-by: MC_XiaoHei <xor7xiaohei@gmail.com> Co-authored-by: Helvetica Volubi <88063803+Suisuroru@users.noreply.github.com> Co-authored-by: MC_XiaoHei <xiaohei.xor7@outlook.com>
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 5cbd5d04de525c33715bc45826bd2ed446355505..c320cd4b7d994b3a0d23bec1713a8bf910f4ef95 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) {
|