mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-23 08:59:31 +00:00
Update 1.20.2 (#139)
This commit is contained in:
33
patches/server/0078-Container-open-passthrough.patch
Normal file
33
patches/server/0078-Container-open-passthrough.patch
Normal file
@@ -0,0 +1,33 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: violetc <58360096+s-yh-china@users.noreply.github.com>
|
||||
Date: Mon, 17 Jul 2023 11:41:50 +0800
|
||||
Subject: [PATCH] Container open passthrough
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/SignBlock.java b/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
||||
index 614777d15bcf4141a89d0a0f7bd880526c668ffd..f24bf88440976d6f3e12abe64d319fb6a7205896 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
||||
@@ -114,6 +114,22 @@ public abstract class SignBlock extends BaseEntityBlock implements SimpleWaterlo
|
||||
return InteractionResult.SUCCESS;
|
||||
} else if (flag2) {
|
||||
return InteractionResult.SUCCESS;
|
||||
+ // Leaves start - signContainerPassthrough
|
||||
+ } else if (top.leavesmc.leaves.LeavesConfig.containerPassthrough) {
|
||||
+ if (item == net.minecraft.world.item.Items.AIR && player.isShiftKeyDown()) {
|
||||
+ if (!this.otherPlayerIsEditingSign(player, tileentitysign) && player.mayBuild() && this.hasEditableText(player, tileentitysign, flag1)) {
|
||||
+ this.openTextEdit(player, tileentitysign, flag1);
|
||||
+ return InteractionResult.SUCCESS;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ BlockPos pos1 = pos.relative(hit.getDirection().getOpposite());
|
||||
+ if (world.getBlockEntity(pos1) instanceof net.minecraft.world.level.block.entity.RandomizableContainerBlockEntity) {
|
||||
+ BlockState state1 = world.getBlockState(pos1);
|
||||
+ return state1.use(world, player, hand, hit.withPosition(pos1));
|
||||
+ }
|
||||
+ return InteractionResult.PASS;
|
||||
+ // Leaves end - signContainerPassthrough
|
||||
} else if (!this.otherPlayerIsEditingSign(player, tileentitysign) && player.mayBuild() && this.hasEditableText(player, tileentitysign, flag1)) {
|
||||
this.openTextEdit(player, tileentitysign, flag1, io.papermc.paper.event.player.PlayerOpenSignEvent.Cause.INTERACT); // Paper
|
||||
return this.getInteractionResult(flag);
|
||||
Reference in New Issue
Block a user