Interface IBlockGetterExtension

All Known Subinterfaces:
BlockAndTintGetter, BlockGetter, CollisionGetter, CommonLevelAccessor, LevelAccessor, LevelReader, LevelTimeAccess, LightChunk, ServerLevelAccessor, SignalGetter, WorldGenLevel
All Known Implementing Classes:
ChunkAccess, ClientLevel, EmptyBlockGetter, EmptyLevelChunk, ImposterProtoChunk, Level, LevelChunk, PathNavigationRegion, ProtoChunk, RenderChunkRegion, ServerLevel, WorldGenRegion

public interface IBlockGetterExtension
  • Method Details

    • getAuxLightManager

      @Nullable @NonExtendable default @Nullable AuxiliaryLightManager getAuxLightManager(BlockPos pos)
      Get the AuxiliaryLightManager of the chunk containing the given BlockPos.

      The light manager must be used to hold light values controlled by dynamic data from BlockEntitys to ensure access to the light data is thread-safe and the data is available during chunk load from disk where BlockEntitys are not yet added to the chunk.

      Parameters:
      pos - The position for whose containing chunk the light manager is requested
      Returns:
      the light manager or null if the chunk is not accessible (ChunkSource.getChunkForLighting(int, int) returned null) or the given implementation of BlockGetter does not implement getAuxLightManager(ChunkPos)
    • getAuxLightManager

      @Nullable default @Nullable AuxiliaryLightManager getAuxLightManager(ChunkPos pos)
      Get the AuxiliaryLightManager of the chunk at the given ChunkPos.

      The light manager must be used to hold light values controlled by dynamic data from BlockEntitys to ensure access to the light data is thread-safe and the data is available during chunk load from disk where BlockEntitys are not yet added to the chunk.

      Parameters:
      pos - The position of the chunk from which the light manager is requested
      Returns:
      the light manager or null if the chunk is not accessible (ChunkSource.getChunkForLighting(int, int) returned null) or the given implementation of BlockGetter does not implement this method
    • getModelDataManager

      @Nullable default @Nullable ModelDataManager getModelDataManager()
      Retrieves the model data manager for this level. This will be null on a server level.