mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-22 08:29:22 +00:00
--------- Co-authored-by: MC_XiaoHei <xiaohei.xor7studio@foxmail.com> Co-authored-by: Bluemangoo <chenfy2006@qq.com>
53 lines
3.0 KiB
Diff
53 lines
3.0 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 555d255a79c6136d0df3504218a0bc4681a5489f..e27f2317e4e2f13b6ef12be727046497a750fd3a 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/Block.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
|
|
@@ -591,6 +591,12 @@ public class Block extends BlockBehaviour implements ItemLike {
|
|
}
|
|
// Spigot end
|
|
|
|
+ // Leaves start - reset push reaction
|
|
+ public net.minecraft.world.level.material.PushReaction getResetPushReaction() {
|
|
+ return null;
|
|
+ }
|
|
+ // Leaves end - reset push reaction
|
|
+
|
|
public static final class BlockStatePairKey {
|
|
|
|
private final BlockState first;
|
|
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..32d926a1b952b8069c5bf48c88e3c108b08b4ab1 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,11 @@ 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
|
|
+ @Override
|
|
+ public net.minecraft.world.level.material.PushReaction getResetPushReaction() {
|
|
+ return org.leavesmc.leaves.LeavesConfig.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 2034ca2edd3aff61d94416266e75402babd3e741..d7ae3a3a63a3eb3a95534c303ba87303cb96744d 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
|
|
@@ -1088,7 +1088,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(BlockGetter world, BlockPos pos) {
|