diff options
-rw-r--r-- | src/cgame/cg_event.c | 3 | ||||
-rw-r--r-- | src/cgame/cg_players.c | 1 | ||||
-rw-r--r-- | src/game/bg_local.h | 2 | ||||
-rw-r--r-- | src/game/bg_pmove.c | 6 | ||||
-rw-r--r-- | src/game/g_client.c | 4 |
5 files changed, 10 insertions, 6 deletions
diff --git a/src/cgame/cg_event.c b/src/cgame/cg_event.c index b9f4f714..ead2e602 100644 --- a/src/cgame/cg_event.c +++ b/src/cgame/cg_event.c @@ -860,6 +860,9 @@ void CG_EntityEvent( centity_t *cent, vec3_t position ) CG_SetParticleSystemCent( ps, cent ); CG_AttachParticleSystemToCent( ps ); } + + if( es->number == cg.clientNum ) + cg.spawnTime = cg.time; break; case EV_ALIEN_ACIDTUBE: diff --git a/src/cgame/cg_players.c b/src/cgame/cg_players.c index 037a71a2..60d76253 100644 --- a/src/cgame/cg_players.c +++ b/src/cgame/cg_players.c @@ -2196,6 +2196,7 @@ void CG_Corpse( centity_t *cent ) VectorCopy( origin, legs.lightingOrigin ); legs.shadowPlane = shadowPlane; legs.renderfx = renderfx; + legs.origin[ 2 ] += BG_FindZOffsetForClass( es->clientNum ); VectorCopy( legs.origin, legs.oldorigin ); // don't positionally lerp at all //rescale the model diff --git a/src/game/bg_local.h b/src/game/bg_local.h index fc5df698..88dfe5be 100644 --- a/src/game/bg_local.h +++ b/src/game/bg_local.h @@ -25,7 +25,7 @@ #define OVERCLIP 1.001f -#define FALLING_THRESHOLD -1000.0f //what vertical speed to start falling sound at +#define FALLING_THRESHOLD -900.0f //what vertical speed to start falling sound at // all of the locals will be zeroed before each diff --git a/src/game/bg_pmove.c b/src/game/bg_pmove.c index a6b8a63b..9141f472 100644 --- a/src/game/bg_pmove.c +++ b/src/game/bg_pmove.c @@ -1667,10 +1667,10 @@ static void PM_GroundTraceMissed( void ) // if they aren't in a jumping animation and the ground is a ways away, force into it // if we didn't do the trace, the player would be backflipping down staircases VectorCopy( pm->ps->origin, point ); - point[ 2 ] -= 64; + point[ 2 ] -= 64.0f; - pm->trace( &trace, pm->ps->origin, pm->mins, pm->maxs, point, pm->ps->clientNum, pm->tracemask ); - if( trace.fraction == 1.0 ) + pm->trace( &trace, pm->ps->origin, NULL, NULL, point, pm->ps->clientNum, pm->tracemask ); + if( trace.fraction == 1.0f ) { if( pm->cmd.forwardmove >= 0 ) { diff --git a/src/game/g_client.c b/src/game/g_client.c index 29b94512..e6a2450a 100644 --- a/src/game/g_client.c +++ b/src/game/g_client.c @@ -1471,6 +1471,8 @@ void ClientSpawn( gentity_t *ent, gentity_t *spawn, vec3_t origin, vec3_t angles VectorNormalize( dir ); VectorScale( dir, UP_VEL, client->ps.velocity ); + + G_AddPredictableEvent( ent, EV_PLAYER_RESPAWN, 0 ); } else { @@ -1500,9 +1502,7 @@ void ClientSpawn( gentity_t *ent, gentity_t *spawn, vec3_t origin, vec3_t angles client->ps.pm_flags |= PMF_TIME_KNOCKBACK; client->ps.pm_time = 100; - //TA: STAT_SPAWNTIME for alien fov effects client->respawnTime = level.time; - G_AddPredictableEvent( ent, EV_PLAYER_RESPAWN, 0 ); client->inactivityTime = level.time + g_inactivity.integer * 1000; client->latched_buttons = 0; |