Class FluidVariantAttributes

java.lang.Object
net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariantAttributes

public final class FluidVariantAttributes extends Object
Common fluid variant attributes, accessible both client-side and server-side.
  • Method Details

    • register

      public static void register(net.minecraft.world.level.material.Fluid fluid, FluidVariantAttributeHandler handler)
      Register an attribute handler for the passed fluid.
    • getHandler

      public static @Nullable FluidVariantAttributeHandler getHandler(net.minecraft.world.level.material.Fluid fluid)
      Return the attribute handler for the passed fluid, if available, and null otherwise.
    • getHandlerOrDefault

      public static FluidVariantAttributeHandler getHandlerOrDefault(net.minecraft.world.level.material.Fluid fluid)
      Return the attribute handler for the passed fluid, if available, or the default instance otherwise.
    • getName

      public static net.minecraft.network.chat.Component getName(FluidVariant variant)
      Return the name that should be used for the passed fluid variant.
    • getColoredName

      public static net.minecraft.network.chat.Component getColoredName(FluidVariant variant)
      Return a colored version the name that should be used for the passed fluid variant.
    • getAssociatedColor

      public static int getAssociatedColor(FluidVariant variant)
      Return the associated color of the passed fluid variant.

      By default, it's used for the getColoredName(FluidVariant) color selection.

    • getFillSound

      public static net.minecraft.sounds.SoundEvent getFillSound(FluidVariant variant)
      Return the sound corresponding to a container of this fluid variant being filled if available, or the default (water) filling sound otherwise.
    • getEmptySound

      public static net.minecraft.sounds.SoundEvent getEmptySound(FluidVariant variant)
      Return the sound corresponding to a container of this fluid variant being emptied if available, or the default (water) emptying sound otherwise.
    • getLuminance

      public static int getLuminance(FluidVariant variant)
      Return an integer in [0, 15]: the light level emitted by this fluid variant, or 0 if it doesn't naturally emit light.
    • getTemperature

      public static int getTemperature(FluidVariant variant)
      Return a non-negative integer, representing the temperature of this fluid in Kelvin. The reference values are 300 for water, and 1300 for lava.
    • getViscosity

      public static int getViscosity(FluidVariant variant, @Nullable net.minecraft.world.level.Level level)
      Return a positive integer, representing the viscosity of this fluid variant. Fluids with lower viscosity generally flow faster than fluids with higher viscosity.

      More precisely, viscosity should be 200 * Fluid.getTickDelay(LevelReader) for flowing fluids. The reference values are 1000 for water, 2000 for lava in ultrawarm dimensions (such as the nether), and 6000 for lava in other dimensions.

      Parameters:
      level - Level if available, otherwise null.
    • isLighterThanAir

      public static boolean isLighterThanAir(FluidVariant variant)
      Return true if this fluid is lighter than air. Fluids that are lighter than air generally flow upwards.
    • enableColoredVanillaFluidNames

      @Deprecated(forRemoval=true) public static void enableColoredVanillaFluidNames()
      Deprecated, for removal: This API element is subject to removal in a future version.