@inglorious/engine
Version:
A JavaScript game engine written with global state, immutability, and pure functions in mind. Have fun(ctional programming) with it!
14 lines (9 loc) • 449 B
JavaScript
import { angle, magnitude } from "@inglorious/utils/math/vector.js"
import { applyVelocity } from "@inglorious/utils/physics/velocity.js"
const DEFAULT_ORIENTATION = 0
export function modernMove(entity, dt) {
const { velocity, position } = applyVelocity(entity, dt)
let orientation = entity.orientation ?? DEFAULT_ORIENTATION
orientation = magnitude(velocity) ? angle(velocity) : orientation
return { velocity, position, orientation }
}