From 02d6b8215325b49d1f5c4ad324c9fed43b37896f Mon Sep 17 00:00:00 2001 From: violetc <58360096+s-yh-china@users.noreply.github.com> Date: Mon, 15 Jan 2024 13:25:32 +0800 Subject: [PATCH] Fix block place not check canSurvival --- patches/server/0065-Creative-fly-no-clip.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/patches/server/0065-Creative-fly-no-clip.patch b/patches/server/0065-Creative-fly-no-clip.patch index 6c1c85de..d43bf6e9 100644 --- a/patches/server/0065-Creative-fly-no-clip.patch +++ b/patches/server/0065-Creative-fly-no-clip.patch @@ -60,7 +60,7 @@ index ccc1caafb0ada52c7b99b7358253826f5390843e..a37e5fccd714bc52a13132bcd6565c35 public boolean canBeHitByProjectile() { return !this.isSpectator() && super.canBeHitByProjectile(); diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java -index ef484b74c8e3eedba18978534b70b396810880f8..4d18319bb7e3799bcb829830adcc828eea401848 100644 +index ef484b74c8e3eedba18978534b70b396810880f8..d1697d1de87632eabedb32dba6d73ee25107d7c7 100644 --- a/src/main/java/net/minecraft/world/item/BlockItem.java +++ b/src/main/java/net/minecraft/world/item/BlockItem.java @@ -228,7 +228,7 @@ public class BlockItem extends Item { @@ -68,7 +68,7 @@ index ef484b74c8e3eedba18978534b70b396810880f8..4d18319bb7e3799bcb829830adcc828e // CraftBukkit start - store default return Level world = context.getLevel(); // Paper - boolean defaultReturn = (!this.mustSurvive() || state.canSurvive(context.getLevel(), context.getClickedPos())) && world.checkEntityCollision(state, entityhuman, voxelshapecollision, context.getClickedPos(), true); // Paper -+ boolean defaultReturn = (!this.mustSurvive() || state.canSurvive(context.getLevel(), context.getClickedPos())) && top.leavesmc.leaves.LeavesConfig.creativeNoClip ? context.getPlayer().canSpectatingPlace(world, state, context.getClickedPos(), voxelshapecollision) : world.checkEntityCollision(state, entityhuman, voxelshapecollision, context.getClickedPos(), true); // Paper // Leaves - creative no clip ++ boolean defaultReturn = (!this.mustSurvive() || state.canSurvive(context.getLevel(), context.getClickedPos())) && (top.leavesmc.leaves.LeavesConfig.creativeNoClip ? context.getPlayer().canSpectatingPlace(world, state, context.getClickedPos(), voxelshapecollision) : world.checkEntityCollision(state, entityhuman, voxelshapecollision, context.getClickedPos(), true)); // Paper // Leaves - creative no clip org.bukkit.entity.Player player = (context.getPlayer() instanceof ServerPlayer) ? (org.bukkit.entity.Player) context.getPlayer().getBukkitEntity() : null; BlockCanBuildEvent event = new BlockCanBuildEvent(CraftBlock.at(context.getLevel(), context.getClickedPos()), player, CraftBlockData.fromData(state), defaultReturn, org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(context.getHand())); // Paper - expose hand