From f011126858f3ea83e9bc9118c292393a882ef99d Mon Sep 17 00:00:00 2001 From: Marco Hladik Date: Mon, 1 Jan 2018 12:20:51 -0800 Subject: [PATCH] Fixed the crouch-stay bug on a new round trigger, tried fixing crouching-jumping a little so you can't hover across the map --- Source/Client/Draw.c | 3 +-- Source/Server/Player.c | 13 ++++++++----- Source/Server/Spawn.c | 1 + freecs/csprogs.dat | Bin 196762 -> 196762 bytes freecs/progs.dat | Bin 190642 -> 190730 bytes 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Source/Client/Draw.c b/Source/Client/Draw.c index 087136a6..f3bb0619 100755 --- a/Source/Client/Draw.c +++ b/Source/Client/Draw.c @@ -157,8 +157,7 @@ void CSQC_CalcViewport( int s, float fWinWidth, float fWinHeight ) { //as a general rule, you won't notice unless there's some big drawfills. switch ( numclientseats ) { case 3: - if (!s) - { + if ( !s ) { case 2: vVideoResolution = [ fWinWidth, fWinHeight * 0.5 ]; vVideoMins = [ 0, ( s & 1 ) * vVideoResolution_y ]; diff --git a/Source/Server/Player.c b/Source/Server/Player.c index 1edc9291..91eaa649 100755 --- a/Source/Server/Player.c +++ b/Source/Server/Player.c @@ -128,6 +128,10 @@ void Player_Death( int iHitBody ) { } } + if ( self.flags & FL_CROUCHING ) { + self.flags -= FL_CROUCHING; + self.maxspeed = Player_GetMaxSpeed( 0 ); + } Spawn_MakeSpectator(); self.classname = "player"; @@ -205,11 +209,11 @@ void Player_CrouchDown( void ) { if ( !( self.flags & FL_CROUCHING ) ) { setsize( self, VEC_CHULL_MIN, VEC_CHULL_MAX ); + setorigin( self, self.origin - '0 0 18' ); self.flags = self.flags | FL_CROUCHING; self.view_ofs = VEC_PLAYER_CVIEWPOS; - self.velocity_z = self.velocity_z + 50; self.maxspeed = Player_GetMaxSpeed( self.weapon ); - self.iCrouchAttempt = 1; + self.iCrouchAttempt = TRUE; return; } @@ -228,9 +232,8 @@ void Player_CrouchUp( void ) { if ( ( self.flags & FL_CROUCHING ) && ( Player_CrouchCheck( self ) ) ) { setsize( self, VEC_HULL_MIN, VEC_HULL_MAX ); - - setorigin( self, self.origin + '0 0 18'); - self.velocity_z = self.velocity_z + 16; + setorigin( self, self.origin + '0 0 18' ); + self.velocity_z = self.velocity_z + 25; self.view_ofs = VEC_PLAYER_VIEWPOS; self.flags = ( self.flags - FL_CROUCHING ); self.iCrouchAttempt = FALSE; diff --git a/Source/Server/Spawn.c b/Source/Server/Spawn.c index 544b9d85..92ec6a42 100755 --- a/Source/Server/Spawn.c +++ b/Source/Server/Spawn.c @@ -154,6 +154,7 @@ void Spawn_RespawnClient( float fTeam ) { self.view_ofs = VEC_PLAYER_VIEWPOS; self.velocity = '0 0 0'; + self.maxspeed = Player_GetMaxSpeed( self.weapon ); self.frame = 1; // Idle frame self.fBombProgress = 0; diff --git a/freecs/csprogs.dat b/freecs/csprogs.dat index 626dc5897fff64e05e9625a22b5fbab3cbcfabb5..5f66dea5bf7c55c8d86ed010d9a83e43e2770508 100755 GIT binary patch delta 28 icmbQ$$TO>vXF@K!g}#9y5H*&xmN2%KFikCCRs#Tr1qjCg delta 28 jcmbQ$$TO>vXF@K!xxS&1zL7;^NoxsXYYEfT5@t03hKdN$ diff --git a/freecs/progs.dat b/freecs/progs.dat index 8cf34a4a72df6708d46ad5c43af3111fd2824a5e..0402c8a91e80083ca0731d6f4b5cbcd7475630a7 100755 GIT binary patch delta 454 zcmXxh&nrYx6bJBgF3qI3pgcWOXv9QWn2`mdC{rjF%&^gzNt%YRk$*rIlo%G@e?Uq| zqx6*QDAEYeuPF;;VPP{hvyhZ~irc+?PUn2j>K@z}%eO|*O+#>UaXJ@?rfVVF;<8AT> zS{5!X`_kgr(Z>6eS?AJgRa8OS6fp*nK-tm+hrw-R{J@Y)<;6YWxY50T;dWAfu z1q(@`4~Ies8DRuJ!YHbTG^+>-CrAk2SP>eK62@^aT;NN%LS;zfpi6kbgz$(ZA&xx_ z+QX^@FCk?jDpg@vnY;r}SSNPTA?zb2q_8NQVOw}cTKGg($lGPZ3hS=ihyE4%1y*`} AiU0rr delta 410 zcmXxgPbh}1mflF_Ahy(YaFHp>%AfaLlva{bl9VY2Cl_(S!8bKU zExGw~@M=X#YT6E7+i?y%C?s)l_InPVdip%|{hpq!XXDZ}20cX7;U~(Jh<;m%q6tOg z22t)@QH+VKPo^J5w4-}I-FeF@TGV;J&i*I8I~eptxZZbG5Ry^TwhG-~y3aMEa@04>1{>a4HK0hlE| z+g%4*jp|Dq*e$$_(KfuCuk^lez