9
0
mirror of https://github.com/LeavesMC/Leaves.git synced 2025-12-23 08:59:31 +00:00
Files
LeavesMC/patches/server/0127-Copper-Bulb-1-gt-delay.patch
2023-12-12 12:12:31 +08:00

59 lines
2.5 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: violetc <58360096+s-yh-china@users.noreply.github.com>
Date: Tue, 12 Dec 2023 12:09:16 +0800
Subject: [PATCH] Copper Bulb 1 gt delay
diff --git a/src/main/java/net/minecraft/world/level/block/CopperBulbBlock.java b/src/main/java/net/minecraft/world/level/block/CopperBulbBlock.java
index 762c6e68b1a6f084a610de834fd2becb291bf017..5dcb7c8ae993b4376ea5117d77519a355264167f 100644
--- a/src/main/java/net/minecraft/world/level/block/CopperBulbBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/CopperBulbBlock.java
@@ -31,17 +31,27 @@ public class CopperBulbBlock extends Block {
@Override
public void onPlace(BlockState state, Level world, BlockPos pos, BlockState oldState, boolean notify) {
if (oldState.getBlock() != state.getBlock() && world instanceof ServerLevel serverLevel) {
- this.checkAndFlip(state, serverLevel, pos);
+ // Leaves start - copper bulb 1 gt delay
+ if (!top.leavesmc.leaves.LeavesConfig.copperBulb1gt) {
+ this.checkAndFlip(state, serverLevel, pos);
+ } else {
+ world.scheduleTick(pos, this, 1);
+ }
+ // Leaves end - copper bulb 1 gt delay
}
-
}
@Override
public void neighborChanged(BlockState state, Level world, BlockPos pos, Block sourceBlock, BlockPos sourcePos, boolean notify) {
if (world instanceof ServerLevel serverLevel) {
- this.checkAndFlip(state, serverLevel, pos);
+ // Leaves start - copper bulb 1 gt
+ if (!top.leavesmc.leaves.LeavesConfig.copperBulb1gt) {
+ this.checkAndFlip(state, serverLevel, pos);
+ } else {
+ world.scheduleTick(pos, this, 1);
+ }
+ // Leaves end - copper bulb 1 gt delay
}
-
}
public void checkAndFlip(BlockState state, ServerLevel world, BlockPos pos) {
@@ -57,6 +67,15 @@ public class CopperBulbBlock extends Block {
}
}
+ // Leaves start - copper bulb 1 gt delay
+ @Override
+ public void tick(BlockState state, ServerLevel world, BlockPos pos, net.minecraft.util.RandomSource random) {
+ if (top.leavesmc.leaves.LeavesConfig.copperBulb1gt) {
+ checkAndFlip(state, world, pos);
+ }
+ }
+ // Leaves end - copper bulb 1 gt delay
+
@Override
protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> builder) {
builder.add(LIT, POWERED);