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 dwf
intermediary net/minecraft/class_3558
named net/minecraft/world/chunk/light/ChunkLightProvider
  • Field Details

    • DIRECTIONS

      private static final Direction[] DIRECTIONS
      Mappings:
      Namespace Name Mixin selector
      official d Ldwf;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 h Ldwf;h:I
      intermediary field_31709 Lnet/minecraft/class_3558;field_31709:I
      named field_31709 Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_31709:I
    • chunkProvider

      protected final ChunkProvider chunkProvider
      Mappings:
      Namespace Name Mixin selector
      official a Ldwf;a:Ldea;
      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

      protected final S extends LightStorage<M> lightStorage
      Mappings:
      Namespace Name Mixin selector
      official b Ldwf;b:Ldwh;
      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;
    • field_15794

      private boolean field_15794
      Mappings:
      Namespace Name Mixin selector
      official g Ldwf;g:Z
      intermediary field_15794 Lnet/minecraft/class_3558;field_15794:Z
      named field_15794 Lnet/minecraft/world/chunk/light/ChunkLightProvider;field_15794:Z
    • reusableBlockPos

      protected final BlockPos.Mutable reusableBlockPos
      Mappings:
      Namespace Name Mixin selector
      official c Ldwf;c:Lgu$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 i Ldwf;i:[J
      intermediary field_17397 Lnet/minecraft/class_3558;field_17397:[J
      named cachedChunkPositions Lnet/minecraft/world/chunk/light/ChunkLightProvider;cachedChunkPositions:[J
    • cachedChunks

      private final BlockView[] cachedChunks
      Mappings:
      Namespace Name Mixin selector
      official j Ldwf;j:[Lclj;
      intermediary field_17398 Lnet/minecraft/class_3558;field_17398:[Lnet/minecraft/class_1922;
      named cachedChunks Lnet/minecraft/world/chunk/light/ChunkLightProvider;cachedChunks:[Lnet/minecraft/world/BlockView;
  • Constructor Details

    • ChunkLightProvider

      public ChunkLightProvider(ChunkProvider chunkProvider, S lightStorage)
      Mappings:
      Namespace Name Mixin selector
      official <init> Ldwf;<init>(Ldea;Ldwh;)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

    • resetLevel

      protected void resetLevel(long id)
      Overrides:
      resetLevel in class LevelPropagator
      Mappings:
      Namespace Name Mixin selector
      official f Ldwe;f(J)V
      intermediary method_15491 Lnet/minecraft/class_3554;method_15491(J)V
      named resetLevel Lnet/minecraft/world/chunk/light/LevelPropagator;resetLevel(J)V
    • getChunk

      @Nullable private @Nullable BlockView getChunk(int chunkX, int chunkZ)
      Mappings:
      Namespace Name Mixin selector
      official a Ldwf;a(II)Lclj;
      intermediary method_17529 Lnet/minecraft/class_3558;method_17529(II)Lnet/minecraft/class_1922;
      named getChunk Lnet/minecraft/world/chunk/light/ChunkLightProvider;getChunk(II)Lnet/minecraft/world/BlockView;
    • clearChunkCache

      private void clearChunkCache()
      Mappings:
      Namespace Name Mixin selector
      official d Ldwf;d()V
      intermediary method_17530 Lnet/minecraft/class_3558;method_17530()V
      named clearChunkCache Lnet/minecraft/world/chunk/light/ChunkLightProvider;clearChunkCache()V
    • getStateForLighting

      protected BlockState getStateForLighting(BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      official b Ldwf;b(Lgu;)Ldbr;
      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

      protected int getOpacity(BlockState state, BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      official a Ldwf;a(Ldbr;Lgu;)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 Ldwf;a(JLdbr;JLdbr;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

      private VoxelShape getOpaqueShape(BlockState world, long pos, Direction facing)
      Mappings:
      Namespace Name Mixin selector
      official a Ldwf;a(Ldbr;JLha;)Leei;
      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;
    • 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 Ldwf;a(Lclj;Ldbr;Lgu;Ldbr;Lgu;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
    • getDirection

      @Nullable protected static @Nullable Direction getDirection(long source, long target)
      Mappings:
      Namespace Name Mixin selector
      official a Ldwf;a(JJ)Lha;
      intermediary method_50015 Lnet/minecraft/class_3558;method_50015(JJ)Lnet/minecraft/class_2350;
      named getDirection Lnet/minecraft/world/chunk/light/ChunkLightProvider;getDirection(JJ)Lnet/minecraft/util/math/Direction;
    • recalculateLevel

      protected int recalculateLevel(long id, long excludedId, int maxLevel)
      Specified by:
      recalculateLevel in class LevelPropagator
      Mappings:
      Namespace Name Mixin selector
      official a Ldwe;a(JJI)I
      intermediary method_15486 Lnet/minecraft/class_3554;method_15486(JJI)I
      named recalculateLevel Lnet/minecraft/world/chunk/light/LevelPropagator;recalculateLevel(JJI)I
    • getLevel

      protected int getLevel(long id)
      Specified by:
      getLevel in class LevelPropagator
      Mappings:
      Namespace Name Mixin selector
      official c Ldwe;c(J)I
      intermediary method_15480 Lnet/minecraft/class_3554;method_15480(J)I
      named getLevel Lnet/minecraft/world/chunk/light/LevelPropagator;getLevel(J)I
    • getCurrentLevelFromSection

      protected int getCurrentLevelFromSection(ChunkNibbleArray section, long blockPos)
      Mappings:
      Namespace Name Mixin selector
      official a Ldwf;a(Lddt;J)I
      intermediary method_15517 Lnet/minecraft/class_3558;method_15517(Lnet/minecraft/class_2804;J)I
      named getCurrentLevelFromSection Lnet/minecraft/world/chunk/light/ChunkLightProvider;getCurrentLevelFromSection(Lnet/minecraft/world/chunk/ChunkNibbleArray;J)I
    • setLevel

      protected void setLevel(long id, int level)
      Specified by:
      setLevel in class LevelPropagator
      Mappings:
      Namespace Name Mixin selector
      official a Ldwe;a(JI)V
      intermediary method_15485 Lnet/minecraft/class_3554;method_15485(JI)V
      named setLevel Lnet/minecraft/world/chunk/light/LevelPropagator;setLevel(JI)V
    • getPropagatedLevel

      protected int getPropagatedLevel(long sourceId, long targetId, int level)
      Specified by:
      getPropagatedLevel in class LevelPropagator
      Mappings:
      Namespace Name Mixin selector
      official b Ldwe;b(JJI)I
      intermediary method_15488 Lnet/minecraft/class_3554;method_15488(JJI)I
      named getPropagatedLevel Lnet/minecraft/world/chunk/light/LevelPropagator;getPropagatedLevel(JJI)I
    • hasUpdates

      public boolean hasUpdates()
      Specified by:
      hasUpdates in interface LightingView
      Mappings:
      Namespace Name Mixin selector
      official D_ Ldwk;D_()Z
      intermediary method_15518 Lnet/minecraft/class_3565;method_15518()Z
      named hasUpdates Lnet/minecraft/world/chunk/light/LightingView;hasUpdates()Z
    • doLightUpdates

      public int doLightUpdates(int int2, boolean doSkylight, boolean skipEdgeLightPropagation)
      Specified by:
      doLightUpdates in interface LightingView
      Mappings:
      Namespace Name Mixin selector
      official a Ldwk;a(IZZ)I
      intermediary method_15516 Lnet/minecraft/class_3565;method_15516(IZZ)I
      named doLightUpdates Lnet/minecraft/world/chunk/light/LightingView;doLightUpdates(IZZ)I
    • enqueueSectionData

      protected void enqueueSectionData(long sectionPos, @Nullable @Nullable ChunkNibbleArray lightArray, boolean nonEdge)
      Mappings:
      Namespace Name Mixin selector
      official a Ldwf;a(JLddt;Z)V
      intermediary method_15515 Lnet/minecraft/class_3558;method_15515(JLnet/minecraft/class_2804;Z)V
      named enqueueSectionData Lnet/minecraft/world/chunk/light/ChunkLightProvider;enqueueSectionData(JLnet/minecraft/world/chunk/ChunkNibbleArray;Z)V
    • getLightSection

      @Nullable public @Nullable ChunkNibbleArray getLightSection(ChunkSectionPos pos)
      Specified by:
      getLightSection in interface ChunkLightingView
      Mappings:
      Namespace Name Mixin selector
      official a Ldwg;a(Lhx;)Lddt;
      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

      public int getLightLevel(BlockPos pos)
      Specified by:
      getLightLevel in interface ChunkLightingView
      Mappings:
      Namespace Name Mixin selector
      official c Ldwg;c(Lgu;)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

      public String displaySectionLevel(long sectionPos)
      Mappings:
      Namespace Name Mixin selector
      official b Ldwf;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;
    • method_51414

      public int method_51414(long long2)
      Mappings:
      Namespace Name Mixin selector
      official d Ldwf;d(J)I
      intermediary method_51414 Lnet/minecraft/class_3558;method_51414(J)I
      named method_51414 Lnet/minecraft/world/chunk/light/ChunkLightProvider;method_51414(J)I
    • checkBlock

      public void checkBlock(BlockPos pos)
      Specified by:
      checkBlock in interface LightingView
      Mappings:
      Namespace Name Mixin selector
      official a Ldwk;a(Lgu;)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
    • addLightSource

      public void addLightSource(BlockPos pos, int level)
      Specified by:
      addLightSource in interface LightingView
      Mappings:
      Namespace Name Mixin selector
      official a Ldwk;a(Lgu;I)V
      intermediary method_15514 Lnet/minecraft/class_3565;method_15514(Lnet/minecraft/class_2338;I)V
      named addLightSource Lnet/minecraft/world/chunk/light/LightingView;addLightSource(Lnet/minecraft/util/math/BlockPos;I)V
    • setSectionStatus

      public void setSectionStatus(ChunkSectionPos pos, boolean notReady)
      Specified by:
      setSectionStatus in interface LightingView
      Mappings:
      Namespace Name Mixin selector
      official a Ldwk;a(Lhx;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

      public void setColumnEnabled(ChunkPos pos, boolean retainData)
      Specified by:
      setColumnEnabled in interface LightingView
      Mappings:
      Namespace Name Mixin selector
      official a Ldwk;a(Lclk;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
    • setRetainColumn

      public void setRetainColumn(ChunkPos pos, boolean retainData)
      Mappings:
      Namespace Name Mixin selector
      official b Ldwf;b(Lclk;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