Armageddon & Sparkles confusion is no more, DMG_NUKE exists to sort that out now

This commit is contained in:
Monster Iestyn 2016-04-07 22:02:52 +01:00
parent 249d25a316
commit d31fd95d75
3 changed files with 6 additions and 5 deletions

View File

@ -1586,7 +1586,7 @@ static void P_HitDeathMessages(player_t *player, mobj_t *inflictor, mobj_t *sour
else switch (inflictor->type)
{
case MT_PLAYER:
if ((inflictor->player->powers[pw_shield] & SH_NOSTACK) == SH_BOMB)
if (damagetype == DMG_NUKE) // SH_BOMB, armageddon shield
str = M_GetText("%s%s's armageddon blast %s %s.\n");
else if (inflictor->player->powers[pw_invulnerability])
str = M_GetText("%s%s's invincibility aura %s %s.\n");

View File

@ -376,7 +376,8 @@ typedef struct BasicFF_s
#define DMG_FIRE 2
#define DMG_ELECTRIC 3
#define DMG_SPIKE 4
//#define DMG_SPECIALSTAGE 5
#define DMG_NUKE 5 // bomb shield
//#define DMG_SPECIALSTAGE 6
//// Death types - cannot be combined with damage types
#define DMG_INSTAKILL 0x80
#define DMG_DROWNED 0x80+1

View File

@ -7440,12 +7440,12 @@ void P_NukeEnemies(mobj_t *inflictor, mobj_t *source, fixed_t radius)
mo->flags |= MF_SPECIAL|MF_SHOOTABLE;
if (mo->type == MT_EGGGUARD && mo->tracer) //nuke Egg Guard's shield!
P_KillMobj(mo->tracer, inflictor, source, 0);
P_KillMobj(mo->tracer, inflictor, source, DMG_NUKE);
if (mo->flags & MF_BOSS || mo->type == MT_PLAYER) //don't OHKO bosses nor players!
P_DamageMobj(mo, inflictor, source, 1, 0);
P_DamageMobj(mo, inflictor, source, 1, DMG_NUKE);
else
P_DamageMobj(mo, inflictor, source, 1000, 0);
P_DamageMobj(mo, inflictor, source, 1000, DMG_NUKE);
}
}