Class HTBlockEntity
-
- All Implemented Interfaces:
-
com.lowdragmc.lowdraglib2.async.IAsyncLogic,com.lowdragmc.lowdraglib2.syncdata.IManaged,com.lowdragmc.lowdraglib2.syncdata.holder.IManagedHolder,com.lowdragmc.lowdraglib2.syncdata.holder.IPersistManagedHolder,com.lowdragmc.lowdraglib2.syncdata.holder.IRPCManagedHolder,com.lowdragmc.lowdraglib2.syncdata.holder.ISyncMangedHolder,com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.IBlockEntityManaged,com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.IBlockEntityManagedHolder,com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.IRPCBlockEntity,com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.ISyncBlockEntity,com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.ISyncPersistRPCBlockEntity,hiiragi283.core.api.block.entity.HTOwnedBlockEntity,hiiragi283.core.api.block.entity.HTSoundPlayerBlockEntity,hiiragi283.core.api.storage.HTHandlerProvider,hiiragi283.core.api.storage.energy.HTEnergyHandler,hiiragi283.core.api.storage.energy.HTSidedEnergyStorage,hiiragi283.core.api.storage.fluid.HTFluidHandler,hiiragi283.core.api.storage.fluid.HTSidedFluidHandler,hiiragi283.core.api.storage.item.HTItemHandler,hiiragi283.core.api.storage.item.HTSidedItemHandler,net.minecraft.world.Nameable,net.neoforged.neoforge.attachment.IAttachmentHolder,net.neoforged.neoforge.common.extensions.IBlockEntityExtension,net.neoforged.neoforge.energy.IEnergyStorage,net.neoforged.neoforge.fluids.capability.IFluidHandler,net.neoforged.neoforge.items.IItemHandler
public abstract class HTBlockEntity extends HTExtendedBlockEntity implements Nameable, HTEnergyHandler, HTFluidHandler, HTHandlerProvider, HTItemHandler, HTOwnedBlockEntity, HTSoundPlayerBlockEntity
キャパビリティやオーナーを保持するHTExtendedBlockEntityの拡張クラス
-
-
Field Summary
Fields Modifier and Type Field Description private final Integerticksprivate UUIDownerIdprivate final ServerLevelserverLevelprivate final Integerslotsprivate final BooleanisAsyncValidprivate final BlockEntityType<?>typeprivate final ModelDatamodelDataprivate final BlockPosblockPosprivate final StringsyncTagprivate final CompoundTagpersistentDataprivate final Integertanksprivate final ChunkPostrackingPosprivate final BlockEntityselfprivate final IManagedStoragerootStorageprivate final IntegermaxEnergyStoredprivate final IManagedStoragesyncStorageprivate final IntegerenergyStoredprivate BlockStateblockStateprivate final BooleanisRemovedprivate final ManagedFieldHolderfieldHolderprivate final Packet<ClientGamePacketListener>updatePacketprivate final Levellevelprivate final Componentnameprivate final ComponentcustomNameprivate final ComponentdisplayName
-
Constructor Summary
Constructors Constructor Description HTBlockEntity(HTDeferredBlockEntityType<?> type, BlockPos pos, BlockState state)
-
Method Summary
Modifier and Type Method Description final IntegergetTicks()final UUIDgetOwnerId()final UnitsetOwnerId(UUID value)UnitonBlockRemoved(BlockState state, Level level, BlockPos pos)final ComponentgetName()final ComponentgetCustomName()final UUIDgetOwner()保持している所有者のUUIDを取得します。 BlockPosgetSoundPos()UnitplaySound(SoundEvent sound, Float volume, Float pitch)BooleanhasFluidHandler()final List<HTFluidTank>getFluidTanks(Direction side)指定した面からHTFluidTankの一覧を取得します。 final IFluidHandlergetFluidHandler(Direction direction)指定した面からIFluidHandlerを取得します。 final UnitapplyFluidTanks(List<HTFluidTank> containers, HTAttachedFluids contents)final HTAttachedFluidscollectFluidTanks(List<HTFluidTank> containers)final BooleanhasEnergyStorage()final HTEnergyBatterygetEnergyBattery(Direction side)指定した面からHTEnergyBatteryを取得します。 final IEnergyStoragegetEnergyStorage(Direction direction)指定した面からIEnergyStorageを取得します。 final UnitapplyEnergyBattery(List<HTEnergyBattery> containers, HTAttachedEnergy contents)final HTAttachedEnergycollectEnergyBattery(List<HTEnergyBattery> containers)final BooleanhasItemHandler()final List<HTItemSlot>getItemSlots(Direction side)指定した面からHTItemSlotの一覧を取得します。 final IItemHandlergetItemHandler(Direction direction)指定した面からIItemHandlerを取得します。 final UnitapplyItemSlots(List<HTItemSlot> containers, HTAttachedItems contents)final HTAttachedItemscollectItemSlots(List<HTItemSlot> containers)final static UnittickClient(Level level, BlockPos pos, BlockState state, HTBlockEntity blockEntity)final static UnittickServer(Level level, BlockPos pos, BlockState state, HTBlockEntity blockEntity)-
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.ISyncPersistRPCBlockEntity
getRootStorage, getServerLevel, getTrackingPos, isAsyncValid, rpcToPlayer, rpcToServer, rpcToTracking -
Methods inherited from class hiiragi283.core.api.storage.item.HTSidedItemHandler
extractItem, getItemSideFor, getSlotLimit, getSlots, getSlots, getStackInSlot, insertItem, isItemValid -
Methods inherited from class net.minecraft.world.level.block.entity.BlockEntity
applyComponents, applyComponentsFromItemStack, clearRemoved, collectComponents, components, fillCrashReportCategory, getBlockPos, getBlockState, getLevel, getPersistentData, getType, getUpdatePacket, getUpdateTag, hasLevel, isRemoved, isValidBlockState, loadCustomOnly, loadWithComponents, onlyOpCanSetNbt, removeComponentsFromTag, saveCustomAndMetadata, saveCustomOnly, saveToItem, saveWithFullMetadata, saveWithId, saveWithoutMetadata, setComponents, triggerEvent -
Methods inherited from class net.neoforged.neoforge.common.extensions.IBlockEntityExtension
getModelData, handleUpdateTag, hasCustomOutlineRendering, invalidateCapabilities, onChunkUnloaded, onDataPacket, onLoad, requestModelDataUpdate -
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.holder.ISyncMangedHolder
attachAsyncLogic, createSyncPacket, deserializeInitialData, detachAsyncLogic, getSyncTag, handleSyncPacket, passivelySync, readCustomSyncData, serializeInitialData, sync, useAsyncThread, writeCustomSyncData -
Methods inherited from class hiiragi283.core.api.storage.fluid.HTSidedFluidHandler
drain, drain, fill, getFluidInTank, getFluidSideFor, getTankCapacity, getTanks, getTanks, isFluidValid -
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.IBlockEntityManagedHolder
getSelf -
Methods inherited from class hiiragi283.core.api.storage.energy.HTSidedEnergyStorage
canExtract, canReceive, extractEnergy, getEnergySideFor, getEnergyStored, getEnergyStored, getMaxEnergyStored, getMaxEnergyStored, receiveEnergy -
Methods inherited from class hiiragi283.core.common.block.entity.HTExtendedBlockEntity
getComparatorOutput, getSyncStorage, getSyncStorage, neighborChanged, onRemove, onUpdateLevel, onUpdatedState, setBlockState, setBlockState, setChanged, setLevel, setRemoved -
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.IManaged
addSyncUpdateListener, getFieldHolder, markDirty, notifyPersistence, onPersistedMarkChanged, onSyncMarkChanged -
Methods inherited from class hiiragi283.core.common.block.entity.HTBlockEntity
getCustomName, getName -
Methods inherited from class net.minecraft.world.Nameable
getDisplayName, hasCustomName -
Methods inherited from class net.neoforged.neoforge.attachment.IAttachmentHolder
getData, getData, getExistingData, getExistingData, getExistingDataOrNull, getExistingDataOrNull, hasAttachments, hasData, hasData, removeData, removeData, setData, setData, syncData, syncData -
Methods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
serializeAttachments -
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.holder.IRPCManagedHolder
createRPCPacket, getRPCMethod, handleRPCPacket, parseArgs2Bytes, rpcToPlayer, rpcToServer, rpcToTracking -
Methods inherited from class com.lowdragmc.lowdraglib2.async.IAsyncLogic
asyncTick -
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.holder.IManagedHolder
getServerLevel, getTrackingPos -
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.holder.IPersistManagedHolder
loadCustomPersistedData, loadManagedPersistentData, saveCustomPersistedData, saveManagedPersistentData -
Methods inherited from class com.lowdragmc.lowdraglib2.syncdata.holder.blockentity.IBlockEntityManaged
asBlockEntity, onRerenderTriggered, scheduleRenderUpdate -
Methods inherited from class hiiragi283.core.api.storage.energy.HTEnergyHandler
extractEnergy, getEnergyStored, getMaxEnergyStored, receiveEnergy -
Methods inherited from class hiiragi283.core.api.storage.fluid.HTFluidHandler
drain, drain, fill, getFluidInTank, getFluidTank, getTankCapacity, getTanks, isFluidValid -
Methods inherited from class hiiragi283.core.api.storage.item.HTItemHandler
extractItem, getItemSlot, getSlotLimit, getSlots, getStackInSlot, insertItem, isItemValid -
Methods inherited from class hiiragi283.core.api.block.entity.HTOwnedBlockEntity
getFakePlayer, getOwnerName, getOwnerOrFake, getOwnerPlayer, getOwnerPlayer -
Methods inherited from class hiiragi283.core.api.block.entity.HTSoundPlayerBlockEntity
getSoundSource -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
HTBlockEntity
HTBlockEntity(HTDeferredBlockEntityType<?> type, BlockPos pos, BlockState state)
-
-
Method Detail
-
getOwnerId
final UUID getOwnerId()
-
setOwnerId
final Unit setOwnerId(UUID value)
-
onBlockRemoved
Unit onBlockRemoved(BlockState state, Level level, BlockPos pos)
-
getName
final Component getName()
-
getCustomName
final Component getCustomName()
-
getSoundPos
BlockPos getSoundPos()
-
hasFluidHandler
Boolean hasFluidHandler()
-
getFluidTanks
final List<HTFluidTank> getFluidTanks(Direction side)
指定した面からHTFluidTankの一覧を取得します。
-
getFluidHandler
final IFluidHandler getFluidHandler(Direction direction)
指定した面からIFluidHandlerを取得します。
- Returns:
取得できなかった場合は
null
-
applyFluidTanks
final Unit applyFluidTanks(List<HTFluidTank> containers, HTAttachedFluids contents)
-
collectFluidTanks
final HTAttachedFluids collectFluidTanks(List<HTFluidTank> containers)
-
hasEnergyStorage
final Boolean hasEnergyStorage()
-
getEnergyBattery
final HTEnergyBattery getEnergyBattery(Direction side)
指定した面からHTEnergyBatteryを取得します。
- Returns:
取得できない場合は
null
-
getEnergyStorage
final IEnergyStorage getEnergyStorage(Direction direction)
指定した面からIEnergyStorageを取得します。
- Returns:
取得できなかった場合は
null
-
applyEnergyBattery
final Unit applyEnergyBattery(List<HTEnergyBattery> containers, HTAttachedEnergy contents)
-
collectEnergyBattery
final HTAttachedEnergy collectEnergyBattery(List<HTEnergyBattery> containers)
-
hasItemHandler
final Boolean hasItemHandler()
-
getItemSlots
final List<HTItemSlot> getItemSlots(Direction side)
指定した面からHTItemSlotの一覧を取得します。
-
getItemHandler
final IItemHandler getItemHandler(Direction direction)
指定した面からIItemHandlerを取得します。
- Returns:
取得できなかった場合は
null
-
applyItemSlots
final Unit applyItemSlots(List<HTItemSlot> containers, HTAttachedItems contents)
-
collectItemSlots
final HTAttachedItems collectItemSlots(List<HTItemSlot> containers)
-
tickClient
final static Unit tickClient(Level level, BlockPos pos, BlockState state, HTBlockEntity blockEntity)
-
tickServer
final static Unit tickServer(Level level, BlockPos pos, BlockState state, HTBlockEntity blockEntity)
-
-
-
-