Package net.minecraft.world.chunk.light
Class ChunkLightProvider<M extends ChunkToNibbleArrayMap<M>,S extends LightStorage<M>>
java.lang.Object
net.minecraft.world.chunk.light.LevelPropagator
net.minecraft.world.chunk.light.ChunkLightProvider<M,S>
- All Implemented Interfaces:
ChunkLightingView,LightingView
- Direct Known Subclasses:
ChunkBlockLightProvider,ChunkSkyLightProvider
public abstract class ChunkLightProvider<M extends ChunkToNibbleArrayMap<M>,S extends LightStorage<M>> extends LevelPropagator implements ChunkLightingView
- Mappings:
Namespace Name official ddgintermediary net/minecraft/class_3558named net/minecraft/world/chunk/light/ChunkLightProvider
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.minecraft.world.chunk.light.ChunkLightingView
ChunkLightingView.Empty -
Field Summary
Fields Modifier and Type Field Description private long[]cachedChunkPositionsprivate BlockView[]cachedChunksprotected ChunkProviderchunkProviderprivate static Direction[]DIRECTIONSprivate booleanfield_15794static longfield_31708private static intfield_31709protected SlightStorageprotected BlockPos.MutablereusableBlockPosprotected LightTypetype -
Constructor Summary
Constructors Constructor Description ChunkLightProvider(ChunkProvider chunkProvider, LightType type, S lightStorage) -
Method Summary
Modifier and Type Method Description voidaddLightSource(BlockPos pos, int int2)voidcheckBlock(BlockPos pos)private voidclearChunkCache()StringdisplaySectionLevel(long sectionPos)intdoLightUpdates(int int2, boolean bool, boolean bool2)protected voidenqueueSectionData(long sectionPos, @Nullable ChunkNibbleArray lightArray, boolean bool)private @Nullable BlockViewgetChunk(int chunkX, int chunkZ)protected intgetCurrentLevelFromSection(ChunkNibbleArray section, long blockPos)protected intgetLevel(long id)intgetLightLevel(BlockPos pos)@Nullable ChunkNibbleArraygetLightSection(ChunkSectionPos pos)protected VoxelShapegetOpaqueShape(BlockState world, long pos, Direction facing)protected intgetPropagatedLevel(long sourceId, long targetId, int level)static intgetRealisticOpacity(BlockView world, BlockState state1, BlockPos pos1, BlockState state2, BlockPos pos2, Direction direction, int opacity2)protected BlockStategetStateForLighting(long pos, @Nullable MutableInt mutableInt)booleanhasUpdates()protected booleanisMarker(long id)protected intrecalculateLevel(long id, long excludedId, int maxLevel)protected voidresetLevel(long id)voidsetColumnEnabled(ChunkPos chunkPos, boolean bool)protected voidsetLevel(long id, int level)voidsetRetainColumn(ChunkPos pos, boolean retainData)voidsetSectionStatus(ChunkSectionPos pos, boolean notReady)Methods inherited from class net.minecraft.world.chunk.light.LevelPropagator
applyPendingUpdates, getPendingUpdateCount, hasPendingUpdates, propagateLevel, propagateLevel, removePendingUpdate, removePendingUpdateIf, updateLevelMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.world.chunk.light.LightingView
setSectionStatus
-
Field Details
-
field_31708
public static final long field_31708- See Also:
- Constant Field Values
- Mappings:
Namespace Name Mixin selector official aLddg;a:Jintermediary field_31708Lnet/minecraft/class_3558;field_31708:Jnamed field_31708Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_31708:J
-
DIRECTIONS
- Mappings:
Namespace Name Mixin selector official fLddg;f:[Lgg;intermediary field_16513Lnet/minecraft/class_3558;field_16513:[Lnet/minecraft/class_2350;named DIRECTIONSLnet/minecraft/world/chunk/light/ChunkLightProvider;DIRECTIONS:[Lnet/minecraft/util/math/Direction;
-
field_31709
private static final int field_31709- See Also:
- Constant Field Values
- Mappings:
Namespace Name Mixin selector official hLddg;h:Iintermediary field_31709Lnet/minecraft/class_3558;field_31709:Inamed field_31709Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_31709:I
-
chunkProvider
- Mappings:
Namespace Name Mixin selector official bLddg;b:Lclx;intermediary field_15795Lnet/minecraft/class_3558;field_15795:Lnet/minecraft/class_2823;named chunkProviderLnet/minecraft/world/chunk/light/ChunkLightProvider;chunkProvider:Lnet/minecraft/world/chunk/ChunkProvider;
-
type
- Mappings:
Namespace Name Mixin selector official cLddg;c:Lbwa;intermediary field_15792Lnet/minecraft/class_3558;field_15792:Lnet/minecraft/class_1944;named typeLnet/minecraft/world/chunk/light/ChunkLightProvider;type:Lnet/minecraft/world/LightType;
-
lightStorage
- Mappings:
Namespace Name Mixin selector official dLddg;d:Lddi;intermediary field_15793Lnet/minecraft/class_3558;field_15793:Lnet/minecraft/class_3560;named lightStorageLnet/minecraft/world/chunk/light/ChunkLightProvider;lightStorage:Lnet/minecraft/world/chunk/light/LightStorage;
-
field_15794
private boolean field_15794- Mappings:
Namespace Name Mixin selector official gLddg;g:Zintermediary field_15794Lnet/minecraft/class_3558;field_15794:Znamed field_15794Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_15794:Z
-
reusableBlockPos
- Mappings:
Namespace Name Mixin selector official eLddg;e:Lgb$a;intermediary field_19284Lnet/minecraft/class_3558;field_19284:Lnet/minecraft/class_2338$class_2339;named reusableBlockPosLnet/minecraft/world/chunk/light/ChunkLightProvider;reusableBlockPos:Lnet/minecraft/util/math/BlockPos$Mutable;
-
cachedChunkPositions
private final long[] cachedChunkPositions- Mappings:
Namespace Name Mixin selector official iLddg;i:[Jintermediary field_17397Lnet/minecraft/class_3558;field_17397:[Jnamed cachedChunkPositionsLnet/minecraft/world/chunk/light/ChunkLightProvider;cachedChunkPositions:[J
-
cachedChunks
- Mappings:
Namespace Name Mixin selector official jLddg;j:[Lbuv;intermediary field_17398Lnet/minecraft/class_3558;field_17398:[Lnet/minecraft/class_1922;named cachedChunksLnet/minecraft/world/chunk/light/ChunkLightProvider;cachedChunks:[Lnet/minecraft/world/BlockView;
-
-
Constructor Details
-
ChunkLightProvider
- Mappings:
Namespace Name Mixin selector official <init>Lddg;<init>(Lclx;Lbwa;Lddi;)Vintermediary <init>Lnet/minecraft/class_3558;<init>(Lnet/minecraft/class_2823;Lnet/minecraft/class_1944;Lnet/minecraft/class_3560;)Vnamed <init>Lnet/minecraft/world/chunk/light/ChunkLightProvider;<init>(Lnet/minecraft/world/chunk/ChunkProvider;Lnet/minecraft/world/LightType;Lnet/minecraft/world/chunk/light/LightStorage;)V
-
-
Method Details
-
resetLevel
protected void resetLevel(long id)- Overrides:
resetLevelin classLevelPropagator- Mappings:
Namespace Name Mixin selector official fLdde;f(J)Vintermediary method_15491Lnet/minecraft/class_3554;method_15491(J)Vnamed resetLevelLnet/minecraft/world/chunk/light/LevelPropagator;resetLevel(J)V
-
getChunk
- Mappings:
Namespace Name Mixin selector official aLddg;a(II)Lbuv;intermediary method_17529Lnet/minecraft/class_3558;method_17529(II)Lnet/minecraft/class_1922;named getChunkLnet/minecraft/world/chunk/light/ChunkLightProvider;getChunk(II)Lnet/minecraft/world/BlockView;
-
clearChunkCache
private void clearChunkCache()- Mappings:
Namespace Name Mixin selector official dLddg;d()Vintermediary method_17530Lnet/minecraft/class_3558;method_17530()Vnamed clearChunkCacheLnet/minecraft/world/chunk/light/ChunkLightProvider;clearChunkCache()V
-
getStateForLighting
- Mappings:
Namespace Name Mixin selector official aLddg;a(JLorg/apache/commons/lang3/mutable/MutableInt;)Lcjr;intermediary method_20479Lnet/minecraft/class_3558;method_20479(JLorg/apache/commons/lang3/mutable/MutableInt;)Lnet/minecraft/class_2680;named getStateForLightingLnet/minecraft/world/chunk/light/ChunkLightProvider;getStateForLighting(JLorg/apache/commons/lang3/mutable/MutableInt;)Lnet/minecraft/block/BlockState;
-
getOpaqueShape
- Mappings:
Namespace Name Mixin selector official aLddg;a(Lcjr;JLgg;)Ldmt;intermediary method_20710Lnet/minecraft/class_3558;method_20710(Lnet/minecraft/class_2680;JLnet/minecraft/class_2350;)Lnet/minecraft/class_265;named getOpaqueShapeLnet/minecraft/world/chunk/light/ChunkLightProvider;getOpaqueShape(Lnet/minecraft/block/BlockState;JLnet/minecraft/util/math/Direction;)Lnet/minecraft/util/shape/VoxelShape;
-
getRealisticOpacity
public static int getRealisticOpacity(BlockView world, BlockState state1, BlockPos pos1, BlockState state2, BlockPos pos2, Direction direction, int opacity2)- Mappings:
Namespace Name Mixin selector official aLddg;a(Lbuv;Lcjr;Lgb;Lcjr;Lgb;Lgg;I)Iintermediary method_20049Lnet/minecraft/class_3558;method_20049(Lnet/minecraft/class_1922;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;I)Inamed getRealisticOpacityLnet/minecraft/world/chunk/light/ChunkLightProvider;getRealisticOpacity(Lnet/minecraft/world/BlockView;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;I)I
-
isMarker
protected boolean isMarker(long id)- Specified by:
isMarkerin classLevelPropagator- Mappings:
Namespace Name Mixin selector official aLdde;a(J)Zintermediary method_15494Lnet/minecraft/class_3554;method_15494(J)Znamed isMarkerLnet/minecraft/world/chunk/light/LevelPropagator;isMarker(J)Z
-
recalculateLevel
protected int recalculateLevel(long id, long excludedId, int maxLevel)- Specified by:
recalculateLevelin classLevelPropagator- Mappings:
Namespace Name Mixin selector official aLdde;a(JJI)Iintermediary method_15486Lnet/minecraft/class_3554;method_15486(JJI)Inamed recalculateLevelLnet/minecraft/world/chunk/light/LevelPropagator;recalculateLevel(JJI)I
-
getLevel
protected int getLevel(long id)- Specified by:
getLevelin classLevelPropagator- Mappings:
Namespace Name Mixin selector official cLdde;c(J)Iintermediary method_15480Lnet/minecraft/class_3554;method_15480(J)Inamed getLevelLnet/minecraft/world/chunk/light/LevelPropagator;getLevel(J)I
-
getCurrentLevelFromSection
- Mappings:
Namespace Name Mixin selector official aLddg;a(Lclp;J)Iintermediary method_15517Lnet/minecraft/class_3558;method_15517(Lnet/minecraft/class_2804;J)Inamed getCurrentLevelFromSectionLnet/minecraft/world/chunk/light/ChunkLightProvider;getCurrentLevelFromSection(Lnet/minecraft/world/chunk/ChunkNibbleArray;J)I
-
setLevel
protected void setLevel(long id, int level)- Specified by:
setLevelin classLevelPropagator- Mappings:
Namespace Name Mixin selector official aLdde;a(JI)Vintermediary method_15485Lnet/minecraft/class_3554;method_15485(JI)Vnamed setLevelLnet/minecraft/world/chunk/light/LevelPropagator;setLevel(JI)V
-
getPropagatedLevel
protected int getPropagatedLevel(long sourceId, long targetId, int level)- Specified by:
getPropagatedLevelin classLevelPropagator- Mappings:
Namespace Name Mixin selector official bLdde;b(JJI)Iintermediary method_15488Lnet/minecraft/class_3554;method_15488(JJI)Inamed getPropagatedLevelLnet/minecraft/world/chunk/light/LevelPropagator;getPropagatedLevel(JJI)I
-
hasUpdates
public boolean hasUpdates()- Specified by:
hasUpdatesin interfaceLightingView- Mappings:
Namespace Name Mixin selector official aLddk;a()Zintermediary method_15518Lnet/minecraft/class_3565;method_15518()Znamed hasUpdatesLnet/minecraft/world/chunk/light/LightingView;hasUpdates()Z
-
doLightUpdates
public int doLightUpdates(int int2, boolean bool, boolean bool2)- Specified by:
doLightUpdatesin interfaceLightingView- Mappings:
Namespace Name Mixin selector official aLddk;a(IZZ)Iintermediary method_15516Lnet/minecraft/class_3565;method_15516(IZZ)Inamed doLightUpdatesLnet/minecraft/world/chunk/light/LightingView;doLightUpdates(IZZ)I
-
enqueueSectionData
protected void enqueueSectionData(long sectionPos, @Nullable @Nullable ChunkNibbleArray lightArray, boolean bool)- Mappings:
Namespace Name Mixin selector official aLddg;a(JLclp;Z)Vintermediary method_15515Lnet/minecraft/class_3558;method_15515(JLnet/minecraft/class_2804;Z)Vnamed enqueueSectionDataLnet/minecraft/world/chunk/light/ChunkLightProvider;enqueueSectionData(JLnet/minecraft/world/chunk/ChunkNibbleArray;Z)V
-
getLightSection
- Specified by:
getLightSectionin interfaceChunkLightingView- Mappings:
Namespace Name Mixin selector official aLddh;a(Lgu;)Lclp;intermediary method_15544Lnet/minecraft/class_3562;method_15544(Lnet/minecraft/class_4076;)Lnet/minecraft/class_2804;named getLightSectionLnet/minecraft/world/chunk/light/ChunkLightingView;getLightSection(Lnet/minecraft/util/math/ChunkSectionPos;)Lnet/minecraft/world/chunk/ChunkNibbleArray;
-
getLightLevel
- Specified by:
getLightLevelin interfaceChunkLightingView- Mappings:
Namespace Name Mixin selector official bLddh;b(Lgb;)Iintermediary method_15543Lnet/minecraft/class_3562;method_15543(Lnet/minecraft/class_2338;)Inamed getLightLevelLnet/minecraft/world/chunk/light/ChunkLightingView;getLightLevel(Lnet/minecraft/util/math/BlockPos;)I
-
displaySectionLevel
- Mappings:
Namespace Name Mixin selector official bLddg;b(J)Ljava/lang/String;intermediary method_22875Lnet/minecraft/class_3558;method_22875(J)Ljava/lang/String;named displaySectionLevelLnet/minecraft/world/chunk/light/ChunkLightProvider;displaySectionLevel(J)Ljava/lang/String;
-
checkBlock
- Specified by:
checkBlockin interfaceLightingView- Mappings:
Namespace Name Mixin selector official aLddk;a(Lgb;)Vintermediary method_15513Lnet/minecraft/class_3565;method_15513(Lnet/minecraft/class_2338;)Vnamed checkBlockLnet/minecraft/world/chunk/light/LightingView;checkBlock(Lnet/minecraft/util/math/BlockPos;)V
-
addLightSource
- Specified by:
addLightSourcein interfaceLightingView- Mappings:
Namespace Name Mixin selector official aLddk;a(Lgb;I)Vintermediary method_15514Lnet/minecraft/class_3565;method_15514(Lnet/minecraft/class_2338;I)Vnamed addLightSourceLnet/minecraft/world/chunk/light/LightingView;addLightSource(Lnet/minecraft/util/math/BlockPos;I)V
-
setSectionStatus
- Specified by:
setSectionStatusin interfaceLightingView- Mappings:
Namespace Name Mixin selector official aLddk;a(Lgu;Z)Vintermediary method_15551Lnet/minecraft/class_3565;method_15551(Lnet/minecraft/class_4076;Z)Vnamed setSectionStatusLnet/minecraft/world/chunk/light/LightingView;setSectionStatus(Lnet/minecraft/util/math/ChunkSectionPos;Z)V
-
setColumnEnabled
- Specified by:
setColumnEnabledin interfaceLightingView- Mappings:
Namespace Name Mixin selector official aLddk;a(Lbuw;Z)Vintermediary method_15512Lnet/minecraft/class_3565;method_15512(Lnet/minecraft/class_1923;Z)Vnamed setColumnEnabledLnet/minecraft/world/chunk/light/LightingView;setColumnEnabled(Lnet/minecraft/util/math/ChunkPos;Z)V
-
setRetainColumn
- Mappings:
Namespace Name Mixin selector official bLddg;b(Lbuw;Z)Vintermediary method_20599Lnet/minecraft/class_3558;method_20599(Lnet/minecraft/class_1923;Z)Vnamed setRetainColumnLnet/minecraft/world/chunk/light/ChunkLightProvider;setRetainColumn(Lnet/minecraft/util/math/ChunkPos;Z)V
-