[nexuiz-commits] r7634 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sat Sep 5 06:26:50 EDT 2009
Author: div0
Date: 2009-09-05 06:26:50 -0400 (Sat, 05 Sep 2009)
New Revision: 7634
Modified:
trunk/data/qcsrc/server/cl_physics.qc
trunk/data/qcsrc/server/race.qc
trunk/data/qcsrc/server/race.qh
Log:
increase float accuracy for race time accumulation
Modified: trunk/data/qcsrc/server/cl_physics.qc
===================================================================
--- trunk/data/qcsrc/server/cl_physics.qc 2009-09-05 10:19:46 UTC (rev 7633)
+++ trunk/data/qcsrc/server/cl_physics.qc 2009-09-05 10:26:50 UTC (rev 7634)
@@ -549,7 +549,11 @@
}
}
- self.race_movetime += frametime;
+ self.race_movetime_frac += frametime;
+ f = floor(self.race_movetime_frac);
+ self.race_movetime_frac -= f;
+ self.race_movetime_count += f;
+ self.race_movetime = self.race_movetime_frac + self.race_movetime_count;
buttons = self.BUTTON_ATCK + 2 * self.BUTTON_JUMP + 4 * self.BUTTON_ATCK2 + 8 * self.BUTTON_ZOOM + 16 * self.BUTTON_CROUCH + 32 * self.BUTTON_HOOK + 64 * self.BUTTON_USE + 128 * (self.movement_x < 0) + 256 * (self.movement_x > 0) + 512 * (self.movement_y < 0) + 1024 * (self.movement_y > 0);
Modified: trunk/data/qcsrc/server/race.qc
===================================================================
--- trunk/data/qcsrc/server/race.qc 2009-09-05 10:19:46 UTC (rev 7633)
+++ trunk/data/qcsrc/server/race.qc 2009-09-05 10:26:50 UTC (rev 7634)
@@ -288,7 +288,7 @@
{
e.race_checkpoint = -1;
e.race_laptime = 0;
- e.race_movetime = 0;
+ e.race_movetime = e.race_movetime_frac = e.race_movetime_count = 0;
e.race_penalty_accumulator = 0;
e.race_lastpenalty = world;
@@ -392,7 +392,7 @@
if(!self.race_checkpoint) // start line
{
other.race_laptime = time;
- other.race_movetime = 0;
+ other.race_movetime = other.race_movetime_frac = other.race_movetime_count = 0;
other.race_penalty_accumulator = 0;
other.race_lastpenalty = world;
}
Modified: trunk/data/qcsrc/server/race.qh
===================================================================
--- trunk/data/qcsrc/server/race.qh 2009-09-05 10:19:46 UTC (rev 7633)
+++ trunk/data/qcsrc/server/race.qh 2009-09-05 10:26:50 UTC (rev 7634)
@@ -19,4 +19,7 @@
float race_completing;
void race_ImposePenaltyTime(entity pl, float penalty, string reason);
void race_StartCompleting();
-.float race_movetime;
+
+.float race_movetime; // for reading
+.float race_movetime_frac; // fractional accumulator for higher accuracy (helper for writing)
+.float race_movetime_count; // integer accumulator
More information about the nexuiz-commits
mailing list