mirror of
https://github.com/LeavesMC/Leaves.git
synced 2026-01-04 15:41:31 +00:00
55 lines
3.1 KiB
Diff
55 lines
3.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: violetc <58360096+s-yh-china@users.noreply.github.com>
|
|
Date: Sun, 3 Apr 2022 11:31:04 +0800
|
|
Subject: [PATCH] Budding Amethyst can push by piston
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
|
|
index b6d6c2cb9b227a17fb4ce42bc75f92206fbea043..b3a3388ef62b0622906b2470056cb41f0deb0391 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/Block.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
|
|
@@ -583,6 +583,13 @@ public class Block extends BlockBehaviour implements ItemLike {
|
|
}
|
|
// Spigot end
|
|
|
|
+ // Leaves start - reset push reaction
|
|
+ @org.jetbrains.annotations.Nullable
|
|
+ public net.minecraft.world.level.material.PushReaction getResetPushReaction() {
|
|
+ return null;
|
|
+ }
|
|
+ // Leaves end - reset push reaction
|
|
+
|
|
private static record ShapePairKey(VoxelShape first, VoxelShape second) {
|
|
|
|
public boolean equals(Object object) {
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/BuddingAmethystBlock.java b/src/main/java/net/minecraft/world/level/block/BuddingAmethystBlock.java
|
|
index 8920855b07a31715327b8102c7faafc9f916825d..e6cc94e9c1b2388b8e42821e6bfaa2e22d44f9d3 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/BuddingAmethystBlock.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/BuddingAmethystBlock.java
|
|
@@ -60,4 +60,12 @@ public class BuddingAmethystBlock extends AmethystBlock {
|
|
public static boolean canClusterGrowAtState(BlockState state) {
|
|
return state.isAir() || state.is(Blocks.WATER) && state.getFluidState().getAmount() == 8;
|
|
}
|
|
+
|
|
+ // Leaves start - budding amethyst can push by piston
|
|
+ @org.jetbrains.annotations.Nullable
|
|
+ @Override
|
|
+ public net.minecraft.world.level.material.PushReaction getResetPushReaction() {
|
|
+ return org.leavesmc.leaves.LeavesConfig.modify.buddingAmethystCanPushByPiston ? net.minecraft.world.level.material.PushReaction.PUSH_ONLY : null;
|
|
+ }
|
|
+ // Leaves end - budding amethyst can push by piston
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
|
index 99fd67a78539133adf78d65e2c520ff3dd260301..4c1ec8de5aa2edde1dbcff350a65b7fc4a4b5e74 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
|
@@ -1159,7 +1159,7 @@ public abstract class BlockBehaviour implements FeatureElement {
|
|
}
|
|
|
|
public PushReaction getPistonPushReaction() {
|
|
- return !this.isDestroyable() ? PushReaction.BLOCK : this.pushReaction; // Paper - Protect Bedrock and End Portal/Frames from being destroyed
|
|
+ return !this.isDestroyable() ? PushReaction.BLOCK : this.getBlock().getResetPushReaction() == null ? this.pushReaction : this.getBlock().getResetPushReaction(); // Paper - Protect Bedrock and End Portal/Frames from being destroyed // Leaves - can reset
|
|
}
|
|
|
|
public boolean isSolidRender() {
|