From 3b711167fd0846f3411d94339bc30eddc1e1e995 Mon Sep 17 00:00:00 2001 From: IronClawTrem Date: Wed, 7 Aug 2019 20:45:49 +0100 Subject: preserve boost time when evolving --- src/game/g_cmds.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/game') diff --git a/src/game/g_cmds.c b/src/game/g_cmds.c index cffe9dc..6722fad 100644 --- a/src/game/g_cmds.c +++ b/src/game/g_cmds.c @@ -2704,7 +2704,7 @@ void Cmd_Class_f( gentity_t *ent ) int num; gentity_t *other; qboolean humanNear = qfalse; - + int oldBoostTime = -1; clientNum = ent->client - level.clients; trap_Argv( 1, s, sizeof( s ) ); @@ -2892,7 +2892,14 @@ void Cmd_Class_f( gentity_t *ent ) ent->client->pers.classSelection = newClass; ClientUserinfoChanged( clientNum, qfalse ); VectorCopy( infestOrigin, ent->s.pos.trBase ); + if( ent->client->ps.stats[ STAT_STATE ] & SS_BOOSTED ) + oldBoostTime = ent->client->lastBoostedTime; ClientSpawn( ent, ent, ent->s.pos.trBase, ent->s.apos.trBase ); + if( oldBoostTime > 0 ) + { + ent->client->lastBoostedTime = oldBoostTime; + ent->client->ps.stats[ STAT_STATE ] |= SS_BOOSTED; + } return; } else -- cgit