diff --git a/docs/rh-log.txt b/docs/rh-log.txt index 8a4ada3072..5ed9c4447e 100644 --- a/docs/rh-log.txt +++ b/docs/rh-log.txt @@ -1,3 +1,7 @@ +December 24, 2006 (Changes by Graf Zahl) +- Added new flag MF5_NOBLOODDECALS that prevents bleeding actors from spawning + blood decals. + December 23, 2006 (Changes by Graf Zahl) - Fixed: The Cacodemon doesn't have a melee attack defined as I mistakenly assumed when writing its DECORATE code. diff --git a/src/actor.h b/src/actor.h index cf04852038..057a53adcf 100644 --- a/src/actor.h +++ b/src/actor.h @@ -288,6 +288,7 @@ enum MF5_OLDRADIUSDMG = 0x00000200, // Use old radius damage code (for barrels and boss brain) MF5_DEHEXPLOSION = 0x00000400, // Use the DEHACKED explosion options when this projectile explodes MF5_PIERCEARMOR = 0x00000800, // Armor doesn't protect against damage from this actor + MF5_NOBLOODDECALS = 0x00001000, // Actor bleeds but doesn't spawn blood decals // --- mobj.renderflags --- diff --git a/src/p_map.cpp b/src/p_map.cpp index f0e0d05fa2..7cbdf4973f 100644 --- a/src/p_map.cpp +++ b/src/p_map.cpp @@ -2932,6 +2932,7 @@ void P_TraceBleed (int damage, fixed_t x, fixed_t y, fixed_t z, AActor *actor, a int noise; if ((actor->flags & MF_NOBLOOD) || + (actor->flags5 & MF5_NOBLOODDECALS) || (actor->flags2 & (MF2_INVULNERABLE|MF2_DORMANT)) || (actor->player && actor->player->cheats & CF_GODMODE)) { diff --git a/src/thingdef.cpp b/src/thingdef.cpp index 7759c7be88..da1cd764b9 100644 --- a/src/thingdef.cpp +++ b/src/thingdef.cpp @@ -226,6 +226,7 @@ static flagdef ActorFlags[]= DEFINE_FLAG(MF5, OLDRADIUSDMG, AActor, flags5), DEFINE_FLAG(MF5, DEHEXPLOSION, AActor, flags5), DEFINE_FLAG(MF5, PIERCEARMOR, AActor, flags5), + DEFINE_FLAG(MF5, NOBLOODDECALS, AActor, flags5), // Effect flags DEFINE_FLAG(FX, VISIBILITYPULSE, AActor, effects),