Class LocatableEntityQueryBuilder<T extends LocatableEntity,Q extends LocatableEntityQueryBuilder<T,Q,R,RQ>,R extends LocatableEntityQueryResult<T>,RQ extends LocatableEntityQueryRequest<T>>

java.lang.Object
com.epicbot.api.shared.query.AbstractQueryBuilder<T,Q,R,RQ>
com.epicbot.api.shared.query.RenderableQueryBuilder<T,Q,R,RQ>
com.epicbot.api.shared.query.LocatableEntityQueryBuilder<T,Q,R,RQ>
Direct Known Subclasses:
GameEntityQueryBuilder, GraphicsObjectQueryBuilder, ProjectileQueryBuilder

public abstract class LocatableEntityQueryBuilder<T extends LocatableEntity,Q extends LocatableEntityQueryBuilder<T,Q,R,RQ>,R extends LocatableEntityQueryResult<T>,RQ extends LocatableEntityQueryRequest<T>> extends RenderableQueryBuilder<T,Q,R,RQ>
  • Constructor Details

    • LocatableEntityQueryBuilder

      public LocatableEntityQueryBuilder(APIContext ctx)
  • Method Details

    • results

      public R results()
      Overrides:
      results in class AbstractQueryBuilder<T extends LocatableEntity,Q extends LocatableEntityQueryBuilder<T,Q,R,RQ>,R extends LocatableEntityQueryResult<T>,RQ extends LocatableEntityQueryRequest<T>>
    • results

      public R results(DistanceFunction distanceFunction)
    • id

      public Q id(int... ids)
    • distance

      public final Q distance(double maximum)
      Set the max distance (using euclidean distance) for this query.
      Parameters:
      maximum -
      Returns:
      this
    • distance

      public final Q distance(double minimum, double maximum)
      Set the min and max distance (using euclidean distance) for this query.
      Parameters:
      minimum -
      maximum -
      Returns:
      this
    • distance

      public final Q distance(Locatable other, double maximum)
      Set the max distance (using euclidean distance) between the entity and another locatable.
      Parameters:
      other - the other locatable
      maximum - the max distance
      Returns:
      this
    • distance

      public final Q distance(Locatable other, double minimum, double maximum)
      Set the min and max distance (using euclidean distance) between the entity and another locatable.
      Parameters:
      other - the other locatable
      minimum - the min distance
      maximum - the max distance
      Returns:
      this
    • tileDistance

      public final Q tileDistance(int maximum)
      Set the max tile distance (using Chebyshev distance) for this query.
      Parameters:
      maximum -
      Returns:
      this
    • tileDistance

      public final Q tileDistance(int minimum, int maximum)
      Set the min and max tile distance (using Chebyshev distance) for this query.
      Parameters:
      minimum -
      maximum -
      Returns:
      this
    • tileDistance

      public final Q tileDistance(Locatable other, int maximum)
      Set the max tile distance (using Chebyshev distance) between the entity and another locatable.
      Parameters:
      other - the other locatable
      maximum - the max tile distance
      Returns:
      this
    • tileDistance

      public final Q tileDistance(Locatable other, int minimum, int maximum)
      Set the min and max tile distance (using Chebyshev distance) between the entity and another locatable.
      Parameters:
      other - the other locatable
      minimum - the min tile distance
      maximum - the max tile distance
      Returns:
      this
    • reachable

      public Q reachable()
    • reachableFrom

      public Q reachableFrom(Locatable locatable)
    • unreachable

      public Q unreachable()
    • unreachableFrom

      public Q unreachableFrom(Locatable locatable)
    • located

      public final Q located(Locatable... locatables)
      Checks if the entity is located on ONE of the given tiles.
      Parameters:
      locatables - the locatables
      Returns:
      this
    • notLocated

      public final Q notLocated(Locatable... locatables)
      Checks if the entity is NOT located on ANY of the given tiles.
      Parameters:
      locatables - the locatables
      Returns:
      this
    • within

      public final Q within(Area... areas)
      Checks if the entity is located in ONE of the given areas.
      Parameters:
      areas - the areas to check
      Returns:
      this
    • notWithin

      public final Q notWithin(Area... areas)
      Checks if the entity is NOT located in ANY of the given areas.
      Parameters:
      areas - the areas to check
      Returns:
      this