mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 23:10:16 +01:00
Add more line of sight methods
This commit is contained in:
parent
efcb04d753
commit
0f0e14fad5
2 changed files with 21 additions and 0 deletions
|
@ -461,5 +461,13 @@ public interface RegionAccessor extends Keyed { // Paper
|
|||
@NotNull
|
||||
@Override
|
||||
NamespacedKey getKey();
|
||||
|
||||
/**
|
||||
* Tell whether a line of sight exists between the given locations
|
||||
* @param from Location to start at
|
||||
* @param to target Location
|
||||
* @return whether a line of sight exists between {@code from} and {@code to}
|
||||
*/
|
||||
public boolean lineOfSightExists(@NotNull Location from, @NotNull Location to);
|
||||
// Paper end
|
||||
}
|
||||
|
|
|
@ -622,6 +622,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
|||
*/
|
||||
public boolean hasLineOfSight(@NotNull Entity other);
|
||||
|
||||
// Paper start
|
||||
/**
|
||||
* Checks whether the living entity has block line of sight to the given block.
|
||||
* <p>
|
||||
* This uses the same algorithm that hostile mobs use to find the closest
|
||||
* player.
|
||||
*
|
||||
* @param location the location to determine line of sight to
|
||||
* @return true if there is a line of sight, false if not
|
||||
*/
|
||||
public boolean hasLineOfSight(@NotNull Location location);
|
||||
// Paper end
|
||||
|
||||
/**
|
||||
* Returns if the living entity despawns when away from players or not.
|
||||
* <p>
|
||||
|
|
Loading…
Reference in a new issue