Package com.petrolpark.core.fluid
Interface FluidMixer.IFluidMixer
- Enclosing class:
FluidMixer
public static interface FluidMixer.IFluidMixer
-
Method Summary
Modifier and TypeMethodDescriptionvoidafterMix(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack result, net.neoforged.neoforge.fluids.FluidStack... fluidStacks) Called on everyFluidMixer.IFluidMixerafter the highest-priorityFluidMixer.IFluidMixerhasmixedthem.default intgetAmountToMixIn(net.minecraft.core.RegistryAccess registryAccess, int maxResultAmount, net.neoforged.neoforge.fluids.FluidStack baseFluidStack, net.neoforged.neoforge.fluids.FluidStack addedFluidStack) Get the maximum amount ofaddedFluidwhich can be mixed in such that themixing resultamount is no larger thanmaxResultAmount.default intgetMix2Priority(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack fluidStack1, net.neoforged.neoforge.fluids.FluidStack fluidStack2) Shortcut version ofgetMixPriority(RegistryAccess, FluidStack...)for 2 Fluids only.intgetMixPriority(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack... fluidStacks) Decide whether thisFluidMixer.IFluidMixeris applicable to this combination of Fluid Stacks, and if so, what priority this mixer has for mixing them.net.neoforged.neoforge.fluids.FluidStackmix(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack... fluidStacks) Called on only oneFluidMixer.IFluidMixerwhenever Fluids are mixed.default net.neoforged.neoforge.fluids.FluidStackmix2(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack fluidStack1, net.neoforged.neoforge.fluids.FluidStack fluidStack2) Shortcut version ofmix(RegistryAccess, FluidStack...)for 2 Fluids only.
-
Method Details
-
getAmountToMixIn
default int getAmountToMixIn(net.minecraft.core.RegistryAccess registryAccess, int maxResultAmount, net.neoforged.neoforge.fluids.FluidStack baseFluidStack, net.neoforged.neoforge.fluids.FluidStack addedFluidStack) Get the maximum amount ofaddedFluidwhich can be mixed in such that themixing resultamount is no larger thanmaxResultAmount. Do not modify either Fluid Stack.- Parameters:
baseFluidStack-addedFluidStack-- Returns:
- Integer less than or equal to the amount of
addedFluid
-
getMix2Priority
default int getMix2Priority(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack fluidStack1, net.neoforged.neoforge.fluids.FluidStack fluidStack2) Shortcut version ofgetMixPriority(RegistryAccess, FluidStack...)for 2 Fluids only. -
getMixPriority
int getMixPriority(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack... fluidStacks) Decide whether thisFluidMixer.IFluidMixeris applicable to this combination of Fluid Stacks, and if so, what priority this mixer has for mixing them. Do not modify any Fluid Stack.- Parameters:
fluidStacks- Stacks to mix- Returns:
- Negative number to not use this mixer,
0to only callafterMix(RegistryAccess, FluidStack, FluidStack...), or a positive priority to bid to callmix(RegistryAccess, FluidStack...).
-
mix2
default net.neoforged.neoforge.fluids.FluidStack mix2(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack fluidStack1, net.neoforged.neoforge.fluids.FluidStack fluidStack2) Shortcut version ofmix(RegistryAccess, FluidStack...)for 2 Fluids only. The amount does not necessarily have to be the sum of amounts of each input Fluid Stack, but if it is not make suregetAmountToMixIn(RegistryAccess, int, FluidStack, FluidStack)is properly defined. -
mix
net.neoforged.neoforge.fluids.FluidStack mix(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack... fluidStacks) Called on only oneFluidMixer.IFluidMixerwhenever Fluids are mixed. Do not modify any Fluid Stack.- Parameters:
fluidStacks-- Returns:
- A new Fluid Stack instance
-
afterMix
void afterMix(net.minecraft.core.RegistryAccess registryAccess, net.neoforged.neoforge.fluids.FluidStack result, net.neoforged.neoforge.fluids.FluidStack... fluidStacks) Called on everyFluidMixer.IFluidMixerafter the highest-priorityFluidMixer.IFluidMixerhasmixedthem. Do not change the amount of Fluid.- Parameters:
result-fluidStacks- Input Fluid Stacks
-