Commit 2e5741cc authored by Dino Bollinger's avatar Dino Bollinger Committed by Richard Gobeille
Browse files

Duke3D: Add global gameflag "DUKE3D_GLOBAL_ADDITIVE_HITRADIUS"

If this flag is set, all radius damage sources will apply cumulative
damage instead of overriding the existing accumulated damage.

Equivalent to applying PROJECTILE_HITRADIUS_ADDITIVE to all explosions.
parent 3c4a8bb4
......@@ -200,7 +200,8 @@ void A_RadiusDamageObject_Internal(int const spriteNum, int const otherSprite, i
++dmgFuzz;
int dmgTotal = dmgBase + (krand()%(dmgFuzz-dmgBase));
if (SpriteProjectile[spriteNum].workslike & PROJECTILE_HITRADIUS_ADDITIVE)
if ((globalflags & DUKE3D_GLOBAL_ADDITIVE_HITRADIUS)
| (SpriteProjectile[spriteNum].workslike & PROJECTILE_HITRADIUS_ADDITIVE))
dmgActor.htextra += dmgTotal;
else
dmgActor.htextra = dmgTotal;
......
......@@ -60,6 +60,7 @@ enum DUKE3D_GLOBALFLAGS {
DUKE3D_NO_WIDESCREEN_PINNING = 1<<0,
DUKE3D_NO_HARDCODED_FOGPALS = 1<<1,
DUKE3D_NO_PALETTE_CHANGES = 1<<2,
DUKE3D_GLOBAL_ADDITIVE_HITRADIUS = 1<<3,
};
G_EXTERN DukeStatus_t sbar;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment