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 | |
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.
-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 ); |