Interface FluidVariant
- All Superinterfaces:
TransferVariant<Fluid>
An immutable association of a still fluid and data components.
Do not extend this class. Use of(Fluid)
and of(Fluid, ComponentChanges)
to create instances.
FluidVariantRendering
can be used for client-side rendering of fluid variants.
Fluid variants must always be compared with equals
, never by reference!
hashCode
is guaranteed to be correct and constant time independently of the size of the components.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final com.mojang.serialization.Codec
<FluidVariant> static final PacketCodec
<RegistryByteBuf, FluidVariant> -
Method Summary
Modifier and TypeMethodDescriptionstatic FluidVariant
blank()
Retrieve a blank FluidVariant.default Fluid
getFluid()
Return the fluid of this variant.default RegistryEntry
<Fluid> static FluidVariant
Retrieve a FluidVariant with a fluid, and anull
tag.static FluidVariant
of
(Fluid fluid, ComponentChanges components) Retrieve a FluidVariant with a fluid, and an optional tag.withComponentChanges
(ComponentChanges changes) Creates a copy of this FluidVariant with the provided component changes applied.Methods inherited from interface net.fabricmc.fabric.api.transfer.v1.storage.TransferVariant
componentsMatch, getComponentMap, getComponents, getObject, hasComponents, isBlank, isOf
-
Field Details
-
CODEC
-
PACKET_CODEC
-
-
Method Details
-
blank
Retrieve a blank FluidVariant. -
of
Retrieve a FluidVariant with a fluid, and anull
tag.The flowing and still variations of flowable fluids are normalized to always refer to the still variant. For example,
FluidVariant.of(Fluids.FLOWING_WATER).getFluid() == Fluids.WATER
. -
of
Retrieve a FluidVariant with a fluid, and an optional tag.The flowing and still variations of flowable fluids are normalized to always refer to the still fluid. For example,
FluidVariant.of(Fluids.FLOWING_WATER, ComponentChanges.EMPTY).getFluid() == Fluids.WATER
. -
getFluid
Return the fluid of this variant. -
getRegistryEntry
-
withComponentChanges
Creates a copy of this FluidVariant with the provided component changes applied.- Specified by:
withComponentChanges
in interfaceTransferVariant<Fluid>
- Parameters:
changes
- the changes to apply- Returns:
- the new variant with the changes applied
-