From 8a8d7e4ae1c30fb19cb9bcb4cb067c3dc4ec0408 Mon Sep 17 00:00:00 2001 From: div0 Date: Sat, 8 Apr 2006 23:09:34 +0000 Subject: [PATCH] bug with player falling through might be just a map bug... changed the speed test into debugging code that outputs the spawn position whenever a player falls out git-svn-id: svn://svn.icculus.org/nexuiz/trunk@1258 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/gamec/cl_client.c | 1 + data/qcsrc/server/gamec/defs.h | 2 ++ data/qcsrc/server/gamec/sv_main.c | 7 +++++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/data/qcsrc/server/gamec/cl_client.c b/data/qcsrc/server/gamec/cl_client.c index e09a68e6c..0d1a30252 100644 --- a/data/qcsrc/server/gamec/cl_client.c +++ b/data/qcsrc/server/gamec/cl_client.c @@ -349,6 +349,7 @@ void PutClientInServer (void) self.crouch = FALSE; self.view_ofs = PL_VIEW_OFS; setsize (self, PL_MIN, PL_MAX); + self.spawnorigin = spot.origin; setorigin (self, spot.origin + '0 0 1' * (1 - self.mins_z - 24)); // don't reset back to last position, even if new position is stuck in solid self.oldorigin = self.origin; diff --git a/data/qcsrc/server/gamec/defs.h b/data/qcsrc/server/gamec/defs.h index 17019ca91..386dcb464 100644 --- a/data/qcsrc/server/gamec/defs.h +++ b/data/qcsrc/server/gamec/defs.h @@ -251,3 +251,5 @@ float GRAPHOOK_RELEASE = 21; .float playerid; float playerid_last; .float noalign; // if set to 1, the item or spawnpoint won't be dropped to the floor + +.vector spawnorigin; diff --git a/data/qcsrc/server/gamec/sv_main.c b/data/qcsrc/server/gamec/sv_main.c index 0c7996734..b0514ca6f 100644 --- a/data/qcsrc/server/gamec/sv_main.c +++ b/data/qcsrc/server/gamec/sv_main.c @@ -96,8 +96,11 @@ void CreatureFrame (void) } if (dm > 0) Damage (self, world, world, dm, DEATH_FALL, self.origin, '0 0 0'); - else if(vlen(self.velocity) > 100000) - Damage (self, world, world, 50 * frametime, DEATH_SHOOTING_STAR, self.origin, '0 0 0'); + else if(vlen(self.velocity) > 100000 && cvar("developer")) + { + dprint(strcat(self.netname, " became too fast, please investigate: ", vtos(self.spawnorigin), "\n")); + Damage (self, world, world, 50000, DEATH_SHOOTING_STAR, self.origin, '0 0 0'); + } } // play stupid sounds -- 2.39.2