9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-19 15:09:25 +00:00
Files
Leaf/leaf-server/minecraft-patches/features/0301-optimize-canHoldAnyFluid.patch

29 lines
1.6 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: hayanesuru <hayanesuru@outlook.jp>
Date: Thu, 9 Oct 2025 18:32:43 +0900
Subject: [PATCH] optimize canHoldAnyFluid
diff --git a/net/minecraft/world/level/material/FlowingFluid.java b/net/minecraft/world/level/material/FlowingFluid.java
index ca6df49381fd41e6aad20604acc58f4b4c504f1a..9b4c6f7a2b8d3a74912e842c1c698c2b67a697da 100644
--- a/net/minecraft/world/level/material/FlowingFluid.java
+++ b/net/minecraft/world/level/material/FlowingFluid.java
@@ -477,7 +477,7 @@ public abstract class FlowingFluid extends Fluid {
BlockGetter level, BlockPos pos, BlockState state, Direction direction, BlockPos spreadPos, BlockState spreadState, FluidState fluidState
) {
return !this.isSourceBlockOfThisType(fluidState)
- && canHoldAnyFluid(spreadState)
+ && (spreadState.tagFlag & org.dreeam.leaf.util.BlockMasks.CAN_HOLD_ANY_FLUID) != 0 // Leaf - optimize canHoldAnyFluid
&& canPassThroughWall(direction, level, pos, state, spreadPos, spreadState);
}
@@ -559,7 +559,7 @@ public abstract class FlowingFluid extends Fluid {
}
private static boolean canHoldFluid(BlockGetter level, BlockPos pos, BlockState state, Fluid fluid) {
- return canHoldAnyFluid(state) && canHoldSpecificFluid(level, pos, state, fluid);
+ return (state.tagFlag & org.dreeam.leaf.util.BlockMasks.CAN_HOLD_ANY_FLUID) != 0 && canHoldSpecificFluid(level, pos, state, fluid); // Leaf - optimize canHoldAnyFluid
}
private static boolean canHoldSpecificFluid(BlockGetter level, BlockPos pos, BlockState state, Fluid fluid) {