#include "../common/effects/qc/all.qh"
#include "../common/mutators/mutator/waypoints/waypointsprites.qh"
#include "../common/triggers/include.qh"
+#include "../common/wepent.qh"
#include "weapons/weaponstats.qh"
clone.iscreature = this.iscreature;
clone.teleportable = this.teleportable;
clone.damagedbycontents = this.damagedbycontents;
+ if(clone.damagedbycontents)
+ IL_PUSH(g_damagedbycontents, clone);
clone.angles = this.angles;
clone.v_angle = this.v_angle;
clone.avelocity = this.avelocity;
this.alpha = -1;
this.solid = SOLID_NOT; // restore later
this.takedamage = DAMAGE_NO; // restore later
+ if(this.damagedbycontents)
+ IL_REMOVE(g_damagedbycontents, this);
this.damagedbycontents = false;
}
}
damage /= sqrt(bound(1.0, attacker.cvar_cl_handicap, 100.0));
}
+ if (time < this.spawnshieldtime && autocvar_g_spawnshield_blockdamage < 1)
+ damage *= 1 - max(0, autocvar_g_spawnshield_blockdamage);
+
if(DEATH_ISWEAPON(deathtype, WEP_TUBA))
{
// tuba causes blood to come out of the ears
else
Violence_GibSplash_At(hitloc, force, 2, bound(0, damage, 200) / 16, this, attacker);
-
v = healtharmor_applydamage(this.armorvalue, autocvar_g_balance_armor_blockpercent, deathtype, damage);
take = v.x;
save = v.y;
this.istypefrag = 0;
}
- if (time < this.spawnshieldtime && autocvar_g_spawnshield_blockdamage < 1)
- {
- vector v = healtharmor_applydamage(this.armorvalue, max(0, autocvar_g_spawnshield_blockdamage), deathtype, damage);
- take = v.x;
- save = v.y;
- }
-
MUTATOR_CALLHOOK(PlayerDamage_SplitHealthArmor, inflictor, attacker, this, force, take, save, deathtype, damage);
take = bound(0, M_ARGV(4, float), this.health);
save = bound(0, M_ARGV(5, float), this.armorvalue);
{
WeaponStats_LogDamage(awep.m_id, abot, this.(weaponentity).m_weapon.m_id, vbot, dh + da);
}
- if (dh + da)
+ if (damage)
{
- MUTATOR_CALLHOOK(PlayerDamaged, attacker, this, dh, da, hitloc, deathtype);
+ MUTATOR_CALLHOOK(PlayerDamaged, attacker, this, dh, da, hitloc, deathtype, damage);
}
if (this.health < 1)
Weapon wep = this.(weaponentity).m_weapon;
for(int slot = 0; slot < MAX_WEAPONSLOTS; ++slot)
{
- .entity wepent = weaponentities[slot];
- wep.wr_playerdeath(wep, this, wepent);
+ .entity went = weaponentities[slot];
+ wep.wr_playerdeath(wep, this, went);
}
RemoveGrapplingHooks(this);
// throw a weapon
for(int slot = 0; slot < MAX_WEAPONSLOTS; ++slot)
{
- .entity wepent = weaponentities[slot];
- SpawnThrownWeapon(this, this.origin + (this.mins + this.maxs) * 0.5, this.(wepent).m_switchweapon.m_id, wepent);
+ .entity went = weaponentities[slot];
+ SpawnThrownWeapon(this, this.origin + (this.mins + this.maxs) * 0.5, this.(went).m_switchweapon.m_id, went);
}
// become fully visible