@inglorious/engine
Version:
A JavaScript game engine written with global state, immutability, and pure functions in mind. Have fun(ctional programming) with it!
17 lines (12 loc) • 506 B
JavaScript
import { align } from "@inglorious/engine/ai/movement/dynamic/align.js"
import { angle, magnitude } from "@inglorious/utils/math/vector.js"
import { subtract } from "@inglorious/utils/math/vectors.js"
export function face(entity, target, dt, options) {
const direction = subtract(target.position, entity.position)
const distance = magnitude(direction)
if (!distance) {
return entity
}
const orientation = angle(direction)
return align(entity, { ...target, orientation }, dt, options)
}