]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/csqcmodellib/cl_player.qc
Merge branch 'master' into mirceakitsune/damage_effects
[xonotic/xonotic-data.pk3dir.git] / qcsrc / csqcmodellib / cl_player.qc
index a08bfca7d3113c88004900e6d84ff0c9390c384e..40ba3f7a9f73c4d0a283dc6578b54a396211f00e 100644 (file)
@@ -68,9 +68,9 @@ void CSQCPlayer_SetPredictionError(vector o, vector v)
        if(vlen(o) > 32 || vlen(v) > 128)
                return;
 
-       csqcplayer_predictionerrorfactor = autocvar_cl_predictionerrorcompensation / ticrate;
        csqcplayer_predictionerroro = CSQCPlayer_GetPredictionErrorO() + o;
        csqcplayer_predictionerrorv = CSQCPlayer_GetPredictionErrorV() + v;
+       csqcplayer_predictionerrorfactor = autocvar_cl_predictionerrorcompensation / ticrate;
        csqcplayer_predictionerrortime = time + 1.0 / csqcplayer_predictionerrorfactor;
 }
 
@@ -116,8 +116,8 @@ void CSQCPlayer_PredictTo(float endframe, float apply_error)
        CSQCPlayer_Unpredict();
        if(apply_error)
        {
-               self.origin -= CSQCPlayer_GetPredictionErrorO();
-               self.velocity -= CSQCPlayer_GetPredictionErrorV();
+               self.origin += CSQCPlayer_GetPredictionErrorO();
+               self.velocity += CSQCPlayer_GetPredictionErrorV();
        }
        CSQCPlayer_SetMinsMaxs();
 
@@ -210,7 +210,7 @@ void CSQCPlayer_SetCamera()
                                v = v0;
                                csqcplayer_status = CSQCPLAYERSTATUS_PREDICTED;
                                CSQCPlayer_PredictTo(servercommandframe + 1, FALSE);
-                               CSQCPlayer_SetPredictionError(o - self.origin, v0 - self.velocity);
+                               CSQCPlayer_SetPredictionError(self.origin - o, self.velocity - v);
                                self.origin = o;
                                self.velocity = v;