From 70d5a9dfcbad3ab046df47db1f7e889030f8396e Mon Sep 17 00:00:00 2001 From: Jakob MG Date: Tue, 17 Jan 2012 11:54:46 +0100 Subject: [PATCH 1/1] Fix http://dev.xonotic.org/issues/947 --- qcsrc/server/vehicles/racer.qc | 3 ++- qcsrc/server/vehicles/raptor.qc | 3 ++- qcsrc/server/vehicles/spiderbot.qc | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/qcsrc/server/vehicles/racer.qc b/qcsrc/server/vehicles/racer.qc index 7f5e80e4b..dc9f419d9 100644 --- a/qcsrc/server/vehicles/racer.qc +++ b/qcsrc/server/vehicles/racer.qc @@ -524,7 +524,8 @@ void racer_exit(float eject) } else { - self.owner.velocity = '0 0 0'; + self.owner.velocity = normalize(self.velocity) * autocvar_sv_maxairspeed; + self.owner.oldvelocity = self.owner.velocity; spot = self.origin - v_forward * 200 + '0 0 64'; spot = vehicles_findgoodexit(spot); setorigin(self.owner , spot); diff --git a/qcsrc/server/vehicles/raptor.qc b/qcsrc/server/vehicles/raptor.qc index ae91c8303..630a4de85 100644 --- a/qcsrc/server/vehicles/raptor.qc +++ b/qcsrc/server/vehicles/raptor.qc @@ -247,7 +247,8 @@ void raptor_exit(float eject) } else { - self.owner.velocity = '0 0 0'; + self.owner.velocity = normalize(self.velocity) * autocvar_sv_maxairspeed; + self.owner.oldvelocity = self.owner.velocity; spot = self.origin - v_forward * 200 + '0 0 64'; spot = vehicles_findgoodexit(spot); setorigin(self.owner , spot); diff --git a/qcsrc/server/vehicles/spiderbot.qc b/qcsrc/server/vehicles/spiderbot.qc index 3d809e242..913e3316f 100644 --- a/qcsrc/server/vehicles/spiderbot.qc +++ b/qcsrc/server/vehicles/spiderbot.qc @@ -450,10 +450,12 @@ void spiderbot_exit(float eject) spot = vehicles_findgoodexit(spot); setorigin(self.owner , spot); self.owner.velocity = (v_up + v_forward * 0.25) * 750; + self.owner.oldvelocity = self.owner.velocity; } else { - self.owner.velocity = '0 0 0'; + self.owner.velocity = normalize(self.velocity) * autocvar_sv_maxairspeed; + self.owner.oldvelocity = self.owner.velocity; spot = self.origin - v_forward * 200 + '0 0 64'; spot = vehicles_findgoodexit(spot); setorigin(self.owner , spot); -- 2.39.2