diff options
author | Tim Angus <tim@ngus.net> | 2001-08-08 09:45:48 +0000 |
---|---|---|
committer | Tim Angus <tim@ngus.net> | 2001-08-08 09:45:48 +0000 |
commit | 45f8126657534de77afc278a21e1bcfbb2211595 (patch) | |
tree | eeb5825260ee02dfd517e2902fa657ddc5df4483 /src/game/bg_pmove.c | |
parent | 303ac7f1b88376c40a0462a644519e390d0e2dee (diff) |
Enabled strafe transitions
Diffstat (limited to 'src/game/bg_pmove.c')
-rw-r--r-- | src/game/bg_pmove.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/game/bg_pmove.c b/src/game/bg_pmove.c index ea772267..6f9e89a8 100644 --- a/src/game/bg_pmove.c +++ b/src/game/bg_pmove.c @@ -1334,10 +1334,19 @@ static void PM_GroundClimbTrace( void ) CrossProduct( surfNormal, right, movedir ); VectorNormalize( movedir ); - //TA: FIXME: this could be improved to include strafing if( pm->cmd.forwardmove < 0 ) VectorNegate( movedir, movedir ); + //allow strafe transitions + if( pm->cmd.rightmove ) + { + VectorCopy( right, movedir ); + + if( pm->cmd.rightmove < 0 ) + VectorNegate( movedir, movedir ); + } + + for(i = 0; i <= 3; i++) { @@ -1361,8 +1370,8 @@ static void PM_GroundClimbTrace( void ) // I would like a better way if one exists... if( pml.groundPlane != qfalse ) { - VectorMA( pm->ps->origin, -16, surfNormal, point ); - VectorMA( point, -16, movedir, point ); + VectorMA( pm->ps->origin, -16.0f, surfNormal, point ); + VectorMA( point, -16.0f, movedir, point ); pm->trace (&trace, pm->ps->origin, pm->mins, pm->maxs, point, pm->ps->clientNum, pm->tracemask); } break; |