Class RayTraceResult


  • public class RayTraceResult
    extends Object
    The hit result of a ray trace.

    Only the hit position is guaranteed to always be available. The availability of the other attributes depends on what got hit and on the context in which the ray trace was performed.

    • Constructor Detail

      • RayTraceResult

        public RayTraceResult​(@NotNull
                              Vector hitPosition)
        Creates a RayTraceResult.
        Parameters:
        hitPosition - the hit position
      • RayTraceResult

        public RayTraceResult​(@NotNull
                              Vector hitPosition,
                              @Nullable
                              BlockFace hitBlockFace)
        Creates a RayTraceResult.
        Parameters:
        hitPosition - the hit position
        hitBlockFace - the hit block face
      • RayTraceResult

        public RayTraceResult​(@NotNull
                              Vector hitPosition,
                              @Nullable
                              Block hitBlock,
                              @Nullable
                              BlockFace hitBlockFace)
        Creates a RayTraceResult.
        Parameters:
        hitPosition - the hit position
        hitBlock - the hit block
        hitBlockFace - the hit block face
      • RayTraceResult

        public RayTraceResult​(@NotNull
                              Vector hitPosition,
                              @Nullable
                              Entity hitEntity)
        Creates a RayTraceResult.
        Parameters:
        hitPosition - the hit position
        hitEntity - the hit entity
      • RayTraceResult

        public RayTraceResult​(@NotNull
                              Vector hitPosition,
                              @Nullable
                              Entity hitEntity,
                              @Nullable
                              BlockFace hitBlockFace)
        Creates a RayTraceResult.
        Parameters:
        hitPosition - the hit position
        hitEntity - the hit entity
        hitBlockFace - the hit block face
    • Method Detail

      • getHitPosition

        @NotNull
        public Vector getHitPosition()
        Gets the exact position of the hit.
        Returns:
        a copy of the exact hit position
      • getHitBlock

        @Nullable
        public Block getHitBlock()
        Gets the hit block.
        Returns:
        the hit block, or null if not available
      • getHitBlockFace

        @Nullable
        public BlockFace getHitBlockFace()
        Gets the hit block face.
        Returns:
        the hit block face, or null if not available
      • getHitEntity

        @Nullable
        public Entity getHitEntity()
        Gets the hit entity.
        Returns:
        the hit entity, or null if not available
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object