Interface IHeatExchangingTE
- All Known Implementing Classes:
AdvancedAirCompressorBlockEntity,AdvancedLiquidCompressorBlockEntity,CompressedIronBlockBlockEntity,CreativeCompressedIronBlockBlockEntity,EtchingTankBlockEntity,FluxCompressorBlockEntity,HeatPipeBlockEntity,HeatSinkBlockEntity,PneumaticDynamoBlockEntity,RefineryControllerBlockEntity,RefineryOutputBlockEntity,SolarCompressorBlockEntity,ThermalCompressorBlockEntity,ThermopneumaticProcessingPlantBlockEntity,VortexTubeBlockEntity
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
Non-API interface for all heat-handling tile entities in the mod
-
Method Summary
Modifier and TypeMethodDescriptiondefault IHeatExchangerLogicGet the heat exchanger on the null or default face.getHeatExchanger(net.minecraft.core.Direction dir) Get the heat exchanger on the given face.default BiPredicate<net.minecraft.world.level.LevelAccessor,net.minecraft.core.BlockPos> Should this (heat-using) machine lose heat to the surrounding air blocks? Most blocks do.default voidinitHeatExchangersOnPlacement(net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos) Initialize this BE's hull heat exchanger to the ambient temperature, when the block is first placed down.default voidinitializeHullHeatExchangers(net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos) Discover heat exchangers by side for this block, and initialize each distinct heat exchanger with the side that it is connected to.default boolean
-
Method Details
-
getHeatExchanger
Get the heat exchanger on the given face. This may return null iff the direction is not null.- Parameters:
dir- the side of the block to check, or null for the default/primary heat exchanger- Returns:
- a heat exchanger
-
getHeatExchanger
Get the heat exchanger on the null or default face.- Returns:
- the default heat exchanger, can be null
-
heatExchangerBlockFilter
default BiPredicate<net.minecraft.world.level.LevelAccessor,net.minecraft.core.BlockPos> heatExchangerBlockFilter()Should this (heat-using) machine lose heat to the surrounding air blocks? Most blocks do.- Returns:
- true if heat will be lost to the air on exposed faces, false otherwise
-
initHeatExchangersOnPlacement
default void initHeatExchangersOnPlacement(net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos) Initialize this BE's hull heat exchanger to the ambient temperature, when the block is first placed down. Override this in BE's which have multiple hull heat exchangers (e.g. vortex tube or thermal compressor)- Parameters:
world- the BE's worldpos- the BE's block pos
-
initializeHullHeatExchangers
default void initializeHullHeatExchangers(net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos) Discover heat exchangers by side for this block, and initialize each distinct heat exchanger with the side that it is connected to. Call this on first BE server tick, and when a neighboring block update occurs. Don't override this method.- Parameters:
world- the BE's worldpos- the BE's block pos
-
shouldShowGuiHeatTab
default boolean shouldShowGuiHeatTab()
-