net.minecraft.world.chunk.light

public abstract class LightStorage<M extends ChunkToNibbleArrayMap<M>>

net.minecraft.world.level.lighting.LayerLightSectionStorage
net.minecraft.class_3560
net.minecraft.world.chunk.light.LightStorage

Field summary

Modifier and TypeField
private final LightType
layer
field_15805
lightType
protected final ChunkProvider
chunkSource
field_15803
chunkProvider
protected final it.unimi.dsi.fastutil.longs.Long2ByteMap
sectionStates
field_44716
sectionPropagations
private final it.unimi.dsi.fastutil.longs.LongSet
columnsWithSources
field_44718
enabledColumns
protected volatile M
visibleSectionData
field_15806
uncachedStorage
protected final M
updatingSectionData
field_15796
storage
protected final it.unimi.dsi.fastutil.longs.LongSet
changedSections
field_15802
dirtySections
protected final it.unimi.dsi.fastutil.longs.LongSet
sectionsAffectedByLightUpdates
field_16448
notifySections
protected final it.unimi.dsi.fastutil.longs.Long2ObjectMap<ChunkNibbleArray>
queuedSections
field_15807
queuedSections
private final it.unimi.dsi.fastutil.longs.LongSet
columnsToRetainQueuedDataFor
field_19342
columnsToRetain
private final it.unimi.dsi.fastutil.longs.LongSet
toRemove
field_15798
sectionsToRemove
protected volatile boolean
hasInconsistencies
field_44717
hasLightUpdates

Constructor summary

ModifierConstructor
protected (LightType lightType, ChunkProvider chunkProvider, M lightData)

Method summary

Modifier and TypeMethod
protected boolean
storingLightForSection(long sectionNode)
method_15524(long arg0)
hasSection(long sectionPos)
protected ChunkNibbleArray
getDataLayer(long sectionNode, boolean updating)
method_15522(long arg0, boolean arg1)
getLightSection(long sectionPos, boolean cached)
protected ChunkNibbleArray
getDataLayer(M sections, long sectionNode)
method_15533(M arg0, long arg1)
getLightSection(M storage, long sectionPos)
protected ChunkNibbleArray
getDataLayerToWrite(long sectionNode)
method_51547(long arg0)
getModifiableLightSection(long sectionPos)
public ChunkNibbleArray
getDataLayerData(long sectionNode)
method_20533(long arg0)
getLightSection(long sectionPos)
protected abstract int
getLightValue(long blockNode)
method_15538(long arg0)
getLight(long blockPos)
protected int
getStoredLevel(long blockNode)
method_15537(long arg0)
get(long blockPos)
protected void
setStoredLevel(long blockNode, int level)
method_15525(long arg0, int arg1)
set(long blockPos, int value)
protected void
markSectionAndNeighborsAsAffected(long sectionNode)
method_51415(long arg0)
addNotifySections(long id)
protected ChunkNibbleArray
createDataLayer(long sectionNode)
method_15529(long arg0)
createSection(long sectionPos)
protected boolean
hasInconsistencies()
method_15528()
hasLightUpdates()
protected void
markNewInconsistencies(LightEngine<M, ?> engine)
method_15527(class_3558<M, ?> arg0)
updateLight(ChunkLightProvider<M, ?> lightProvider)
protected void
onNodeAdded(long sectionNode)
method_15523(long arg0)
onLoadSection(long sectionPos)
protected void
onNodeRemoved(long sectionNode)
method_15534(long arg0)
onUnloadSection(long sectionPos)
protected void
setLightEnabled(long zeroNode, boolean enable)
method_15535(long arg0, boolean arg1)
setColumnEnabled(long columnPos, boolean enabled)
protected boolean
lightOnInSection(long sectionNode)
method_51548(long arg0)
isSectionInEnabledColumn(long sectionPos)
protected boolean
lightOnInColumn(long sectionZeroNode)
method_62873(long arg0)
isColumnEnabled(long columnPos)
public void
retainData(long zeroNode, boolean retain)
method_20600(long arg0, boolean arg1)
setRetainColumn(long sectionPos, boolean retain)
protected void
queueSectionData(long sectionNode, DataLayer data)
method_15532(long arg0, class_2804 arg1)
enqueueSectionData(long sectionPos, ChunkNibbleArray array)
protected void
updateSectionStatus(long sectionNode, boolean sectionEmpty)
method_15526(long arg0, boolean arg1)
setSectionStatus(long sectionPos, boolean notReady)
protected void
putSectionState(long sectionNode, byte state)
method_51546(long arg0, byte arg1)
setSectionPropagation(long sectionPos, byte flags)
private void
initializeSection(long sectionNode)
method_51550(long arg0)
queueForUpdate(long sectionPos)
private void
removeSection(long sectionNode)
method_51551(long arg0)
queueForRemoval(long sectionPos)
protected void
swapSectionMap()
method_15530()
notifyChanges()
public LightStorage$Status
getDebugSectionType(long sectionNode)
method_51549(long arg0)
getStatus(long sectionPos)