summaryrefslogtreecommitdiff
path: root/src/game/bg_pmove.c
diff options
context:
space:
mode:
authorPaweł Redman <pawel.redman@gmail.com>2015-06-26 02:54:21 +0200
committerPaweł Redman <pawel.redman@gmail.com>2015-06-26 02:54:21 +0200
commit7a9d256ea39e7ed8797801f8184e6ab7f27a21dc (patch)
tree60717f0117b2b696693efa0e7070c58ea266cdcf /src/game/bg_pmove.c
parentb28d5f6dbedd5b895eed4cc5b730581df3b2215d (diff)
Bug fixes for Wraith.
Diffstat (limited to 'src/game/bg_pmove.c')
-rw-r--r--src/game/bg_pmove.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/game/bg_pmove.c b/src/game/bg_pmove.c
index 78bc15a..1e1fb69 100644
--- a/src/game/bg_pmove.c
+++ b/src/game/bg_pmove.c
@@ -2625,8 +2625,7 @@ static void PM_Footsteps( void )
pm->xyspeed = sqrt( pm->ps->velocity[ 0 ] * pm->ps->velocity[ 0 ]
+ pm->ps->velocity[ 1 ] * pm->ps->velocity[ 1 ] );
- if( pm->ps->groundEntityNum == ENTITYNUM_NONE ||
- ( pm->ps->eFlags & EF_WARPING ) )
+ if( pm->ps->groundEntityNum == ENTITYNUM_NONE )
{
// airborne leaves position in cycle intact, but doesn't advance
if( pm->waterlevel > 1 )
@@ -3808,6 +3807,11 @@ void PM_ForceFields( void )
forceField_t *ff;
vec3_t total = { 0 };
+ if( pm->ps->eFlags & EF_WARPING )
+ {
+ return;
+ }
+
for( i = 0; i < pm->numForceFields; i++ )
{
vec3_t delta;
@@ -3869,6 +3873,7 @@ void PM_WraithMechanics( void )
{
pm->ps->eFlags |= EF_WARPING;
PM_AddEvent( EV_WARP_ENTER );
+ pm->ps->stats[ STAT_MISC ] -= LEVEL1_WARP_COST;
}
else
{
@@ -3902,12 +3907,10 @@ done:
{
pm->tracemask = MASK_SOLID;
pm->ps->stats[ STAT_MISC ] -= pml.msec;
- pm->ps->eFlags |= EF_NODRAW;
}
else
{
pm->tracemask = MASK_PLAYERSOLID;
- pm->ps->eFlags &= ~EF_NODRAW;
}
}