Add vec_len2d and angle_delta_rad to util.c
This commit is contained in:
parent
367a811667
commit
60847df031
|
@ -26,6 +26,8 @@ bool valid_client(cl_entity_t* ent);
|
|||
char* get_name(int ent_idx);
|
||||
vec3_t vec3(float x, float y, float z);
|
||||
bool vec_is_zero(vec3_t v);
|
||||
float vec_len2d(vec3_t v);
|
||||
float angle_delta_rad(float a, float b);
|
||||
bool world_to_screen(vec3_t vec, vec2_t screen);
|
||||
void gl_drawbox(int x, int y, int w, int h, rgb_t c);
|
||||
void gl_drawline(int x0, int y0, int x1, int y1, float w, rgb_t col);
|
||||
|
|
17
src/util.c
17
src/util.c
|
@ -1,8 +1,10 @@
|
|||
|
||||
|
||||
#include "include/util.h"
|
||||
#include "include/sdk.h"
|
||||
#include "include/globals.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <GL/gl.h>
|
||||
|
||||
bool is_alive(cl_entity_t* ent) {
|
||||
|
@ -34,6 +36,21 @@ bool vec_is_zero(vec3_t v) {
|
|||
return v[0] == 0.0f && v[1] == 0.0f && v[2] == 0.0f;
|
||||
}
|
||||
|
||||
float vec_len2d(vec3_t v) {
|
||||
return sqrtf(v.x * v.x + v.y * v.y);
|
||||
}
|
||||
|
||||
float angle_delta_rad(float a, float b) {
|
||||
float delta = isfinite(a - b) ? remainder(a - b, 360) : 0;
|
||||
|
||||
if (a > b && delta >= M_PI)
|
||||
delta -= M_PI * 2;
|
||||
else if (delta <= -M_PI)
|
||||
delta += M_PI * 2;
|
||||
|
||||
return delta;
|
||||
}
|
||||
|
||||
bool world_to_screen(vec3_t vec, vec2_t screen) {
|
||||
if (vec_is_zero(vec))
|
||||
return false;
|
||||
|
|
Loading…
Reference in New Issue