Class FluidTankBlockEntity
java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.level.block.entity.BlockEntity
com.simibubi.create.foundation.blockEntity.SyncedBlockEntity
com.simibubi.create.foundation.blockEntity.CachedRenderBBBlockEntity
com.simibubi.create.foundation.blockEntity.SmartBlockEntity
com.simibubi.create.content.fluids.tank.FluidTankBlockEntity
- All Implemented Interfaces:
IHaveCustomOverlayIcon,IHaveGoggleInformation,PartialSafeNBT,SpecialBlockEntityItemRequirement,IMultiBlockEntityContainer,IMultiBlockEntityContainer.Fluid,IInteractionChecker,net.createmod.ponder.api.VirtualBlockEntity,net.neoforged.neoforge.attachment.IAttachmentHolder,net.neoforged.neoforge.common.extensions.IBlockEntityExtension
- Direct Known Subclasses:
CreativeFluidTankBlockEntity
public class FluidTankBlockEntity
extends SmartBlockEntity
implements IHaveGoggleInformation, IMultiBlockEntityContainer.Fluid
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.level.block.entity.BlockEntity
net.minecraft.world.level.block.entity.BlockEntity.DataComponentInputNested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
net.neoforged.neoforge.attachment.AttachmentHolder.AsFieldNested classes/interfaces inherited from interface com.simibubi.create.foundation.blockEntity.IMultiBlockEntityContainer
IMultiBlockEntityContainer.Fluid, IMultiBlockEntityContainer.Inventory -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected net.minecraft.core.BlockPosprotected net.neoforged.neoforge.fluids.capability.IFluidHandlerprotected booleanprotected intprotected net.minecraft.core.BlockPosprotected intprotected booleanprotected intprotected net.neoforged.neoforge.fluids.capability.templates.FluidTankprotected booleanprotected booleanprotected intprotected booleanFields inherited from class com.simibubi.create.foundation.blockEntity.SmartBlockEntity
lazyTickCounter, lazyTickRateFields inherited from class net.minecraft.world.level.block.entity.BlockEntity
level, remove, worldPositionFields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
ATTACHMENTS_NBT_KEY -
Constructor Summary
ConstructorsConstructorDescriptionFluidTankBlockEntity(net.minecraft.world.level.block.entity.BlockEntityType<?> type, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddBehaviours(List<BlockEntityBehaviour> behaviours) booleanaddToGoggleTooltip(List<net.minecraft.network.chat.Component> tooltip, boolean isPlayerSneaking) This method will be called when looking at aBlockEntitythat implements this interfacevoidapplyFluidTankSize(int blocks) protected SmartFluidTankprotected net.minecraft.world.phys.AABBstatic intnet.minecraft.core.BlockPosfloatnet.neoforged.neoforge.fluids.FluidStackgetFluid(int tank) net.createmod.catnip.animation.LerpedFloatintnet.minecraft.core.BlockPosnet.minecraft.core.Direction.Axisstatic intintgetMaxLength(net.minecraft.core.Direction.Axis longAxis, int width) static intintgetOtherFluidTankBlockEntity(net.minecraft.core.Direction direction) net.neoforged.neoforge.fluids.IFluidTankgetTank(int tank) net.neoforged.neoforge.fluids.capability.templates.FluidTankintgetTankSize(int tank) intintgetWidth()booleanhasTank()voidbooleanvoidlazyTick()modifyExtraData(Object data) voidprotected voidonFluidStackChanged(net.neoforged.neoforge.fluids.FluidStack newFluidStack) voidprotected voidread(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries, boolean clientPacket) Hook only these in future subclasses of STEstatic voidregisterCapabilities(net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent event) voidremoveController(boolean keepFluids) voidsendData()voidvoidsetController(net.minecraft.core.BlockPos controller) voidsetExtraData(Object data) voidsetFluidLevel(net.createmod.catnip.animation.LerpedFloat fluidLevel) voidsetHeight(int height) protected voidsetLuminosity(int luminosity) voidsetTankSize(int tank, int blocks) voidsetWidth(int width) voidsetWindows(boolean window) voidtick()voidvoidvoidprotected voidvoidwrite(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries, boolean clientPacket) Hook only these in future subclasses of STEvoidwriteSafe(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries) This will always be called from the logical serverMethods inherited from class com.simibubi.create.foundation.blockEntity.SmartBlockEntity
addBehavioursDeferred, attachBehaviourLate, award, awardIfNear, canPlayerUse, destroy, forEachBehaviour, getAllBehaviours, getBehaviour, getRequiredItems, invalidate, isChunkUnloaded, isVirtual, loadAdditional, markVirtual, onChunkUnloaded, readClient, refreshBlockState, registerAwardables, remove, removeBehaviour, saveAdditional, sendToMenu, setLazyTickRate, setRemoved, writeClientMethods inherited from class com.simibubi.create.foundation.blockEntity.CachedRenderBBBlockEntity
getRenderBoundingBox, invalidateRenderBoundingBoxMethods inherited from class com.simibubi.create.foundation.blockEntity.SyncedBlockEntity
blockHolderGetter, getUpdatePacket, getUpdateTag, handleUpdateTag, notifyUpdate, onDataPacketMethods inherited from class net.minecraft.world.level.block.entity.BlockEntity
addEntityType, applyComponents, applyComponentsFromItemStack, applyImplicitComponents, clearRemoved, collectComponents, collectImplicitComponents, components, fillCrashReportCategory, getBlockPos, getBlockState, getLevel, getPersistentData, getPosFromTag, getType, hasLevel, isRemoved, isValidBlockState, loadCustomOnly, loadStatic, loadWithComponents, onlyOpCanSetNbt, parseCustomNameSafe, removeComponentsFromTag, removeData, saveCustomAndMetadata, saveCustomOnly, saveToItem, saveWithFullMetadata, saveWithId, saveWithoutMetadata, setBlockState, setChanged, setChanged, setComponents, setData, setLevel, syncData, triggerEventMethods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, serializeAttachmentsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder
getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncDataMethods inherited from interface net.neoforged.neoforge.common.extensions.IBlockEntityExtension
getModelData, hasCustomOutlineRendering, invalidateCapabilities, onLoad, requestModelDataUpdateMethods inherited from interface com.simibubi.create.api.equipment.goggles.IHaveCustomOverlayIcon
getIconMethods inherited from interface com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation
containedFluidTooltipMethods inherited from interface com.simibubi.create.foundation.blockEntity.IMultiBlockEntityContainer
getMainAxisOf
-
Field Details
-
fluidCapability
protected net.neoforged.neoforge.fluids.capability.IFluidHandler fluidCapability -
forceFluidLevelUpdate
protected boolean forceFluidLevelUpdate -
tankInventory
protected net.neoforged.neoforge.fluids.capability.templates.FluidTank tankInventory -
controller
protected net.minecraft.core.BlockPos controller -
lastKnownPos
protected net.minecraft.core.BlockPos lastKnownPos -
updateConnectivity
protected boolean updateConnectivity -
updateCapability
protected boolean updateCapability -
window
protected boolean window -
luminosity
protected int luminosity -
width
protected int width -
height
protected int height -
boiler
-
syncCooldown
protected int syncCooldown -
queuedSync
protected boolean queuedSync
-
-
Constructor Details
-
FluidTankBlockEntity
public FluidTankBlockEntity(net.minecraft.world.level.block.entity.BlockEntityType<?> type, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
-
-
Method Details
-
registerCapabilities
public static void registerCapabilities(net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent event) -
createInventory
-
updateConnectivity
protected void updateConnectivity() -
tick
public void tick()- Overrides:
tickin classSmartBlockEntity
-
lazyTick
public void lazyTick()- Overrides:
lazyTickin classSmartBlockEntity
-
getLastKnownPos
public net.minecraft.core.BlockPos getLastKnownPos()- Specified by:
getLastKnownPosin interfaceIMultiBlockEntityContainer
-
isController
public boolean isController()- Specified by:
isControllerin interfaceIMultiBlockEntityContainer
-
initialize
public void initialize()- Overrides:
initializein classSmartBlockEntity
-
onFluidStackChanged
protected void onFluidStackChanged(net.neoforged.neoforge.fluids.FluidStack newFluidStack) -
setLuminosity
protected void setLuminosity(int luminosity) -
getControllerBE
- Specified by:
getControllerBEin interfaceIMultiBlockEntityContainer
-
applyFluidTankSize
public void applyFluidTankSize(int blocks) -
removeController
public void removeController(boolean keepFluids) - Specified by:
removeControllerin interfaceIMultiBlockEntityContainer
-
toggleWindows
public void toggleWindows() -
updateBoilerTemperature
public void updateBoilerTemperature() -
sendDataImmediately
public void sendDataImmediately() -
sendData
public void sendData()- Overrides:
sendDatain classSyncedBlockEntity
-
setWindows
public void setWindows(boolean window) -
updateBoilerState
public void updateBoilerState() -
setController
public void setController(net.minecraft.core.BlockPos controller) - Specified by:
setControllerin interfaceIMultiBlockEntityContainer
-
getController
public net.minecraft.core.BlockPos getController()- Specified by:
getControllerin interfaceIMultiBlockEntityContainer
-
createRenderBoundingBox
protected net.minecraft.world.phys.AABB createRenderBoundingBox()- Overrides:
createRenderBoundingBoxin classCachedRenderBBBlockEntity
-
getOtherFluidTankBlockEntity
@Nullable public FluidTankBlockEntity getOtherFluidTankBlockEntity(net.minecraft.core.Direction direction) -
addToGoggleTooltip
public boolean addToGoggleTooltip(List<net.minecraft.network.chat.Component> tooltip, boolean isPlayerSneaking) Description copied from interface:IHaveGoggleInformationThis method will be called when looking at aBlockEntitythat implements this interface- Specified by:
addToGoggleTooltipin interfaceIHaveGoggleInformation- Returns:
trueif the tooltip creation was successful and should be displayed, orfalseif the overlay should not be displayed
-
read
protected void read(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries, boolean clientPacket) Description copied from class:SmartBlockEntityHook only these in future subclasses of STE- Overrides:
readin classSmartBlockEntity
-
getFillState
public float getFillState() -
write
public void write(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries, boolean clientPacket) Description copied from class:SmartBlockEntityHook only these in future subclasses of STE- Overrides:
writein classSmartBlockEntity
-
writeSafe
public void writeSafe(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries) Description copied from interface:PartialSafeNBTThis will always be called from the logical server- Specified by:
writeSafein interfacePartialSafeNBT- Overrides:
writeSafein classSmartBlockEntity
-
addBehaviours
- Specified by:
addBehavioursin classSmartBlockEntity
-
getTankInventory
public net.neoforged.neoforge.fluids.capability.templates.FluidTank getTankInventory() -
getTotalTankSize
public int getTotalTankSize() -
getMaxSize
public static int getMaxSize() -
getCapacityMultiplier
public static int getCapacityMultiplier() -
getMaxHeight
public static int getMaxHeight() -
getFluidLevel
public net.createmod.catnip.animation.LerpedFloat getFluidLevel() -
setFluidLevel
public void setFluidLevel(net.createmod.catnip.animation.LerpedFloat fluidLevel) -
preventConnectivityUpdate
public void preventConnectivityUpdate()- Specified by:
preventConnectivityUpdatein interfaceIMultiBlockEntityContainer
-
notifyMultiUpdated
public void notifyMultiUpdated()- Specified by:
notifyMultiUpdatedin interfaceIMultiBlockEntityContainer
-
setExtraData
- Specified by:
setExtraDatain interfaceIMultiBlockEntityContainer
-
getExtraData
- Specified by:
getExtraDatain interfaceIMultiBlockEntityContainer
-
modifyExtraData
- Specified by:
modifyExtraDatain interfaceIMultiBlockEntityContainer
-
getMainConnectionAxis
public net.minecraft.core.Direction.Axis getMainConnectionAxis()- Specified by:
getMainConnectionAxisin interfaceIMultiBlockEntityContainer
-
getMaxLength
public int getMaxLength(net.minecraft.core.Direction.Axis longAxis, int width) - Specified by:
getMaxLengthin interfaceIMultiBlockEntityContainer
-
getMaxWidth
public int getMaxWidth()- Specified by:
getMaxWidthin interfaceIMultiBlockEntityContainer
-
getHeight
public int getHeight()- Specified by:
getHeightin interfaceIMultiBlockEntityContainer
-
setHeight
public void setHeight(int height) - Specified by:
setHeightin interfaceIMultiBlockEntityContainer
-
getWidth
public int getWidth()- Specified by:
getWidthin interfaceIMultiBlockEntityContainer
-
setWidth
public void setWidth(int width) - Specified by:
setWidthin interfaceIMultiBlockEntityContainer
-
hasTank
public boolean hasTank()- Specified by:
hasTankin interfaceIMultiBlockEntityContainer.Fluid
-
getTankSize
public int getTankSize(int tank) - Specified by:
getTankSizein interfaceIMultiBlockEntityContainer.Fluid
-
setTankSize
public void setTankSize(int tank, int blocks) - Specified by:
setTankSizein interfaceIMultiBlockEntityContainer.Fluid
-
getTank
public net.neoforged.neoforge.fluids.IFluidTank getTank(int tank) - Specified by:
getTankin interfaceIMultiBlockEntityContainer.Fluid
-
getFluid
public net.neoforged.neoforge.fluids.FluidStack getFluid(int tank) - Specified by:
getFluidin interfaceIMultiBlockEntityContainer.Fluid
-