1068{
1070 float t;
1071 for (t = 0, o = e.owner; o.owner && t < 16; o = o.owner, ++t);
1073 o = e.fire_owner;
1074
1077 float d = e.fire_damagepersec * t;
1078
1079 float hi = e.fire_owner.hitsound_damage_dealt;
1080 float ty = e.fire_owner.typehitsound;
1081 Damage(e, e, e.fire_owner, d, e.fire_deathtype,
DMG_NOWEP, e.origin,
'0 0 0');
1082 if (e.fire_hitsound && e.fire_owner)
1083 {
1084 e.fire_owner.hitsound_damage_dealt = hi;
1085 e.fire_owner.typehitsound = ty;
1086 }
1087 e.fire_hitsound = true;
1088
1091 {
1092 if (!IS_DEAD(it) && it.takedamage && !IS_INDEPENDENT_PLAYER(it)
1093 && boxesoverlap(e.absmin - '1 1 1', e.absmax + '1 1 1', it.absmin, it.absmax))
1094 {
1095 t = autocvar_g_balance_firetransfer_time * (fireendtime - time);
1096 d = autocvar_g_balance_firetransfer_damage * e.fire_damagepersec * t;
1097 Fire_AddDamage(it, o, d, t, DEATH_FIRE.m_id);
1098 }
1099 });
1100}
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)