java.lang.Object
net.minecraftforge.fluids.capability.templates.FluidTank
所有已实现的接口:
IFluidHandler, IFluidTank

public class FluidTank extends Object implements IFluidHandler, IFluidTank
Flexible implementation of a Fluid Storage object. NOT REQUIRED.
  • 字段详细资料

  • 构造器详细资料

    • FluidTank

      public FluidTank(int capacity)
    • FluidTank

      public FluidTank(int capacity, Predicate<FluidStack> validator)
  • 方法详细资料

    • setCapacity

      public FluidTank setCapacity(int capacity)
    • setValidator

      public FluidTank setValidator(Predicate<FluidStack> validator)
    • isFluidValid

      public boolean isFluidValid(FluidStack stack)
      指定者:
      isFluidValid 在接口中 IFluidTank
      参数:
      stack - Fluidstack holding the Fluid to be queried.
      返回:
      If the tank can hold the fluid (EVER, not at the time of query).
    • getCapacity

      public int getCapacity()
      指定者:
      getCapacity 在接口中 IFluidTank
      返回:
      Capacity of this fluid tank.
    • getFluid

      @NotNull public @NotNull FluidStack getFluid()
      指定者:
      getFluid 在接口中 IFluidTank
      返回:
      FluidStack representing the fluid in the tank, null if the tank is empty.
    • getFluidAmount

      public int getFluidAmount()
      指定者:
      getFluidAmount 在接口中 IFluidTank
      返回:
      Current amount of fluid in the tank.
    • readFromNBT

      public FluidTank readFromNBT(CompoundTag nbt)
    • writeToNBT

      public CompoundTag writeToNBT(CompoundTag nbt)
    • getTanks

      public int getTanks()
      从接口复制的说明: IFluidHandler
      Returns the number of fluid storage units ("tanks") available
      指定者:
      getTanks 在接口中 IFluidHandler
      返回:
      The number of tanks available
    • getFluidInTank

      @NotNull public @NotNull FluidStack getFluidInTank(int tank)
      从接口复制的说明: IFluidHandler
      Returns the FluidStack in a given tank.

      IMPORTANT: This FluidStack MUST NOT be modified. This method is not for altering internal contents. Any implementers who are able to detect modification via this method should throw an exception. It is ENTIRELY reasonable and likely that the stack returned here will be a copy.

      SERIOUSLY: DO NOT MODIFY THE RETURNED FLUIDSTACK

      指定者:
      getFluidInTank 在接口中 IFluidHandler
      参数:
      tank - Tank to query.
      返回:
      FluidStack in a given tank. FluidStack.EMPTY if the tank is empty.
    • getTankCapacity

      public int getTankCapacity(int tank)
      从接口复制的说明: IFluidHandler
      Retrieves the maximum fluid amount for a given tank.
      指定者:
      getTankCapacity 在接口中 IFluidHandler
      参数:
      tank - Tank to query.
      返回:
      The maximum fluid amount held by the tank.
    • isFluidValid

      public boolean isFluidValid(int tank, @NotNull @NotNull FluidStack stack)
      从接口复制的说明: IFluidHandler
      This function is a way to determine which fluids can exist inside a given handler. General purpose tanks will basically always return TRUE for this.
      指定者:
      isFluidValid 在接口中 IFluidHandler
      参数:
      tank - Tank to query for validity
      stack - Stack to test with for validity
      返回:
      TRUE if the tank can hold the FluidStack, not considering current state. (Basically, is a given fluid EVER allowed in this tank?) Return FALSE if the answer to that question is 'no.'
    • fill

      public int fill(FluidStack resource, IFluidHandler.FluidAction action)
      从接口复制的说明: IFluidHandler
      Fills fluid into internal tanks, distribution is left entirely to the IFluidHandler.
      指定者:
      fill 在接口中 IFluidHandler
      指定者:
      fill 在接口中 IFluidTank
      参数:
      resource - FluidStack representing the Fluid and maximum amount of fluid to be filled.
      action - If SIMULATE, fill will only be simulated.
      返回:
      Amount of resource that was (or would have been, if simulated) filled.
    • drain

      @NotNull public @NotNull FluidStack drain(FluidStack resource, IFluidHandler.FluidAction action)
      从接口复制的说明: IFluidHandler
      Drains fluid out of internal tanks, distribution is left entirely to the IFluidHandler.
      指定者:
      drain 在接口中 IFluidHandler
      指定者:
      drain 在接口中 IFluidTank
      参数:
      resource - FluidStack representing the Fluid and maximum amount of fluid to be drained.
      action - If SIMULATE, drain will only be simulated.
      返回:
      FluidStack representing the Fluid and amount that was (or would have been, if simulated) drained.
    • drain

      @NotNull public @NotNull FluidStack drain(int maxDrain, IFluidHandler.FluidAction action)
      从接口复制的说明: IFluidHandler
      Drains fluid out of internal tanks, distribution is left entirely to the IFluidHandler.

      This method is not Fluid-sensitive.

      指定者:
      drain 在接口中 IFluidHandler
      指定者:
      drain 在接口中 IFluidTank
      参数:
      maxDrain - Maximum amount of fluid to drain.
      action - If SIMULATE, drain will only be simulated.
      返回:
      FluidStack representing the Fluid and amount that was (or would have been, if simulated) drained.
    • onContentsChanged

      protected void onContentsChanged()
    • setFluid

      public void setFluid(FluidStack stack)
    • isEmpty

      public boolean isEmpty()
    • getSpace

      public int getSpace()