Package net.minecraft.fluid
Class FlowableFluid
java.lang.Object
net.minecraft.fluid.Fluid
net.minecraft.fluid.FlowableFluid
- Direct Known Subclasses:
LavaFluid
,WaterFluid
public abstract class FlowableFluid extends Fluid
Represents a fluid which can flow.
-
Field Summary
Fields Modifier and Type Field Description static BooleanProperty
FALLING
private static ThreadLocal<Object2ByteLinkedOpenHashMap<Block.NeighborGroup>>
field_15901
static IntProperty
LEVEL
private Map<FluidState,VoxelShape>
shapeCache
Fields inherited from class net.minecraft.fluid.Fluid
STATE_IDS, stateManager
-
Constructor Summary
Constructors Constructor Description FlowableFluid()
-
Method Summary
Modifier and Type Method Description protected void
appendProperties(StateManager.Builder<Fluid,FluidState> builder)
protected abstract void
beforeBreakingBlock(WorldAccess world, BlockPos pos, BlockState state)
private boolean
canFill(BlockView world, BlockPos pos, BlockState state, Fluid fluid)
protected boolean
canFlow(BlockView world, BlockPos fluidPos, BlockState fluidBlockState, Direction flowDirection, BlockPos flowTo, BlockState flowToBlockState, FluidState fluidState, Fluid fluid)
private boolean
canFlowThrough(BlockView world, Fluid fluid, BlockPos pos, BlockState state, Direction face, BlockPos fromPos, BlockState fromState, FluidState fluidState)
protected void
flow(WorldAccess world, BlockPos pos, BlockState state, Direction direction, FluidState fluidState)
abstract Fluid
getFlowing()
FluidState
getFlowing(int level, boolean falling)
protected abstract int
getFlowSpeed(WorldView world)
float
getHeight(FluidState state)
float
getHeight(FluidState state, BlockView world, BlockPos pos)
protected abstract int
getLevelDecreasePerBlock(WorldView world)
protected int
getNextTickDelay(World world, BlockPos pos, FluidState oldState, FluidState newState)
VoxelShape
getShape(FluidState state, BlockView world, BlockPos pos)
protected Map<Direction,FluidState>
getSpread(WorldView world, BlockPos pos, BlockState state)
abstract Fluid
getStill()
FluidState
getStill(boolean falling)
protected FluidState
getUpdatedState(WorldView world, BlockPos pos, BlockState state)
Vec3d
getVelocity(BlockView world, BlockPos pos, FluidState state)
private static boolean
isFluidAboveEqual(FluidState state, BlockView world, BlockPos pos)
protected abstract boolean
isInfinite()
private boolean
isMatchingAndStill(FluidState state)
private boolean
method_15736(BlockView world, Fluid fluid, BlockPos pos, BlockState state, BlockPos fromPos, BlockState fromState)
private int
method_15740(WorldView world, BlockPos pos)
protected static int
method_15741(FluidState state)
protected int
method_15742(WorldView world, BlockPos blockPos, int int2, Direction direction, BlockState blockState, BlockPos blockPos2, Short2ObjectMap<com.mojang.datafixers.util.Pair<BlockState,FluidState>> short2ObjectMap, Short2BooleanMap short2BooleanMap)
private void
method_15744(WorldAccess world, BlockPos pos, FluidState fluidState, BlockState blockState)
private static short
method_15747(BlockPos blockPos, BlockPos blockPos2)
private boolean
method_15748(FluidState state)
protected boolean
method_15749(BlockView world, BlockPos pos, Direction direction)
void
onScheduledTick(World world, BlockPos pos, FluidState state)
private boolean
receivesFlow(Direction face, BlockView world, BlockPos pos, BlockState state, BlockPos fromPos, BlockState fromState)
protected void
tryFlow(WorldAccess world, BlockPos fluidPos, FluidState state)
Methods inherited from class net.minecraft.fluid.Fluid
canBeReplacedWith, getBlastResistance, getBucketItem, getDefaultState, getLevel, getParticle, getStateManager, getTickRate, hasRandomTicks, isEmpty, isIn, isStill, matchesType, onRandomTick, randomDisplayTick, setDefaultState, toBlockState
-
Field Details
-
FALLING
-
LEVEL
-
field_15901
-
shapeCache
-
-
Constructor Details
-
FlowableFluid
public FlowableFluid()
-
-
Method Details
-
appendProperties
- Overrides:
appendProperties
in classFluid
-
getVelocity
- Specified by:
getVelocity
in classFluid
-
method_15748
-
method_15749
-
tryFlow
-
method_15744
private void method_15744(WorldAccess world, BlockPos pos, FluidState fluidState, BlockState blockState) -
getUpdatedState
-
receivesFlow
private boolean receivesFlow(Direction face, BlockView world, BlockPos pos, BlockState state, BlockPos fromPos, BlockState fromState) -
getFlowing
-
getFlowing
-
getStill
-
getStill
-
isInfinite
protected abstract boolean isInfinite() -
flow
protected void flow(WorldAccess world, BlockPos pos, BlockState state, Direction direction, FluidState fluidState) -
beforeBreakingBlock
-
method_15747
-
method_15742
protected int method_15742(WorldView world, BlockPos blockPos, int int2, Direction direction, BlockState blockState, BlockPos blockPos2, Short2ObjectMap<com.mojang.datafixers.util.Pair<BlockState,FluidState>> short2ObjectMap, Short2BooleanMap short2BooleanMap) -
method_15736
private boolean method_15736(BlockView world, Fluid fluid, BlockPos pos, BlockState state, BlockPos fromPos, BlockState fromState) -
canFlowThrough
private boolean canFlowThrough(BlockView world, Fluid fluid, BlockPos pos, BlockState state, Direction face, BlockPos fromPos, BlockState fromState, FluidState fluidState) -
isMatchingAndStill
-
getFlowSpeed
-
method_15740
-
getSpread
-
canFill
-
canFlow
protected boolean canFlow(BlockView world, BlockPos fluidPos, BlockState fluidBlockState, Direction flowDirection, BlockPos flowTo, BlockState flowToBlockState, FluidState fluidState, Fluid fluid) -
getLevelDecreasePerBlock
-
getNextTickDelay
protected int getNextTickDelay(World world, BlockPos pos, FluidState oldState, FluidState newState) -
onScheduledTick
- Overrides:
onScheduledTick
in classFluid
-
method_15741
-
isFluidAboveEqual
-
getHeight
-
getHeight
-
getShape
-