X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fclient%2Fteamradar.qc;h=9e79f0a2262b062fcdd3b45398e614efde4be950;hp=782776eb7866757ebc7ff8ad24076b4923e57859;hb=ce80a3d3800ee2f5ce8a8d93ccb6b835a46ec5f6;hpb=ad1fc0314153e3f183fc36892aa86126fa269c5e diff --git a/qcsrc/client/teamradar.qc b/qcsrc/client/teamradar.qc index 782776eb7..9e79f0a22 100644 --- a/qcsrc/client/teamradar.qc +++ b/qcsrc/client/teamradar.qc @@ -1,10 +1,9 @@ #include "teamradar.qh" -#include "hud/_mod.qh" - +#include +#include #include - -#include "../lib/csqcmodel/interpolate.qh" +#include vector teamradar_3dcoord_to_texcoord(vector in) { @@ -67,7 +66,7 @@ void draw_teamradar_background(float fg) { fga = 1; fgc = '1 1 1' * fg; - R_BeginPolygon(minimapname, DRAWFLAG_SCREEN | DRAWFLAG_MIPMAP); + R_BeginPolygon(minimapname, DRAWFLAG_SCREEN | DRAWFLAG_MIPMAP, true); if(v_flipped) { R_PolygonVertex(teamradar_texcoord_to_2dcoord(mi_pictexcoord3), yinvert(mi_pictexcoord3), fgc, fga); @@ -92,36 +91,37 @@ void draw_teamradar_player(vector coord3d, vector pangles, vector rgb) coord = teamradar_texcoord_to_2dcoord(teamradar_3dcoord_to_texcoord(coord3d)); - makevectors(pangles - '0 1 0' * teamradar_angle); + vector forward, right, up; + MAKE_VECTORS(pangles - '0 1 0' * teamradar_angle, forward, right, up); if(v_flipped) { - v_forward.x = -v_forward.x; - v_right.x = -v_right.x; - v_up.x = -v_up.x; + forward.x = -forward.x; + right.x = -right.x; + up.x = -up.x; // TODO: unused! } - v_forward.z = 0; - v_forward = normalize(v_forward); - v_forward.y *= -1.0; - v_right.x = -v_forward.y; - v_right.y = v_forward.x; + forward.z = 0; + forward = normalize(forward); + forward.y *= -1.0; + right.x = -forward.y; + right.y = forward.x; if(rgb == '1 1 1') rgb2 = '0 0 0'; else rgb2 = '1 1 1'; - R_BeginPolygon("", 0); - R_PolygonVertex(coord+v_forward*3, '0 0 0', rgb2, panel_fg_alpha); - R_PolygonVertex(coord+v_right*4-v_forward*2.5, '0 1 0', rgb2, panel_fg_alpha); - R_PolygonVertex(coord-v_forward*2, '1 0 0', rgb2, panel_fg_alpha); - R_PolygonVertex(coord-v_right*4-v_forward*2.5, '1 1 0', rgb2, panel_fg_alpha); + R_BeginPolygon("", 0, true); + R_PolygonVertex(coord+forward*3, '0 0 0', rgb2, panel_fg_alpha); + R_PolygonVertex(coord+right*4-forward*2.5, '0 1 0', rgb2, panel_fg_alpha); + R_PolygonVertex(coord-forward*2, '1 0 0', rgb2, panel_fg_alpha); + R_PolygonVertex(coord-right*4-forward*2.5, '1 1 0', rgb2, panel_fg_alpha); R_EndPolygon(); - R_BeginPolygon("", 0); - R_PolygonVertex(coord+v_forward*2, '0 0 0', rgb, panel_fg_alpha); - R_PolygonVertex(coord+v_right*3-v_forward*2, '0 1 0', rgb, panel_fg_alpha); - R_PolygonVertex(coord-v_forward, '1 0 0', rgb, panel_fg_alpha); - R_PolygonVertex(coord-v_right*3-v_forward*2, '1 1 0', rgb, panel_fg_alpha); + R_BeginPolygon("", 0, true); + R_PolygonVertex(coord+forward*2, '0 0 0', rgb, panel_fg_alpha); + R_PolygonVertex(coord+right*3-forward*2, '0 1 0', rgb, panel_fg_alpha); + R_PolygonVertex(coord-forward, '1 0 0', rgb, panel_fg_alpha); + R_PolygonVertex(coord-right*3-forward*2, '1 1 0', rgb, panel_fg_alpha); R_EndPolygon(); } @@ -148,7 +148,7 @@ void draw_teamradar_icon(vector coord, entity icon, entity pingdata, vector rgb, void draw_teamradar_link(vector start, vector end, int colors) { - TC(int, colors); + TC(int, colors); vector c0, c1, norm; start = teamradar_texcoord_to_2dcoord(teamradar_3dcoord_to_texcoord(start)); @@ -162,7 +162,7 @@ void draw_teamradar_link(vector start, vector end, int colors) c0 = colormapPaletteColor(colors & 0x0F, false); c1 = colormapPaletteColor((colors & 0xF0) / 0x10, false); - R_BeginPolygon("", 0); + R_BeginPolygon("", 0, true); R_PolygonVertex(start - norm, '0 0 0', c0, panel_fg_alpha); R_PolygonVertex(start + norm, '0 1 0', c0, panel_fg_alpha); R_PolygonVertex(end + norm, '1 1 0', c1, panel_fg_alpha); @@ -186,7 +186,7 @@ void teamradar_loadcvars() hud_panel_radar_maximized_zoommode = autocvar_hud_panel_radar_maximized_zoommode; // others default to 0 - // match this to defaultXonotic.cfg! + // match this to default hud cfg file! if(!hud_panel_radar_scale) hud_panel_radar_scale = 4096; if(!hud_panel_radar_foreground_alpha) hud_panel_radar_foreground_alpha = 0.8 * panel_fg_alpha; if(!hud_panel_radar_size.x) hud_panel_radar_size.x = 128; @@ -202,22 +202,17 @@ NET_HANDLE(ENT_CLIENT_RADARLINK, bool isnew) InterpolateOrigin_Undo(this); this.iflags = IFLAG_VELOCITY | IFLAG_ORIGIN; - this.classname = "radarlink"; if (isnew) IL_PUSH(g_radarlinks, this); if(sendflags & 1) { - this.origin_x = ReadCoord(); - this.origin_y = ReadCoord(); - this.origin_z = ReadCoord(); + this.origin = ReadVector(); setorigin(this, this.origin); } if(sendflags & 2) { - this.velocity_x = ReadCoord(); - this.velocity_y = ReadCoord(); - this.velocity_z = ReadCoord(); + this.velocity = ReadVector(); } if(sendflags & 4)