Package com.hbm_m.inventory.fluid.tank
Class FluidLoaderInfinite
java.lang.Object
com.hbm_m.inventory.fluid.tank.FluidLoaderInfinite
- All Implemented Interfaces:
FluidTank.LoadingHandler
FluidLoaderInfinite из 1.7.10 — точная семантика по логике:
fillItem (бак -> контейнер):
- если chance срабатывает: tank -= amount
- всегда возвращает true
emptyItem (контейнер -> бак):
- если chance срабатывает: tank += amount (clamp maxFill)
- всегда возвращает true
Примечания по порту:
- В 1.20+ Infinite*Items не содержат explicit chance/allowPressure/getType как в 1.7.10.
В этой реализации делаем соответствие:
* amount = transferRate (берём через drain по максимально запросимому объёму)
* chance = 1 (т.е. срабатывает всегда)
* allowPressure делегируем тому, что решит общий pressure-flow: tank.loadTank уже не блокирует
infinite предметы под давлением, а сам Infinite*Item не имеет separate pressure-проверки.
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
FluidLoaderInfinite
public FluidLoaderInfinite()
-
-
Method Details
-
fillItem
public boolean fillItem(net.minecraft.world.item.ItemStack[] slots, int in, int out, FluidTank tank) - Specified by:
fillItemin interfaceFluidTank.LoadingHandler
-
emptyItem
public boolean emptyItem(net.minecraft.world.item.ItemStack[] slots, int in, int out, FluidTank tank) - Specified by:
emptyItemin interfaceFluidTank.LoadingHandler
-