java.lang.Object
net.rodofire.easierworldcreator.blockdata.blocklist.basic.comparator.BlockListComparator<ForceBlockList,Integer,ForceOrderedBlockListComparator,net.minecraft.block.BlockState>
net.rodofire.easierworldcreator.blockdata.blocklist.basic.comparator.ForceBlockListComparator

public class ForceBlockListComparator extends BlockListComparator<ForceBlockList,Integer,ForceOrderedBlockListComparator,net.minecraft.block.BlockState>
class to manage a list of FullBlockList automatically
  • Constructor Details

    • ForceBlockListComparator

      public ForceBlockListComparator(List<ForceBlockList> forceBlockList)
      init a comparator
      Parameters:
      forceBlockList - the list of blockList that will be indexed
    • ForceBlockListComparator

      public ForceBlockListComparator(ForceBlockList forceBlockList)
      init a comparator
      Parameters:
      forceBlockList - a blockList that will be indexed
    • ForceBlockListComparator

      public ForceBlockListComparator()
      init an empty comparator
  • Method Details

    • initIndexes

      protected void initIndexes()
      method tu initialize the indexes.
      Specified by:
      initIndexes in class BlockListComparator<ForceBlockList,Integer,ForceOrderedBlockListComparator,net.minecraft.block.BlockState>
    • put

      public void put(net.minecraft.block.BlockState state, net.minecraft.util.math.BlockPos pos, boolean force, Set<net.minecraft.block.Block> blocksToForce)
      Method to add a state and a pos to the list. If the state already exists, no blockList will be created. The method will also update the indexes
      Parameters:
      state - the state that will be tested
      pos - the pos that you want to use
    • put

      public void put(net.minecraft.block.BlockState state, List<net.minecraft.util.math.BlockPos> posList, boolean force, Set<net.minecraft.block.Block> blocksToForce)
      Method to add a state and a pos to the list. If the state already exists, no blockList will be created. The method will also update the indexes
      Parameters:
      state - the state that will be tested
      posList - the list of pos that you want to use
    • put

      public void put(ForceBlockList type)
      Method to add a state and a pos to the list. If the state already exists, no blockList will be created. The method will also update the indexes
      Specified by:
      put in class BlockListComparator<ForceBlockList,Integer,ForceOrderedBlockListComparator,net.minecraft.block.BlockState>
      Parameters:
      type - the BlockList that will be added in the comparator
    • getOrdered

      public ForceOrderedBlockListComparator getOrdered()
      Method to get the ordered version of the comparator
      Specified by:
      getOrdered in class BlockListComparator<ForceBlockList,Integer,ForceOrderedBlockListComparator,net.minecraft.block.BlockState>
      Returns:
      the ordered version
    • getCleaned

      public List<ForceBlockList> getCleaned(List<ForceBlockList> blockList)

      Method to clean a blockList.

      In the case, there are multiple common BlockState.

      All the blockPos common of a BlockState will be fused in a single BlockState

      Specified by:
      getCleaned in class BlockListComparator<ForceBlockList,Integer,ForceOrderedBlockListComparator,net.minecraft.block.BlockState>
      Parameters:
      blockList - the blockList that will bea cleaned
      Returns:
      the cleaned version of the list