Class LocationUtils

java.lang.Object
ru.cwcode.cwutils.location.LocationUtils

public class LocationUtils extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static List<org.bukkit.block.Block>
    getAllBlocksBetween(org.bukkit.Location pos1, org.bukkit.Location pos2)
    Возвращает список блоков, ограниченный кубоидом
    static org.bukkit.block.BlockFace
     
    static org.bukkit.util.Vector
    getCoordinatesInsideChunk(org.bukkit.Location location)
    Converts a location to a Vector containing the location's coordinates inside the chunk (rounded to int values)
    static Collection<org.bukkit.entity.Entity>
    getEntitiesBetween(org.bukkit.Location pos1, org.bukkit.Location pos2)
    Получает энтити, ограниченные кубоидом
    static Collection<org.bukkit.entity.LivingEntity>
    getEntitiesInRadius(org.bukkit.Location location, double radius, boolean thruBlocks)
    Возвращает коллекцию LivingEntity в радиусе
    static <T extends org.bukkit.entity.Entity>
    Optional<T>
    getEntityAtLocation(org.bukkit.Location location, Class<T> entityClass)
    Проверяет есть ли энтити в заданной локации
    static org.bukkit.Location
    getHighestLocationUnder(org.bukkit.Location location)
    Возвращает локацию последнего блока воздуха под заданной локацией.
    static float
     
    static boolean
    hasBlockBetweenLocations(org.bukkit.Location pos1, org.bukkit.Location pos2)
    Проверяет наличие твёрдых блков между двумя точками (прямая)
    static boolean
    hasEntityAtLocation(org.bukkit.Location location, boolean onlyAlive)
    Проверяет есть ли энтити в заданной локации
    static boolean
    isIn(org.bukkit.Location locationToTest, org.bukkit.Chunk chunk)
    Проверяет, находится ли локация в чанке
    static boolean
    isInRegion(org.bukkit.Location tested, org.bukkit.Location pos1, org.bukkit.Location pos2)
    Проверяет наличие локации между двумя точками (кубоид)
    static int
    packChunkCoords(@org.jetbrains.annotations.Range(from=0L, to=15L) int x, @org.jetbrains.annotations.Range(from=0L, to=15L) int z, @org.jetbrains.annotations.Range(from=-8388608L, to=8388607L) int y)
     
    static int
    packChunkCoords(org.bukkit.Location location)
     
    static org.bukkit.Location
    randomLocation(org.bukkit.Location pos1, org.bukkit.Location pos2)
    Возвращает случайную локацию между двумя точками
    static @org.jetbrains.annotations.Range(from=0L, to=15L) int
    unpackChunkX(int packed)
     
    static @org.jetbrains.annotations.Range(from=-8388608L, to=8388607L) int
    unpackChunkY(int packed)
     
    static @org.jetbrains.annotations.Range(from=0L, to=15L) int
    unpackChunkZ(int packed)
     
    static boolean
    validateAir(org.bukkit.Location location)
     
    static boolean
    validateNoEntities(org.bukkit.Location pos1, org.bukkit.Location pos2)
     
    static boolean
    validateSolid(org.bukkit.Location location)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • LocationUtils

      public LocationUtils()
  • Method Details

    • randomLocation

      public static org.bukkit.Location randomLocation(org.bukkit.Location pos1, org.bukkit.Location pos2)
      Возвращает случайную локацию между двумя точками
    • getAllBlocksBetween

      public static List<org.bukkit.block.Block> getAllBlocksBetween(org.bukkit.Location pos1, org.bukkit.Location pos2)
      Возвращает список блоков, ограниченный кубоидом
    • getHighestLocationUnder

      public static org.bukkit.Location getHighestLocationUnder(org.bukkit.Location location)
      Возвращает локацию последнего блока воздуха под заданной локацией. Если все блоки снизу это воздух, то возвращает самый нижний блок
    • getEntitiesInRadius

      public static Collection<org.bukkit.entity.LivingEntity> getEntitiesInRadius(org.bukkit.Location location, double radius, boolean thruBlocks)
      Возвращает коллекцию LivingEntity в радиусе
      Parameters:
      thruBlocks - указывает, нужно ли делать проверку на наличие блоков между энтити
    • hasBlockBetweenLocations

      public static boolean hasBlockBetweenLocations(org.bukkit.Location pos1, org.bukkit.Location pos2)
      Проверяет наличие твёрдых блков между двумя точками (прямая)
    • hasEntityAtLocation

      public static boolean hasEntityAtLocation(org.bukkit.Location location, boolean onlyAlive)
      Проверяет есть ли энтити в заданной локации
      Parameters:
      onlyAlive - учитывать только LivingEntity
    • getEntityAtLocation

      public static <T extends org.bukkit.entity.Entity> Optional<T> getEntityAtLocation(org.bukkit.Location location, Class<T> entityClass)
      Проверяет есть ли энтити в заданной локации
      Parameters:
      entityClass - учитывать только entityClass
    • getEntitiesBetween

      public static Collection<org.bukkit.entity.Entity> getEntitiesBetween(org.bukkit.Location pos1, org.bukkit.Location pos2)
      Получает энтити, ограниченные кубоидом
    • isIn

      public static boolean isIn(org.bukkit.Location locationToTest, org.bukkit.Chunk chunk)
      Проверяет, находится ли локация в чанке
    • isInRegion

      public static boolean isInRegion(org.bukkit.Location tested, org.bukkit.Location pos1, org.bukkit.Location pos2)
      Проверяет наличие локации между двумя точками (кубоид)
    • getYawRotatedToGiven

      public static float getYawRotatedToGiven(float yaw)
    • getBlockFaceFromYaw

      public static org.bukkit.block.BlockFace getBlockFaceFromYaw(float yaw)
    • packChunkCoords

      public static int packChunkCoords(@org.jetbrains.annotations.Range(from=0L, to=15L) int x, @org.jetbrains.annotations.Range(from=0L, to=15L) int z, @org.jetbrains.annotations.Range(from=-8388608L, to=8388607L) int y)
    • unpackChunkX

      public static @org.jetbrains.annotations.Range(from=0L, to=15L) int unpackChunkX(int packed)
    • unpackChunkY

      public static @org.jetbrains.annotations.Range(from=-8388608L, to=8388607L) int unpackChunkY(int packed)
    • unpackChunkZ

      public static @org.jetbrains.annotations.Range(from=0L, to=15L) int unpackChunkZ(int packed)
    • packChunkCoords

      public static int packChunkCoords(org.bukkit.Location location)
    • validateAir

      public static boolean validateAir(org.bukkit.Location location)
    • validateSolid

      public static boolean validateSolid(org.bukkit.Location location)
    • validateNoEntities

      public static boolean validateNoEntities(org.bukkit.Location pos1, org.bukkit.Location pos2)
    • getCoordinatesInsideChunk

      public static org.bukkit.util.Vector getCoordinatesInsideChunk(org.bukkit.Location location)
      Converts a location to a Vector containing the location's coordinates inside the chunk (rounded to int values)
      Parameters:
      location - Location
      Returns:
      Vector containing the X, Y and Z int values of the location inside its chunk