1076{
1078 float t;
1079 for (t = 0, o = e.owner; o.owner && t < 16; o = o.owner, ++t);
1081 o = e.fire_owner;
1082
1085 float d = e.fire_damagepersec * t;
1086
1087 float hi = e.fire_owner.hitsound_damage_dealt;
1088 float ty = e.fire_owner.typehitsound;
1089 Damage(e, e, e.fire_owner, d, e.fire_deathtype,
DMG_NOWEP, e.origin,
'0 0 0');
1090 if (e.fire_hitsound && e.fire_owner)
1091 {
1092 e.fire_owner.hitsound_damage_dealt = hi;
1093 e.fire_owner.typehitsound = ty;
1094 }
1095 e.fire_hitsound = true;
1096
1099 {
1100 if (!IS_DEAD(it) && it.takedamage && !IS_INDEPENDENT_PLAYER(it)
1101 && boxesoverlap(e.absmin - '1 1 1', e.absmax + '1 1 1', it.absmin, it.absmax))
1102 {
1103 t = autocvar_g_balance_firetransfer_time * (fireendtime - time);
1104 d = autocvar_g_balance_firetransfer_damage * e.fire_damagepersec * t;
1105 Fire_AddDamage(it, o, d, t, DEATH_FIRE.m_id);
1106 }
1107 });
1108}
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
#define IS_NOT_A_CLIENT(s)
void Damage(entity targ, entity inflictor, entity attacker, float damage, int deathtype,.entity weaponentity, vector hitloc, vector force)
IntrusiveList g_damagedbycontents
#define IL_EACH(this, cond, body)
#define IS_INDEPENDENT_PLAYER(e)
float StatusEffects_gettime(StatusEffect this, entity actor)
bool StatusEffects_active(StatusEffect this, entity actor)