Interface IBlueprintIterator

All Known Implementing Classes:
AbstractBlueprintIterator, AbstractBlueprintIteratorWrapper, BlueprintIteratorDefault, BlueprintIteratorHilbert, BlueprintIteratorInwardCircle, BlueprintIteratorInwardCircleHeight, BlueprintIteratorRandom

public interface IBlueprintIterator
  • Method Details

    • increment

      AbstractBlueprintIterator.Result increment(net.neoforged.neoforge.common.util.TriPredicate<BlueprintPositionInfo,net.minecraft.core.BlockPos,IStructureHandler> skipCondition)
      Increment the structure with a certain skipCondition (jump over blocks that fulfill skipCondition).
      Parameters:
      skipCondition - the skipCondition.
      Returns:
      Result of increment.
    • increment

      Increment method, create in implementation.
      Returns:
      increment the structure position (y++).
    • decrement

      Decrement method, create in implementation.
      Returns:
      decrement the structure position (y--).
    • decrement

      AbstractBlueprintIterator.Result decrement(net.neoforged.neoforge.common.util.TriPredicate<BlueprintPositionInfo,net.minecraft.core.BlockPos,IStructureHandler> skipCondition)
      Decrement the structure with a certain skipCondition (jump over blocks that fulfill skipCondition).
      Parameters:
      skipCondition - the skipCondition.
      Returns:
      Result of decrement.
    • setProgressPos

      void setProgressPos(net.minecraft.core.BlockPos localPosition)
      Change the current progressPos. Used when loading progress.
      Parameters:
      localPosition - new progressPos.
    • getBluePrintPositionInfo

      BlueprintPositionInfo getBluePrintPositionInfo(net.minecraft.core.BlockPos localPos)
      Get the blueprint info from the position.
      Parameters:
      localPos - the position.
      Returns:
      the info object.
    • includeEntities

      void includeEntities()
      Set the iterator to include entities.
    • hasEntities

      boolean hasEntities()
      Retrieve whether the iterator is taking entities into account as well
      Returns:
      whether the iterator is taking entities into account as well
    • setRemoving

      void setRemoving()
      Set the iterator to removal mode.
    • isRemoving

      boolean isRemoving()
      Retrieve whether we're removing blocks at the moment
      Returns:
      Whether we are removing blocks at the moment
    • reset

      void reset()
      Reset the progressPos.
    • getProgressPos

      net.minecraft.core.BlockPos getProgressPos()
      Get the progress pos of the iterator.
      Returns:
      the progress pos.
    • getPrevProgressPos

      net.minecraft.core.BlockPos getPrevProgressPos()
      Get the last position before the progress pos of the iterator.
      Returns:
      the prev progress pos.
    • getSize

      net.minecraft.core.BlockPos getSize()
      Get the size of the blueprint which is iterated over
      Returns:
      the size