Release Healer Man 0.1.23
This commit is contained in:
1 parent
7f6001723a
commit
c4346751a9
9 files changed
+205
-23
No files matched your search
@@ -0,0 +1,17 @@
|
||||
import type { MobVector3 } from "../game/mobPopulation";
|
||||
|
||||
export const MOB_AGGRO_RANGE_VISIBILITY_DISTANCE = 40;
|
||||
|
||||
export function isMobAggroRangeVisible(
|
||||
playerPosition: MobVector3,
|
||||
mobPosition: MobVector3,
|
||||
hasLineOfSight: (from: MobVector3, to: MobVector3) => boolean,
|
||||
maximumDistance = MOB_AGGRO_RANGE_VISIBILITY_DISTANCE,
|
||||
): boolean {
|
||||
if (!Number.isFinite(maximumDistance) || maximumDistance < 0) return false;
|
||||
const dx = mobPosition[0] - playerPosition[0];
|
||||
const dy = mobPosition[1] - playerPosition[1];
|
||||
const dz = mobPosition[2] - playerPosition[2];
|
||||
if (dx * dx + dy * dy + dz * dz > maximumDistance * maximumDistance) return false;
|
||||
return hasLineOfSight(playerPosition, mobPosition);
|
||||
}
|
||||
Reference in new issue
Block a user