Class DividedBlockListManager

java.lang.Object
net.rodofire.easierworldcreator.blockdata.blocklist.DividedBlockListManager

public class DividedBlockListManager extends Object
During world gen, you can not place all your structure if it is larger than 3x3 chunks. With this call, the BlockListManager are stored in a Map<ChunkPos, BlockListManager>. This allows to place the manager only when allowed. Use this class if you will place a structure during world gen.
  • Field Details

  • Constructor Details

    • DividedBlockListManager

      public DividedBlockListManager()
    • DividedBlockListManager

      public DividedBlockListManager(List<BlockListManager> managers)
  • Method Details

    • put

    • put

      public DividedBlockListManager put(BlockList blockList)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.util.math.ChunkPos pos, BlockList blockList)
      In a controlled environment, you can use this method which doesn't perform any verification, improving performance. ! However, in the case where some BlockPos are not in the provided ChunkPos but in another place, it might result in a crash or create unwanted behavior.
      Parameters:
      pos - the chunkPos where the BlockPos are.
      blockList - the BlockList related to the chunkPos that will be put
      Returns:
      the resulted comparator.
    • put

      public DividedBlockListManager put(BlockListManager comparator)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.util.math.ChunkPos pos, BlockListManager manager)
      In a controlled environment, you can use this method which doesn't perform any verification, improving performance. ! However, in the case where some BlockPos are not in the provided ChunkPos but in another place, it might result in a crash or create unwanted behavior.
      Parameters:
      pos - the chunkPos where the BlockPos are.
      manager - the manager related to the chunkPos that will be put
      Returns:
      the resulted manager.
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, it.unimi.dsi.fastutil.longs.LongArrayList posList)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, it.unimi.dsi.fastutil.longs.LongArrayList pos)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, long pos)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, long pos)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, List<net.minecraft.util.math.BlockPos> posList)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, List<net.minecraft.util.math.BlockPos> posList)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.util.math.BlockPos pos)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, net.minecraft.util.math.BlockPos pos)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, it.unimi.dsi.fastutil.longs.LongArrayList pos)
      Method will perform verification on only one position, improving performance but might result in a crash, or behave incorrectly in the case where the BlockPos in not in the good chunk. Only use this method in a controlled environment.
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, it.unimi.dsi.fastutil.longs.LongArrayList pos)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, long pos)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, long pos)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, List<net.minecraft.util.math.BlockPos> pos)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, List<net.minecraft.util.math.BlockPos> pos)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.util.math.BlockPos pos)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, net.minecraft.util.math.BlockPos pos)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, it.unimi.dsi.fastutil.longs.LongArrayList posList, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, it.unimi.dsi.fastutil.longs.LongArrayList pos, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, long pos, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, long pos, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, List<net.minecraft.util.math.BlockPos> posList, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, List<net.minecraft.util.math.BlockPos> posList, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.util.math.BlockPos pos, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, net.minecraft.util.math.BlockPos pos, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, Map<net.minecraft.util.math.ChunkPos,it.unimi.dsi.fastutil.longs.LongOpenHashSet> posMap, StructurePlacementRuleManager ruler)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, Map<net.minecraft.util.math.ChunkPos,it.unimi.dsi.fastutil.longs.LongOpenHashSet> posMap)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, Map<net.minecraft.util.math.ChunkPos,it.unimi.dsi.fastutil.longs.LongOpenHashSet> posMap)
    • put

      public DividedBlockListManager put(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, Map<net.minecraft.util.math.ChunkPos,it.unimi.dsi.fastutil.longs.LongOpenHashSet> posMap, StructurePlacementRuleManager ruler)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, it.unimi.dsi.fastutil.longs.LongArrayList pos, StructurePlacementRuleManager ruler)
      Method will perform verification on only one position, improving performance but might result in a crash, or behave incorrectly in the case where the BlockPos in not in the good chunk. Only use this method in a controlled environment.
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, it.unimi.dsi.fastutil.longs.LongArrayList pos, StructurePlacementRuleManager ruler)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, long pos, StructurePlacementRuleManager ruler)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, long pos, StructurePlacementRuleManager ruler)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, List<net.minecraft.util.math.BlockPos> pos, StructurePlacementRuleManager ruler)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, List<net.minecraft.util.math.BlockPos> pos, StructurePlacementRuleManager ruler)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.util.math.BlockPos pos, StructurePlacementRuleManager ruler)
    • putWithoutVerification

      public DividedBlockListManager putWithoutVerification(net.minecraft.block.BlockState state, net.minecraft.nbt.NbtCompound tag, net.minecraft.util.math.BlockPos pos, StructurePlacementRuleManager ruler)
    • getManager

      public BlockListManager getManager(net.minecraft.util.math.ChunkPos pos)
    • getAllManager

      public BlockListManager[] getAllManager()
    • clear

      public void clear()
    • contains

      public boolean contains(net.minecraft.util.math.ChunkPos pos)
    • getChunkPos

      public Set<net.minecraft.util.math.ChunkPos> getChunkPos()
    • placeAll

      public boolean placeAll(net.minecraft.world.StructureWorldAccess world)
    • placeAllNDelete

      public boolean placeAllNDelete(net.minecraft.world.StructureWorldAccess world)
    • getOrdered

      public OrderedBlockListManager getOrdered()
    • getOrdered

      public OrderedBlockListManager getOrdered(BlockSorter sorter)
    • placeJson

      public void placeJson(net.minecraft.world.StructureWorldAccess worldAccess, String name)
    • placeJson

      public void placeJson(net.minecraft.world.StructureWorldAccess worldAccess, String name, net.minecraft.util.math.ChunkPos offset)
    • putWithoutVerification

      public void putWithoutVerification(BlockListManager manager)