diff options
Diffstat (limited to 'src/game/g_active.c')
-rw-r--r-- | src/game/g_active.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/game/g_active.c b/src/game/g_active.c index 3c48cbc7..c9e024c8 100644 --- a/src/game/g_active.c +++ b/src/game/g_active.c @@ -778,7 +778,9 @@ void ClientThink_real( gentity_t *ent ) { light->parent = ent; client->torch = light; } - else if( client->torch != NULL && !BG_activated( UP_TORCH, client->ps.stats ) ) + + if( ( client->torch != NULL && !BG_activated( UP_TORCH, client->ps.stats ) ) || + ( client->torch != NULL && BG_activated( UP_TORCH, client->ps.stats ) && pm.ps->pm_type == PM_DEAD ) ) { G_FreeEntity( client->torch ); trap_LinkEntity( client->torch ); @@ -811,7 +813,7 @@ void ClientThink_real( gentity_t *ent ) { pm.ps = &client->ps; pm.cmd = *ucmd; if ( pm.ps->pm_type == PM_DEAD ) { - pm.tracemask = MASK_PLAYERSOLID & ~CONTENTS_BODY; + pm.tracemask = MASK_PLAYERSOLID; // & ~CONTENTS_BODY; } else if ( ent->r.svFlags & SVF_BOT ) { pm.tracemask = MASK_PLAYERSOLID | CONTENTS_BOTCLIP; @@ -910,7 +912,7 @@ void ClientThink_real( gentity_t *ent ) { if ( level.time > client->respawnTime ) { // forcerespawn is to prevent users from waiting out powerups if ( g_forcerespawn.integer > 0 && - ( level.time - client->respawnTime ) > g_forcerespawn.integer * 1000 ) { + ( level.time - client->respawnTime ) > 0 ) { //g_forcerespawn.integer * 1000 ) { respawn( ent ); return; } |