Class PalettedContainer.PaletteProvider

java.lang.Object
net.minecraft.world.chunk.PalettedContainer.PaletteProvider
Enclosing class:
PalettedContainer<T>

public abstract static class PalettedContainer.PaletteProvider extends Object
A palette provider determines what type of palette to choose given the bits used to represent each element. In addition, it controls how the data in the serialized container is read based on the palette given.
Mappings:
Namespace Name
named net/minecraft/world/chunk/PalettedContainer$PaletteProvider
intermediary net/minecraft/class_2841$class_6563
official duz$d
  • Field Details

    • SINGULAR

      public static final Palette.Factory SINGULAR
      Mappings:
      Namespace Name Mixin selector
      named SINGULAR Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;SINGULAR:Lnet/minecraft/world/chunk/Palette$Factory;
      intermediary field_34566 Lnet/minecraft/class_2841$class_6563;field_34566:Lnet/minecraft/class_2837$class_6559;
      official a Lduz$d;a:Ldux$a;
    • ARRAY

      public static final Palette.Factory ARRAY
      Mappings:
      Namespace Name Mixin selector
      named ARRAY Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;ARRAY:Lnet/minecraft/world/chunk/Palette$Factory;
      intermediary field_34567 Lnet/minecraft/class_2841$class_6563;field_34567:Lnet/minecraft/class_2837$class_6559;
      official b Lduz$d;b:Ldux$a;
    • BI_MAP

      public static final Palette.Factory BI_MAP
      Mappings:
      Namespace Name Mixin selector
      named BI_MAP Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;BI_MAP:Lnet/minecraft/world/chunk/Palette$Factory;
      intermediary field_34568 Lnet/minecraft/class_2841$class_6563;field_34568:Lnet/minecraft/class_2837$class_6559;
      official c Lduz$d;c:Ldux$a;
    • ID_LIST

      static final Palette.Factory ID_LIST
      Mappings:
      Namespace Name Mixin selector
      named ID_LIST Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;ID_LIST:Lnet/minecraft/world/chunk/Palette$Factory;
      intermediary field_34571 Lnet/minecraft/class_2841$class_6563;field_34571:Lnet/minecraft/class_2837$class_6559;
      official f Lduz$d;f:Ldux$a;
    • BLOCK_STATE

      public static final PalettedContainer.PaletteProvider BLOCK_STATE
      A palette provider that stores 4096 objects in a container. Used in vanilla by block states in a chunk section.
      Mappings:
      Namespace Name Mixin selector
      named BLOCK_STATE Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;BLOCK_STATE:Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;
      intermediary field_34569 Lnet/minecraft/class_2841$class_6563;field_34569:Lnet/minecraft/class_2841$class_6563;
      official d Lduz$d;d:Lduz$d;
    • BIOME

      public static final PalettedContainer.PaletteProvider BIOME
      A palette provider that stores 64 objects in a container. Used in vanilla by biomes in a chunk section.
      Mappings:
      Namespace Name Mixin selector
      named BIOME Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;BIOME:Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;
      intermediary field_34570 Lnet/minecraft/class_2841$class_6563;field_34570:Lnet/minecraft/class_2841$class_6563;
      official e Lduz$d;e:Lduz$d;
    • edgeBits

      private final int edgeBits
      Mappings:
      Namespace Name Mixin selector
      named edgeBits Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;edgeBits:I
      intermediary field_34572 Lnet/minecraft/class_2841$class_6563;field_34572:I
      official g Lduz$d;g:I
  • Constructor Details

    • PaletteProvider

      PaletteProvider(int edgeBits)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;<init>(I)V
      intermediary <init> Lnet/minecraft/class_2841$class_6563;<init>(I)V
      official <init> Lduz$d;<init>(I)V
  • Method Details

    • getContainerSize

      public int getContainerSize()
      Returns the size of the container's data desired by this provider.
      Returns:
      the size of the container's data desired by this provider
      Mappings:
      Namespace Name Mixin selector
      named getContainerSize Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;getContainerSize()I
      intermediary method_38312 Lnet/minecraft/class_2841$class_6563;method_38312()I
      official a Lduz$d;a()I
    • computeIndex

      public int computeIndex(int x, int y, int z)
      Returns the index of an object in the storage given its x, y, z coordinates.
      Parameters:
      x - the x coordinate
      y - the y coordinate
      z - the z coordinate
      Returns:
      the index of an object in the storage given its x, y, z coordinates
      Mappings:
      Namespace Name Mixin selector
      named computeIndex Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;computeIndex(III)I
      intermediary method_38313 Lnet/minecraft/class_2841$class_6563;method_38313(III)I
      official a Lduz$d;a(III)I
    • createDataProvider

      public abstract <A> PalettedContainer.DataProvider<A> createDataProvider(IndexedIterable<A> idList, int bits)
      Creates a data provider that is suitable to represent objects with bits size in the storage.
      Parameters:
      idList - the id list that maps between objects and full integer IDs
      bits - the number of bits needed to represent all palette entries
      Returns:
      the data provider
      Mappings:
      Namespace Name Mixin selector
      named createDataProvider Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;createDataProvider(Lnet/minecraft/util/collection/IndexedIterable;I)Lnet/minecraft/world/chunk/PalettedContainer$DataProvider;
      intermediary method_38314 Lnet/minecraft/class_2841$class_6563;method_38314(Lnet/minecraft/class_2359;I)Lnet/minecraft/class_2841$class_6560;
      official a Lduz$d;a(Ljo;I)Lduz$a;
    • getBits

      <A> int getBits(IndexedIterable<A> idList, int size)
      Mappings:
      Namespace Name Mixin selector
      named getBits Lnet/minecraft/world/chunk/PalettedContainer$PaletteProvider;getBits(Lnet/minecraft/util/collection/IndexedIterable;I)I
      intermediary method_38315 Lnet/minecraft/class_2841$class_6563;method_38315(Lnet/minecraft/class_2359;I)I
      official b Lduz$d;b(Ljo;I)I