From 086ee138505fd090a402345979105d9c265c3366 Mon Sep 17 00:00:00 2001 From: fruitiex Date: Sat, 12 Sep 2009 10:24:04 +0000 Subject: [PATCH] use a gradient for the accelerometer, dynamically change it's color git-svn-id: svn://svn.icculus.org/nexuiz/trunk@7745 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/defaultNexuiz.cfg | 3 ++- data/gfx/hud/accelerometer_gradient.tga | Bin 0 -> 8796 bytes data/qcsrc/client/sbar.qc | 31 ++++++++++++++++-------- 3 files changed, 23 insertions(+), 11 deletions(-) create mode 100644 data/gfx/hud/accelerometer_gradient.tga diff --git a/data/defaultNexuiz.cfg b/data/defaultNexuiz.cfg index 21021fdd0..3ef42a908 100644 --- a/data/defaultNexuiz.cfg +++ b/data/defaultNexuiz.cfg @@ -1593,7 +1593,8 @@ seta cl_showacceleration_z 0 "include the speed on the Z-axis" seta cl_showacceleration_size 40 "height of the bar" seta cl_showacceleration_scale 1 "X-axis scale of the bar" seta cl_showacceleration_alpha 0.5 "alpha of the bar" -seta cl_showacceleration_color "1 0 0" "color of the bar" +seta cl_showacceleration_color_custom 0 "0 = dynamic color depending on acceleration, 1 = use custom color" +seta cl_showacceleration_color "1 0 0" "color of the bar, needs cl_showacceleration_color_custom to be 1" seta cl_showacceleration_position 0.6 "Y-axis positioning of the bar" set g_jetpack 0 "Jetpack mutator (uses the hook's button, can't coexist with the offhand hook, but only with the onhand one)" diff --git a/data/gfx/hud/accelerometer_gradient.tga b/data/gfx/hud/accelerometer_gradient.tga new file mode 100644 index 0000000000000000000000000000000000000000..0bbad1787c6e8224be4769f2e230f214fbd5205c GIT binary patch literal 8796 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 literal 0 HcmV?d00001 diff --git a/data/qcsrc/client/sbar.qc b/data/qcsrc/client/sbar.qc index 41e33f883..8b44060c3 100644 --- a/data/qcsrc/client/sbar.qc +++ b/data/qcsrc/client/sbar.qc @@ -1923,11 +1923,6 @@ void Sbar_ShowAcceleration(void) top_x = vid_conwidth/2; top_y = 0; - size = cvar("cl_showacceleration_size"); - scale = cvar("cl_showacceleration_scale"); - alpha = cvar("cl_showacceleration_alpha"); - color = stov(cvar_string("cl_showacceleration_color")); - for(i=0;i<=acc_avgspeeds;i+=1) avgspeed += prev_speed[i]; avgspeed /= acc_avgspeeds; @@ -1946,11 +1941,27 @@ void Sbar_ShowAcceleration(void) prev_speed[0] = vlen(pmove_vel - pmove_vel_z * '0 0 1'); pos = top - size/2 * '0 1 0' + (cvar("cl_showacceleration_position") * vid_conheight) * '0 1 0'; - - if (acceleration >= 0) - drawfill(pos, acceleration * scale * '10 0 0' + size * '0 1 0', color, alpha, DRAWFLAG_NORMAL); - else - drawfill(pos + acceleration * scale * '10 0 0', -acceleration * scale * '10 0 0' + size * '0 1 0', color, alpha, DRAWFLAG_NORMAL); + + size = cvar("cl_showacceleration_size"); + scale = cvar("cl_showacceleration_scale"); + alpha = cvar("cl_showacceleration_alpha"); + if (cvar("cl_showacceleration_color_custom")) + color = stov(cvar_string("cl_showacceleration_color")); + else { + color = '1 1 1'; + if (acceleration < 0) { + color_y = 1 - (-acceleration * 0.05); + color_z = 1 - (-acceleration * 0.05); + } else if (acceleration > 0) { + color_x = 1 - (acceleration * 0.05); + color_z = 1 - (acceleration * 0.05); + } + } + + if (acceleration > 0) + drawpic(pos, "gfx/hud/accelerometer_gradient", acceleration * scale * '10 0 0' + size * '0 1 0', color, alpha, DRAWFLAG_NORMAL); + else if (acceleration < 0) + drawpic(pos + acceleration * scale * '10 0 0', "gfx/hud/accelerometer_gradient", -acceleration * scale * '10 0 0' + size * '0 1 0', color, alpha, DRAWFLAG_NORMAL); } void Sbar_DrawAccuracyStats_Description_Hitscan(vector position) -- 2.39.2