Class ExtentBufferedCompositePattern

All Implemented Interfaces:
Filter, ExtentPattern, Pattern

public class ExtentBufferedCompositePattern extends AbstractExtentPattern
A pattern that composes multiple patterns consecutively, ensuring that changes from one pattern are realized by the subsequent one(s). For best results, use an ExtentBuffer to avoid changing blocks in an underlying extent (e.g. the world).
  • Constructor Details

    • ExtentBufferedCompositePattern

      public ExtentBufferedCompositePattern(Extent extent, Pattern... patterns)
      Construct a new instance of this pattern.

      Note that all patterns passed which are ExtentPatterns should use the same extent as the one passed to this constructor, or block changes may not be realized by those patterns.

      Parameters:
      extent - the extent to buffer changes to
      patterns - the patterns to apply, in order
  • Method Details

    • applyBlock

      public BaseBlock applyBlock(BlockVector3 position)
      Description copied from interface: Pattern
      Return a BaseBlock for the given position.
      Parameters:
      position - the position
      Returns:
      a block
    • fork

      public Pattern fork()
      Description copied from interface: Filter
      Fork this for use by another thread - Typically filters are simple and don't need to create another copy to be thread safe here
      Returns:
      this