- Added ICESHATTER flag.

- Any inflictor with this flag can break ice corpses
This commit is contained in:
MajorCooke 2015-10-11 09:10:33 -05:00
parent 8e2810865b
commit 380b5c1eb7
3 changed files with 4 additions and 5 deletions

View File

@ -373,6 +373,7 @@ enum ActorFlag7
MF7_NODECAL = 0x00040000, // [ZK] Forces puff to have no impact decal MF7_NODECAL = 0x00040000, // [ZK] Forces puff to have no impact decal
MF7_FORCEDECAL = 0x00080000, // [ZK] Forces puff's decal to override the weapon's. MF7_FORCEDECAL = 0x00080000, // [ZK] Forces puff's decal to override the weapon's.
MF7_LAXTELEFRAGDMG = 0x00100000, // [MC] Telefrag damage can be reduced. MF7_LAXTELEFRAGDMG = 0x00100000, // [MC] Telefrag damage can be reduced.
MF7_ICESHATTER = 0x00200000, // [MC] Shatters ice corpses regardless of damagetype.
}; };
// --- mobj.renderflags --- // --- mobj.renderflags ---

View File

@ -970,7 +970,7 @@ int P_DamageMobj (AActor *target, AActor *inflictor, AActor *source, int damage,
} }
if (target->health <= 0) if (target->health <= 0)
{ {
if (inflictor && mod == NAME_Ice) if (inflictor && mod == NAME_Ice && !(inflictor->flags7 & MF7_ICESHATTER))
{ {
return -1; return -1;
} }

View File

@ -253,12 +253,10 @@ static FFlagDef ActorFlagDefs[]=
DEFINE_FLAG(MF7, HITTARGET, AActor, flags7), DEFINE_FLAG(MF7, HITTARGET, AActor, flags7),
DEFINE_FLAG(MF7, HITMASTER, AActor, flags7), DEFINE_FLAG(MF7, HITMASTER, AActor, flags7),
DEFINE_FLAG(MF7, HITTRACER, AActor, flags7), DEFINE_FLAG(MF7, HITTRACER, AActor, flags7),
DEFINE_FLAG(MF7, NODECAL, AActor, flags7), // [ZK] Decal flags
// [ZK] Decal flags
DEFINE_FLAG(MF7, NODECAL, AActor, flags7),
DEFINE_FLAG(MF7, FORCEDECAL, AActor, flags7), DEFINE_FLAG(MF7, FORCEDECAL, AActor, flags7),
DEFINE_FLAG(MF7, LAXTELEFRAGDMG, AActor, flags7), DEFINE_FLAG(MF7, LAXTELEFRAGDMG, AActor, flags7),
DEFINE_FLAG(MF7, ICESHATTER, AActor, flags7),
// Effect flags // Effect flags
DEFINE_FLAG(FX, VISIBILITYPULSE, AActor, effects), DEFINE_FLAG(FX, VISIBILITYPULSE, AActor, effects),