diff options
author | Petr Pudlak <petr.mvd@gmail.com> | 2014-09-20 18:54:42 +0200 |
---|---|---|
committer | Petr Pudlak <petr.mvd@gmail.com> | 2014-09-20 19:54:58 +0200 |
commit | 0238f457f4200a92e99e3be0a61a9870ea8ae560 (patch) | |
tree | 2c52784f73f3cddbc4de3dcb134b8409ec458ae5 /src/game/g_combat.c | |
parent | 43ea36ac9bea52cd058c81a8697878c508a0eb4b (diff) |
Add a separate mode of death for no-BP building suicides
Diffstat (limited to 'src/game/g_combat.c')
-rw-r--r-- | src/game/g_combat.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/game/g_combat.c b/src/game/g_combat.c index 073c00c..ada2f9c 100644 --- a/src/game/g_combat.c +++ b/src/game/g_combat.c @@ -143,7 +143,8 @@ char *modNames[ ] = "MOD_SLAP", "MOD_DECONSTRUCT", "MOD_REPLACE", - "MOD_NOCREEP", + "MOD_NOCREEP", + "MOD_NOBP", "MOD_ABOMB" }; @@ -1353,7 +1354,7 @@ void G_Damage( gentity_t *targ, gentity_t *inflictor, gentity_t *attacker, if( targ->s.eType == ET_BUILDABLE && attacker->client && mod != MOD_DECONSTRUCT && mod != MOD_SUICIDE && - mod != MOD_REPLACE && mod != MOD_NOCREEP ) + mod != MOD_REPLACE && mod != MOD_NOCREEP && mod != MOD_NOBP ) { if( targ->buildableTeam == attacker->client->pers.teamSelection && !g_friendlyBuildableFire.integer ) @@ -1781,6 +1782,9 @@ void G_LogDestruction( gentity_t *self, gentity_t *actor, int mod ) case MOD_NOCREEP: fate = ( actor->client ) ? BF_UNPOWER : BF_AUTO; break; + case MOD_NOBP: + fate = BF_UNPOWER; + break; default: if( actor->client ) { @@ -1813,7 +1817,8 @@ void G_LogDestruction( gentity_t *self, gentity_t *actor, int mod ) // No-power deaths for humans come after some minutes and it's confusing // when the messages appear attributed to the deconner. Just don't print them. - if( mod == MOD_NOCREEP && actor->client && + if( ( mod == MOD_NOCREEP && mod == MOD_NOBP ) && + actor->client && actor->client->pers.teamSelection == TEAM_HUMANS ) return; |