Class BlockIterator

java.lang.Object
org.bukkit.util.BlockIterator
All Implemented Interfaces:
Iterator<Block>

public class BlockIterator
extends Object
implements Iterator<Block>
This class performs ray tracing and iterates along blocks on a line
  • Constructor Details

    • BlockIterator

      public BlockIterator​(@NotNull World world, @NotNull Vector start, @NotNull Vector direction, double yOffset, int maxDistance)
      Constructs the BlockIterator.

      This considers all blocks as 1x1x1 in size.

      Parameters:
      world - The world to use for tracing
      start - A Vector giving the initial location for the trace
      direction - A Vector pointing in the direction for the trace
      yOffset - The trace begins vertically offset from the start vector by this value
      maxDistance - This is the maximum distance in blocks for the trace. Setting this value above 140 may lead to problems with unloaded chunks. A value of 0 indicates no limit
    • BlockIterator

      public BlockIterator​(@NotNull Location loc, double yOffset, int maxDistance)
      Constructs the BlockIterator.

      This considers all blocks as 1x1x1 in size.

      Parameters:
      loc - The location for the start of the ray trace
      yOffset - The trace begins vertically offset from the start vector by this value
      maxDistance - This is the maximum distance in blocks for the trace. Setting this value above 140 may lead to problems with unloaded chunks. A value of 0 indicates no limit
    • BlockIterator

      public BlockIterator​(@NotNull Location loc, double yOffset)
      Constructs the BlockIterator.

      This considers all blocks as 1x1x1 in size.

      Parameters:
      loc - The location for the start of the ray trace
      yOffset - The trace begins vertically offset from the start vector by this value
    • BlockIterator

      public BlockIterator​(@NotNull Location loc)
      Constructs the BlockIterator.

      This considers all blocks as 1x1x1 in size.

      Parameters:
      loc - The location for the start of the ray trace
    • BlockIterator

      public BlockIterator​(@NotNull LivingEntity entity, int maxDistance)
      Constructs the BlockIterator.

      This considers all blocks as 1x1x1 in size.

      Parameters:
      entity - Information from the entity is used to set up the trace
      maxDistance - This is the maximum distance in blocks for the trace. Setting this value above 140 may lead to problems with unloaded chunks. A value of 0 indicates no limit
    • BlockIterator

      public BlockIterator​(@NotNull LivingEntity entity)
      Constructs the BlockIterator.

      This considers all blocks as 1x1x1 in size.

      Parameters:
      entity - Information from the entity is used to set up the trace
  • Method Details