net.minecraft.fluid

public abstract class FlowableFluid

extends Fluid

net.minecraft.world.level.material.FlowingFluid
net.minecraft.class_3609
net.minecraft.fluid.FlowableFluid

Field summary

Modifier and TypeField
public static final BooleanProperty
FALLING
field_15902
FALLING
public static final IntProperty
LEVEL
field_15900
LEVEL
private static final int
CACHE_SIZE
field_31726
CACHE_SIZE
private static final ThreadLocal<it.unimi.dsi.fastutil.objects.Object2ByteLinkedOpenHashMap<FlowableFluid$NeighborGroup>>
OCCLUSION_CACHE
field_15901
field_15901
private final Map<FluidState, VoxelShape>
shapes
field_17587
shapeCache

Constructor summary

ModifierConstructor
public ()

Method summary

Modifier and TypeMethod
protected void
createFluidStateDefinition(StateDefinition$Builder<Fluid, FluidState> builder)
method_15775(class_2689$class_2690<class_3611, class_3610> arg0)
appendProperties(StateManager$Builder<Fluid, FluidState> arg0)
public Vec3d
getFlow(BlockGetter level, BlockPos pos, FluidState fluidState)
method_15782(class_1922 arg0, class_2338 arg1, class_3610 arg2)
getVelocity(BlockView arg0, BlockPos arg1, FluidState arg2)
private boolean
affectsFlow(FluidState neighbourFluid)
method_15748(class_3610 arg0)
isEmptyOrThis(FluidState state)
protected boolean
isSolidFace(BlockGetter level, BlockPos pos, Direction direction)
method_15749(class_1922 arg0, class_2338 arg1, class_2350 arg2)
isFlowBlocked(BlockView world, BlockPos pos, Direction direction)
protected void
spread(ServerLevel level, BlockPos pos, BlockState state, FluidState fluidState)
method_15725(class_3218 arg0, class_2338 arg1, class_2680 arg2, class_3610 arg3)
tryFlow(ServerWorld world, BlockPos fluidPos, BlockState blockState, FluidState fluidState)
private void
spreadToSides(ServerLevel level, BlockPos pos, FluidState fluidState, BlockState state)
method_15744(class_3218 arg0, class_2338 arg1, class_3610 arg2, class_2680 arg3)
flowToSides(ServerWorld world, BlockPos pos, FluidState fluidState, BlockState blockState)
protected FluidState
getNewLiquid(ServerLevel level, BlockPos pos, BlockState state)
method_15727(class_3218 arg0, class_2338 arg1, class_2680 arg2)
getUpdatedState(ServerWorld world, BlockPos pos, BlockState state)
private static boolean
canPassThroughWall(Direction direction, BlockGetter level, BlockPos sourcePos, BlockState sourceState, BlockPos targetPos, BlockState targetState)
method_15732(class_2350 arg0, class_1922 arg1, class_2338 arg2, class_2680 arg3, class_2338 arg4, class_2680 arg5)
receivesFlow(Direction face, BlockView world, BlockPos pos, BlockState state, BlockPos fromPos, BlockState fromState)
public abstract Fluid
getFlowing()
method_15750()
getFlowing()
public FluidState
getFlowing(int amount, boolean falling)
method_15728(int arg0, boolean arg1)
getFlowing(int level, boolean falling)
public abstract Fluid
getSource()
method_15751()
getStill()
public FluidState
getSource(boolean falling)
method_15729(boolean arg0)
getStill(boolean falling)
protected abstract boolean
canConvertToSource(ServerLevel level)
method_15737(class_3218 arg0)
isInfinite(ServerWorld world)
protected void
spreadTo(LevelAccessor level, BlockPos pos, BlockState state, Direction direction, FluidState target)
method_15745(class_1936 arg0, class_2338 arg1, class_2680 arg2, class_2350 arg3, class_3610 arg4)
flow(WorldAccess world, BlockPos pos, BlockState state, Direction direction, FluidState fluidState)
protected abstract void
beforeDestroyingBlock(LevelAccessor level, BlockPos pos, BlockState state)
method_15730(class_1936 arg0, class_2338 arg1, class_2680 arg2)
beforeBreakingBlock(WorldAccess world, BlockPos pos, BlockState state)
protected int
getSlopeDistance(LevelReader level, BlockPos pos, int pass, Direction from, BlockState state, FlowingFluid$SpreadContext context)
method_15742(class_4538 arg0, class_2338 arg1, int arg2, class_2350 arg3, class_2680 arg4, class_3609$class_9900 arg5)
getMinFlowDownDistance(WorldView world, BlockPos pos, int arg2, Direction direction, BlockState state, FlowableFluid$SpreadCache spreadCache)
private boolean
isWaterHole(BlockGetter level, BlockPos topPos, BlockState topState, BlockPos bottomPos, BlockState bottomState)
method_15736(class_1922 arg0, class_2338 arg1, class_2680 arg2, class_2338 arg3, class_2680 arg4)
canFlowDownTo(BlockView world, BlockPos pos, BlockState state, BlockPos fromPos, BlockState fromState)
private boolean
canPassThrough(BlockGetter level, Fluid fluid, BlockPos sourcePos, BlockState sourceState, Direction direction, BlockPos testPos, BlockState testState, FluidState testFluidState)
method_15746(class_1922 arg0, class_3611 arg1, class_2338 arg2, class_2680 arg3, class_2350 arg4, class_2338 arg5, class_2680 arg6, class_3610 arg7)
canFlowThrough(BlockView world, Fluid fluid, BlockPos pos, BlockState state, Direction face, BlockPos fromPos, BlockState fromState, FluidState fluidState)
private boolean
canMaybePassThrough(BlockGetter level, BlockPos sourcePos, BlockState sourceState, Direction direction, BlockPos testPos, BlockState testState, FluidState testFluidState)
method_61813(class_1922 arg0, class_2338 arg1, class_2680 arg2, class_2350 arg3, class_2338 arg4, class_2680 arg5, class_3610 arg6)
canFlowThrough(BlockView world, BlockPos pos, BlockState state, Direction face, BlockPos fromPos, BlockState fromState, FluidState fluidState)
private boolean
isSourceBlockOfThisType(FluidState state)
method_15752(class_3610 arg0)
isMatchingAndStill(FluidState state)
protected abstract int
getSlopeFindDistance(LevelReader level)
method_15733(class_4538 arg0)
getMaxFlowDistance(WorldView world)
private int
sourceNeighborCount(LevelReader level, BlockPos pos)
method_15740(class_4538 arg0, class_2338 arg1)
countNeighboringSources(WorldView world, BlockPos pos)
protected Map<Direction, FluidState>
getSpread(ServerLevel level, BlockPos pos, BlockState state)
method_15726(class_3218 arg0, class_2338 arg1, class_2680 arg2)
getSpread(ServerWorld world, BlockPos pos, BlockState state)
private static boolean
canHoldAnyFluid(BlockState state)
method_61814(class_2680 arg0)
canFill(BlockState state)
private static boolean
canHoldFluid(BlockGetter level, BlockPos pos, BlockState state, Fluid newFluid)
method_15754(class_1922 arg0, class_2338 arg1, class_2680 arg2, class_3611 arg3)
canFill(BlockView world, BlockPos pos, BlockState state, Fluid fluid)
private static boolean
canHoldSpecificFluid(BlockGetter level, BlockPos pos, BlockState state, Fluid newFluid)
method_61815(class_1922 arg0, class_2338 arg1, class_2680 arg2, class_3611 arg3)
canFillWithFluid(BlockView world, BlockPos pos, BlockState state, Fluid fluid)
protected abstract int
getDropOff(LevelReader level)
method_15739(class_4538 arg0)
getLevelDecreasePerBlock(WorldView world)
protected int
getSpreadDelay(Level level, BlockPos pos, FluidState oldFluidState, FluidState newFluidState)
method_15753(class_1937 arg0, class_2338 arg1, class_3610 arg2, class_3610 arg3)
getNextTickDelay(World world, BlockPos pos, FluidState oldState, FluidState newState)
public void
tick(ServerLevel level, BlockPos pos, BlockState blockState, FluidState fluidState)
method_15778(class_3218 arg0, class_2338 arg1, class_2680 arg2, class_3610 arg3)
onScheduledTick(ServerWorld arg0, BlockPos arg1, BlockState arg2, FluidState arg3)
protected static int
getLegacyLevel(FluidState fluidState)
method_15741(class_3610 arg0)
getBlockStateLevel(FluidState state)
private static boolean
hasSameAbove(FluidState fluidState, BlockGetter level, BlockPos pos)
method_17774(class_3610 arg0, class_1922 arg1, class_2338 arg2)
isFluidAboveEqual(FluidState state, BlockView world, BlockPos pos)
public float
getHeight(FluidState fluidState, BlockGetter level, BlockPos pos)
method_15788(class_3610 arg0, class_1922 arg1, class_2338 arg2)
getHeight(FluidState arg0, BlockView arg1, BlockPos arg2)
public float
getOwnHeight(FluidState fluidState)
method_20784(class_3610 arg0)
getHeight(FluidState arg0)
public abstract int
getAmount(FluidState fluidState)
method_15779(class_3610 arg0)
getLevel(FluidState arg0)
public VoxelShape
getShape(FluidState state, BlockGetter level, BlockPos pos)
method_17775(class_3610 arg0, class_1922 arg1, class_2338 arg2)
getShape(FluidState arg0, BlockView arg1, BlockPos arg2)
private static VoxelShape
lambda$getShape$1(BlockGetter arg0, BlockPos arg1, FluidState arg2)
method_17773(class_1922 arg0, class_2338 arg1, class_3610 arg2)
method_17773(BlockView arg0, BlockPos arg1, FluidState state2)
private static it.unimi.dsi.fastutil.objects.Object2ByteLinkedOpenHashMap
lambda$static$0()
method_15735()
method_15735()