r4134 - trunk/data/qcsrc/client
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Wed Aug 13 12:58:35 EDT 2008
Author: div0
Date: 2008-08-13 12:58:35 -0400 (Wed, 13 Aug 2008)
New Revision: 4134
Modified:
trunk/data/qcsrc/client/sbar.qc
Log:
new time display in qualifying
Modified: trunk/data/qcsrc/client/sbar.qc
===================================================================
--- trunk/data/qcsrc/client/sbar.qc 2008-08-13 15:57:59 UTC (rev 4133)
+++ trunk/data/qcsrc/client/sbar.qc 2008-08-13 16:58:35 UTC (rev 4134)
@@ -1106,7 +1106,7 @@
drawfont = sbar_bigfont;
float a;
vector m;
- string s;
+ string s, forcetime;
m = '0.5 0 0' * vid_conwidth + '0 0.25 0' * vid_conheight;
@@ -1115,12 +1115,15 @@
a = bound(0, 2 - (time - race_checkpointtime), 1);
s = "";
+ forcetime = "";
if(a > 0) // just hit a checkpoint?
{
if(race_time && race_previousbesttime)
s = MakeRaceString(race_checkpoint, race_time / 10 - race_previousbesttime / 10, 0, 0, race_previousbestname);
else
s = MakeRaceString(race_checkpoint, 0, -1, 0, race_previousbestname);
+ if(race_time)
+ forcetime = mmsss(race_time);
}
else
{
@@ -1134,17 +1137,27 @@
}
}
- if(s != "")
- if(a > 0)
+ if(s != "" && a > 0)
{
dummyfunction(0, 0, 0, 0, 0, 0, 0, 0); // work around DP bug (set OFS_PARAM5 to 0)
drawcolorcodedstring(m - '0 16 0' - '8 0 0' * stringwidth(s, TRUE), s, '16 16 0', sbar_alpha_fg * a, 0);
}
+ if(forcetime != "")
+ {
+ float sz;
+ a = bound(0, 1 - 2 * (time - race_checkpointtime), 1);
+ sz = 1.2 / (a + 0.2);
+ drawstring(m - '0 0 0' - '0 16 0' * (sz - 1) - '16 0 0' * sz * stringwidth(forcetime, FALSE), forcetime, '32 32 0' * sz, '1 1 1', sbar_alpha_fg * a, 0);
+ a = 1 - a;
+ }
+ else
+ a = 1;
+
if(race_laptime)
{
s = mmsss(10*(time - race_laptime));
- drawstring(m - '0 0 0' - '16 0 0' * stringwidth(s, FALSE), s, '32 32 0', '1 1 1', sbar_alpha_fg, 0);
+ drawstring(m - '0 0 0' - '16 0 0' * stringwidth(s, FALSE), s, '32 32 0', '1 1 1', sbar_alpha_fg * a, 0);
}
}
else
More information about the nexuiz-commits
mailing list