Package net.minecraft.world.chunk.light
Class ChunkLightProvider<M extends ChunkToNibbleArrayMap<M>,S extends LightStorage<M>>
java.lang.Object
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 Object
implements ChunkLightingView
- Mappings:
Namespace Name official ead
intermediary net/minecraft/class_3558
named net/minecraft/world/chunk/light/ChunkLightProvider
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Methods for manipulating a set of bitflags with yet unknown functionality.Nested classes/interfaces inherited from interface net.minecraft.world.chunk.light.ChunkLightingView
ChunkLightingView.Empty
-
Field Summary
Modifier and TypeFieldDescriptionprivate final LongOpenHashSet
private final long[]
private final LightSourceView[]
protected final ChunkProvider
protected static final Direction[]
private static final int
static final int
protected static final int
protected static final long
private static final int
private final LongArrayFIFOQueue
private final LongArrayFIFOQueue
protected final S
private final BlockPos.Mutable
-
Constructor Summary
ModifierConstructorDescriptionprotected
ChunkLightProvider
(ChunkProvider chunkProvider, S lightStorage) -
Method Summary
Modifier and TypeMethodDescriptionvoid
checkBlock
(BlockPos pos) private void
displaySectionLevel
(long sectionPos) int
void
enqueueSectionData
(long sectionPos, @Nullable ChunkNibbleArray lightArray) protected @Nullable LightSourceView
getChunk
(int chunkX, int chunkZ) int
getLightLevel
(BlockPos pos) @Nullable ChunkNibbleArray
protected int
getOpacity
(BlockState state, BlockPos pos) protected VoxelShape
getOpaqueShape
(BlockState blockState, long pos, Direction direction) static VoxelShape
getOpaqueShape
(BlockView blockView, BlockPos pos, BlockState blockState, Direction direction) static int
getRealisticOpacity
(BlockView world, BlockState state1, BlockPos pos1, BlockState state2, BlockPos pos2, Direction direction, int opacity2) protected BlockState
getStatus
(long sectionPos) boolean
protected static boolean
isTrivialForLighting
(BlockState blockState) protected abstract void
method_51529
(long blockPos) protected abstract void
method_51530
(long blockPos, long long2) protected abstract void
method_51531
(long blockPos, long long2, int lightLevel) protected void
method_51565
(long blockPos, long flags) protected void
method_51566
(long blockPos, long flags) private int
private int
static boolean
needsLightUpdate
(BlockView blockView, BlockPos pos, BlockState oldState, BlockState newState) void
setColumnEnabled
(ChunkPos pos, boolean retainData) void
setRetainColumn
(ChunkPos pos, boolean retainData) void
setSectionStatus
(ChunkSectionPos pos, boolean notReady) protected boolean
shapesCoverFullCube
(long sourceId, BlockState sourceState, long targetId, BlockState targetState, Direction direction) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.minecraft.world.chunk.light.LightingView
propagateLight, setSectionStatus
-
Field Details
-
field_44729
public static final int field_44729- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lead;a:I
intermediary field_44729
Lnet/minecraft/class_3558;field_44729:I
named field_44729
Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_44729:I
-
field_44730
protected static final int field_44730- See Also:
- Mappings:
Namespace Name Mixin selector official b
Lead;b:I
intermediary field_44730
Lnet/minecraft/class_3558;field_44730:I
named field_44730
Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_44730:I
-
field_44731
protected static final long field_44731- Mappings:
Namespace Name Mixin selector official c
Lead;c:J
intermediary field_44731
Lnet/minecraft/class_3558;field_44731:J
named field_44731
Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_44731:J
-
field_44732
private static final int field_44732- See Also:
- Mappings:
Namespace Name Mixin selector official g
Lead;g:I
intermediary field_44732
Lnet/minecraft/class_3558;field_44732:I
named field_44732
Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_44732:I
-
DIRECTIONS
- Mappings:
Namespace Name Mixin selector official d
Lead;d:[Lha;
intermediary field_16513
Lnet/minecraft/class_3558;field_16513:[Lnet/minecraft/class_2350;
named DIRECTIONS
Lnet/minecraft/world/chunk/light/ChunkLightProvider;DIRECTIONS:[Lnet/minecraft/util/math/Direction;
-
field_31709
private static final int field_31709- See Also:
- Mappings:
Namespace Name Mixin selector official l
Lead;l:I
intermediary field_31709
Lnet/minecraft/class_3558;field_31709:I
named field_31709
Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_31709:I
-
chunkProvider
- Mappings:
Namespace Name Mixin selector official e
Lead;e:Ldht;
intermediary field_15795
Lnet/minecraft/class_3558;field_15795:Lnet/minecraft/class_2823;
named chunkProvider
Lnet/minecraft/world/chunk/light/ChunkLightProvider;chunkProvider:Lnet/minecraft/world/chunk/ChunkProvider;
-
lightStorage
- Mappings:
Namespace Name Mixin selector official f
Lead;f:Leaa;
intermediary field_15793
Lnet/minecraft/class_3558;field_15793:Lnet/minecraft/class_3560;
named lightStorage
Lnet/minecraft/world/chunk/light/ChunkLightProvider;lightStorage:Lnet/minecraft/world/chunk/light/LightStorage;
-
blockPositionsToCheck
- Mappings:
Namespace Name Mixin selector official h
Lead;h:Lit/unimi/dsi/fastutil/longs/LongOpenHashSet;
intermediary field_44733
Lnet/minecraft/class_3558;field_44733:Lit/unimi/dsi/fastutil/longs/LongOpenHashSet;
named blockPositionsToCheck
Lnet/minecraft/world/chunk/light/ChunkLightProvider;blockPositionsToCheck:Lit/unimi/dsi/fastutil/longs/LongOpenHashSet;
-
field_44734
- Mappings:
Namespace Name Mixin selector official i
Lead;i:Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue;
intermediary field_44734
Lnet/minecraft/class_3558;field_44734:Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue;
named field_44734
Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_44734:Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue;
-
field_44735
- Mappings:
Namespace Name Mixin selector official j
Lead;j:Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue;
intermediary field_44735
Lnet/minecraft/class_3558;field_44735:Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue;
named field_44735
Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_44735:Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue;
-
reusableBlockPos
- Mappings:
Namespace Name Mixin selector official k
Lead;k:Lgw$a;
intermediary field_19284
Lnet/minecraft/class_3558;field_19284:Lnet/minecraft/class_2338$class_2339;
named reusableBlockPos
Lnet/minecraft/world/chunk/light/ChunkLightProvider;reusableBlockPos:Lnet/minecraft/util/math/BlockPos$Mutable;
-
cachedChunkPositions
private final long[] cachedChunkPositions- Mappings:
Namespace Name Mixin selector official m
Lead;m:[J
intermediary field_17397
Lnet/minecraft/class_3558;field_17397:[J
named cachedChunkPositions
Lnet/minecraft/world/chunk/light/ChunkLightProvider;cachedChunkPositions:[J
-
cachedChunks
- Mappings:
Namespace Name Mixin selector official n
Lead;n:[Ldhs;
intermediary field_17398
Lnet/minecraft/class_3558;field_17398:[Lnet/minecraft/class_8527;
named cachedChunks
Lnet/minecraft/world/chunk/light/ChunkLightProvider;cachedChunks:[Lnet/minecraft/world/chunk/light/LightSourceView;
-
-
Constructor Details
-
ChunkLightProvider
- Mappings:
Namespace Name Mixin selector official <init>
Lead;<init>(Ldht;Leaa;)V
intermediary <init>
Lnet/minecraft/class_3558;<init>(Lnet/minecraft/class_2823;Lnet/minecraft/class_3560;)V
named <init>
Lnet/minecraft/world/chunk/light/ChunkLightProvider;<init>(Lnet/minecraft/world/chunk/ChunkProvider;Lnet/minecraft/world/chunk/light/LightStorage;)V
-
-
Method Details
-
needsLightUpdate
public static boolean needsLightUpdate(BlockView blockView, BlockPos pos, BlockState oldState, BlockState newState) - Mappings:
Namespace Name Mixin selector official a
Lead;a(Lcpb;Lgw;Ldfj;Ldfj;)Z
intermediary method_51561
Lnet/minecraft/class_3558;method_51561(Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z
named needsLightUpdate
Lnet/minecraft/world/chunk/light/ChunkLightProvider;needsLightUpdate(Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/block/BlockState;)Z
-
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 a
Lead;a(Lcpb;Ldfj;Lgw;Ldfj;Lgw;Lha;I)I
intermediary method_20049
Lnet/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)I
named getRealisticOpacity
Lnet/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
-
getOpaqueShape
public static VoxelShape getOpaqueShape(BlockView blockView, BlockPos pos, BlockState blockState, Direction direction) - Mappings:
Namespace Name Mixin selector official a
Lead;a(Lcpb;Lgw;Ldfj;Lha;)Leig;
intermediary method_51562
Lnet/minecraft/class_3558;method_51562(Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Lnet/minecraft/class_265;
named getOpaqueShape
Lnet/minecraft/world/chunk/light/ChunkLightProvider;getOpaqueShape(Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/Direction;)Lnet/minecraft/util/shape/VoxelShape;
-
isTrivialForLighting
- Mappings:
Namespace Name Mixin selector official a
Lead;a(Ldfj;)Z
intermediary method_51563
Lnet/minecraft/class_3558;method_51563(Lnet/minecraft/class_2680;)Z
named isTrivialForLighting
Lnet/minecraft/world/chunk/light/ChunkLightProvider;isTrivialForLighting(Lnet/minecraft/block/BlockState;)Z
-
getStateForLighting
- Mappings:
Namespace Name Mixin selector official c
Lead;c(Lgw;)Ldfj;
intermediary method_50018
Lnet/minecraft/class_3558;method_50018(Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680;
named getStateForLighting
Lnet/minecraft/world/chunk/light/ChunkLightProvider;getStateForLighting(Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/block/BlockState;
-
getOpacity
- Mappings:
Namespace Name Mixin selector official a
Lead;a(Ldfj;Lgw;)I
intermediary method_50017
Lnet/minecraft/class_3558;method_50017(Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)I
named getOpacity
Lnet/minecraft/world/chunk/light/ChunkLightProvider;getOpacity(Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;)I
-
shapesCoverFullCube
protected boolean shapesCoverFullCube(long sourceId, BlockState sourceState, long targetId, BlockState targetState, Direction direction) - Mappings:
Namespace Name Mixin selector official a
Lead;a(JLdfj;JLdfj;Lha;)Z
intermediary method_50016
Lnet/minecraft/class_3558;method_50016(JLnet/minecraft/class_2680;JLnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z
named shapesCoverFullCube
Lnet/minecraft/world/chunk/light/ChunkLightProvider;shapesCoverFullCube(JLnet/minecraft/block/BlockState;JLnet/minecraft/block/BlockState;Lnet/minecraft/util/math/Direction;)Z
-
getOpaqueShape
- Mappings:
Namespace Name Mixin selector official a
Lead;a(Ldfj;JLha;)Leig;
intermediary method_20710
Lnet/minecraft/class_3558;method_20710(Lnet/minecraft/class_2680;JLnet/minecraft/class_2350;)Lnet/minecraft/class_265;
named getOpaqueShape
Lnet/minecraft/world/chunk/light/ChunkLightProvider;getOpaqueShape(Lnet/minecraft/block/BlockState;JLnet/minecraft/util/math/Direction;)Lnet/minecraft/util/shape/VoxelShape;
-
getChunk
- Mappings:
Namespace Name Mixin selector official a
Lead;a(II)Ldhs;
intermediary method_17529
Lnet/minecraft/class_3558;method_17529(II)Lnet/minecraft/class_8527;
named getChunk
Lnet/minecraft/world/chunk/light/ChunkLightProvider;getChunk(II)Lnet/minecraft/world/chunk/light/LightSourceView;
-
clearChunkCache
private void clearChunkCache()- Mappings:
Namespace Name Mixin selector official c
Lead;c()V
intermediary method_17530
Lnet/minecraft/class_3558;method_17530()V
named clearChunkCache
Lnet/minecraft/world/chunk/light/ChunkLightProvider;clearChunkCache()V
-
checkBlock
- Specified by:
checkBlock
in interfaceLightingView
- Mappings:
Namespace Name Mixin selector official a
Leae;a(Lgw;)V
intermediary method_15513
Lnet/minecraft/class_3565;method_15513(Lnet/minecraft/class_2338;)V
named checkBlock
Lnet/minecraft/world/chunk/light/LightingView;checkBlock(Lnet/minecraft/util/math/BlockPos;)V
-
enqueueSectionData
- Mappings:
Namespace Name Mixin selector official a
Lead;a(JLdhl;)V
intermediary method_15515
Lnet/minecraft/class_3558;method_15515(JLnet/minecraft/class_2804;)V
named enqueueSectionData
Lnet/minecraft/world/chunk/light/ChunkLightProvider;enqueueSectionData(JLnet/minecraft/world/chunk/ChunkNibbleArray;)V
-
setRetainColumn
- Mappings:
Namespace Name Mixin selector official b
Lead;b(Lcpc;Z)V
intermediary method_20599
Lnet/minecraft/class_3558;method_20599(Lnet/minecraft/class_1923;Z)V
named setRetainColumn
Lnet/minecraft/world/chunk/light/ChunkLightProvider;setRetainColumn(Lnet/minecraft/util/math/ChunkPos;Z)V
-
setSectionStatus
- Specified by:
setSectionStatus
in interfaceLightingView
- Mappings:
Namespace Name Mixin selector official a
Leae;a(Lhw;Z)V
intermediary method_15551
Lnet/minecraft/class_3565;method_15551(Lnet/minecraft/class_4076;Z)V
named setSectionStatus
Lnet/minecraft/world/chunk/light/LightingView;setSectionStatus(Lnet/minecraft/util/math/ChunkSectionPos;Z)V
-
setColumnEnabled
- Specified by:
setColumnEnabled
in interfaceLightingView
- Mappings:
Namespace Name Mixin selector official a
Leae;a(Lcpc;Z)V
intermediary method_15512
Lnet/minecraft/class_3565;method_15512(Lnet/minecraft/class_1923;Z)V
named setColumnEnabled
Lnet/minecraft/world/chunk/light/LightingView;setColumnEnabled(Lnet/minecraft/util/math/ChunkPos;Z)V
-
doLightUpdates
public int doLightUpdates()- Specified by:
doLightUpdates
in interfaceLightingView
- Mappings:
Namespace Name Mixin selector official a
Leae;a()I
intermediary method_15516
Lnet/minecraft/class_3565;method_15516()I
named doLightUpdates
Lnet/minecraft/world/chunk/light/LightingView;doLightUpdates()I
-
method_51567
private int method_51567()- Mappings:
Namespace Name Mixin selector official d
Lead;d()I
intermediary method_51567
Lnet/minecraft/class_3558;method_51567()I
named method_51567
Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51567()I
-
method_51570
private int method_51570()- Mappings:
Namespace Name Mixin selector official e
Lead;e()I
intermediary method_51570
Lnet/minecraft/class_3558;method_51570()I
named method_51570
Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51570()I
-
method_51565
protected void method_51565(long blockPos, long flags) - Mappings:
Namespace Name Mixin selector official b
Lead;b(JJ)V
intermediary method_51565
Lnet/minecraft/class_3558;method_51565(JJ)V
named method_51565
Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51565(JJ)V
-
method_51566
protected void method_51566(long blockPos, long flags) - Mappings:
Namespace Name Mixin selector official c
Lead;c(JJ)V
intermediary method_51566
Lnet/minecraft/class_3558;method_51566(JJ)V
named method_51566
Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51566(JJ)V
-
hasUpdates
public boolean hasUpdates()- Specified by:
hasUpdates
in interfaceLightingView
- Mappings:
Namespace Name Mixin selector official J_
Leae;J_()Z
intermediary method_15518
Lnet/minecraft/class_3565;method_15518()Z
named hasUpdates
Lnet/minecraft/world/chunk/light/LightingView;hasUpdates()Z
-
getLightSection
- Specified by:
getLightSection
in interfaceChunkLightingView
- Mappings:
Namespace Name Mixin selector official a
Ldzz;a(Lhw;)Ldhl;
intermediary method_15544
Lnet/minecraft/class_3562;method_15544(Lnet/minecraft/class_4076;)Lnet/minecraft/class_2804;
named getLightSection
Lnet/minecraft/world/chunk/light/ChunkLightingView;getLightSection(Lnet/minecraft/util/math/ChunkSectionPos;)Lnet/minecraft/world/chunk/ChunkNibbleArray;
-
getLightLevel
- Specified by:
getLightLevel
in interfaceChunkLightingView
- Mappings:
Namespace Name Mixin selector official b
Ldzz;b(Lgw;)I
intermediary method_15543
Lnet/minecraft/class_3562;method_15543(Lnet/minecraft/class_2338;)I
named getLightLevel
Lnet/minecraft/world/chunk/light/ChunkLightingView;getLightLevel(Lnet/minecraft/util/math/BlockPos;)I
-
displaySectionLevel
- Mappings:
Namespace Name Mixin selector official b
Lead;b(J)Ljava/lang/String;
intermediary method_22875
Lnet/minecraft/class_3558;method_22875(J)Ljava/lang/String;
named displaySectionLevel
Lnet/minecraft/world/chunk/light/ChunkLightProvider;displaySectionLevel(J)Ljava/lang/String;
-
getStatus
- Mappings:
Namespace Name Mixin selector official c
Lead;c(J)Leaa$b;
intermediary method_51568
Lnet/minecraft/class_3558;method_51568(J)Lnet/minecraft/class_3560$class_8530;
named getStatus
Lnet/minecraft/world/chunk/light/ChunkLightProvider;getStatus(J)Lnet/minecraft/world/chunk/light/LightStorage$Status;
-
method_51529
protected abstract void method_51529(long blockPos) - Mappings:
Namespace Name Mixin selector official a
Lead;a(J)V
intermediary method_51529
Lnet/minecraft/class_3558;method_51529(J)V
named method_51529
Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51529(J)V
-
method_51531
protected abstract void method_51531(long blockPos, long long2, int lightLevel) - Mappings:
Namespace Name Mixin selector official a
Lead;a(JJI)V
intermediary method_51531
Lnet/minecraft/class_3558;method_51531(JJI)V
named method_51531
Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51531(JJI)V
-
method_51530
protected abstract void method_51530(long blockPos, long long2) - Mappings:
Namespace Name Mixin selector official a
Lead;a(JJ)V
intermediary method_51530
Lnet/minecraft/class_3558;method_51530(JJ)V
named method_51530
Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51530(JJ)V
-