math

Angle helpers on top of the standard Lua math library.


Angles

math.calc_angle(src, dst): number, number, number

math.calc_angle(src: {x,y,z} | number,number,number, dst: {x,y,z} | number,number,number): number, number, number
  • Returns pitch, yaw, roll from src to dst.
  • Vectors can be tables {x,y,z} or three numbers.
local p, y, r = secret.math.calc_angle(eye, target)

math.angle_forward(angles): number, number, number

math.angle_forward(angles: {x,y,z} | number,number,number?): number, number, number
  • Returns a unit forward vector from pitch / yaw (/ roll).
  • Accepts {x,y,z}, {pitch,yaw,roll}, or pitch, yaw[, roll].
local pitch, yaw = secret.game.get_view_angles()
local fx, fy, fz = secret.math.angle_forward(pitch, yaw)

math.normalize_angles(angles): number, number, number

math.normalize_angles(angles: {x,y,z} | number,number,number): number, number, number
  • Normalizes pitch / yaw into usable view ranges.

Lerp

math.lerp(a, b, t): number | number, number, number

math.lerp(a: number, b: number, t: number): number math.lerp(a: vector, b: vector, t: number): number, number, number
  • Linear interpolate. Scalar or vector form.
local x, y, z = secret.math.lerp(from, to, 0.5)