diff options
author | Mikko Tiusanen <ams@daug.net> | 2015-05-31 16:35:03 +0300 |
---|---|---|
committer | Mikko Tiusanen <ams@daug.net> | 2015-05-31 16:35:03 +0300 |
commit | 528aaa3c017e812638cb7388b378a1a172426265 (patch) | |
tree | 6c31213c510af62227a3f30924c503257e3aebb8 /src | |
parent | 05e4e1479b4a57d781572afa4346a6ef960043de (diff) |
Minor gameplay fixes.
Hummel can no longer fly if there's no overmind around.
Human radar update rate back to 1Hz.
Evolving from basi to adv basi retains the reload timer.
Diffstat (limited to 'src')
-rw-r--r-- | src/cgame/cg_scanner.c | 2 | ||||
-rw-r--r-- | src/game/g_active.c | 2 | ||||
-rw-r--r-- | src/game/g_cmds.c | 8 |
3 files changed, 9 insertions, 3 deletions
diff --git a/src/cgame/cg_scanner.c b/src/cgame/cg_scanner.c index 43348b3..6659b98 100644 --- a/src/cgame/cg_scanner.c +++ b/src/cgame/cg_scanner.c @@ -25,7 +25,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA static entityPos_t entityPositions; -#define HUMAN_SCANNER_UPDATE_PERIOD 25 +#define HUMAN_SCANNER_UPDATE_PERIOD 1000 /* ============= diff --git a/src/game/g_active.c b/src/game/g_active.c index 1f0d121..42a2773 100644 --- a/src/game/g_active.c +++ b/src/game/g_active.c @@ -1751,7 +1751,7 @@ void ClientThink_real( gentity_t *ent ) client->ps.pm_type = PM_GRABBED; else if( BG_InventoryContainsUpgrade( UP_JETPACK, client->ps.stats ) && BG_UpgradeIsActive( UP_JETPACK, client->ps.stats ) ) client->ps.pm_type = PM_JETPACK; - else if( client->ps.weapon == WP_ALEVEL5 ) + else if( client->ps.weapon == WP_ALEVEL5 && G_Overmind() ) //hummel fly client->ps.pm_type = PM_HUMMEL; else diff --git a/src/game/g_cmds.c b/src/game/g_cmds.c index 55a08ee..f75241c 100644 --- a/src/game/g_cmds.c +++ b/src/game/g_cmds.c @@ -1665,7 +1665,7 @@ void Cmd_Class_f( gentity_t *ent ) vec3_t mins, maxs; int num; gentity_t *other; - int oldBoostTime = -1; + int oldBoostTime = -1,oldTimeStamp; vec3_t oldVel; clientNum = ent->client - level.clients; @@ -1835,6 +1835,7 @@ void Cmd_Class_f( gentity_t *ent ) if( ent->client->ps.stats[ STAT_STATE ] & SS_BOOSTED ) oldBoostTime = ent->client->boostedTime; + oldTimeStamp = ( ent->client->ps.weapon == WP_ALEVEL1 ) ? ent->timestamp : 0; ClientSpawn( ent, ent, ent->s.pos.trBase, ent->s.apos.trBase ); @@ -1844,6 +1845,11 @@ void Cmd_Class_f( gentity_t *ent ) ent->client->boostedTime = oldBoostTime; ent->client->ps.stats[ STAT_STATE ] |= SS_BOOSTED; } + if( newClass == PCL_ALIEN_LEVEL1_UPG ) + { + ent->timestamp = oldTimeStamp; + ent->client->ps.ammo = 0; + } } else G_TriggerMenuArgs( clientNum, MN_A_CANTEVOLVE, newClass ); |