const int HITTYPE_BOUNCE = BITS(1) << 10;
const int HITTYPE_ARMORPIERCE = BITS(1) << 11;
const int HITTYPE_SOUND = BITS(1) << 12;
-const int DEATH_HITTYPEMASK = HITTYPE_SECONDARY | HITTYPE_SPLASH | HITTYPE_BOUNCE | HITTYPE_ARMORPIERCE | HITTYPE_SOUND;
+const int HITTYPE_TERTIARY = BITS(1) << 13;
+const int DEATH_HITTYPEMASK = HITTYPE_SECONDARY | HITTYPE_SPLASH | HITTYPE_BOUNCE | HITTYPE_ARMORPIERCE | HITTYPE_SOUND | HITTYPE_TERTIARY;
// normal deaths begin
-const int DT_FIRST = BIT(13);
+const int DT_FIRST = BIT(14);
#define DEATH_ISSPECIAL(t) (t >= DT_FIRST)
#define DEATH_IS(t, dt) (DEATH_ISSPECIAL(t) && (REGISTRY_GET(Deathtypes, t - DT_FIRST)) == dt)
float edgedamage = this.dmg_edge * PHYS_INPUT_TIMELENGTH;
RadiusDamage(this, this.realowner, damage, edgedamage, this.dmg_radius, NULL, NULL, 0, this.projectiledeathtype, this.weaponentity_fld, NULL);
- this.projectiledeathtype |= HITTYPE_SPLASH; // ensure it doesn't spam its effect
+ this.projectiledeathtype |= HITTYPE_TERTIARY; // ensure it doesn't spam its effect
}
void W_Electro_ExplodeCombo(entity this)
total_damage_to_creatures = 0;
- if(deathtype != (WEP_HOOK.m_id | HITTYPE_SECONDARY | HITTYPE_BOUNCE) && deathtype != (WEP_ELECTRO.m_id | HITTYPE_BOUNCE | HITTYPE_SPLASH)) // only send damage over time bombs once
+ if(deathtype != (WEP_HOOK.m_id | HITTYPE_SECONDARY | HITTYPE_BOUNCE) && deathtype != (WEP_ELECTRO.m_id | HITTYPE_BOUNCE | HITTYPE_TERTIARY)) // only send damage over time bombs once
if(!(deathtype & HITTYPE_SOUND)) // do not send radial sound damage (bandwidth hog)
{
force = inflictorvelocity;