if(attacker == this)
{
- // don't reset pushltime for this damage as it may be an attempt to
+ // don't reset pushltime for self damage as it may be an attempt to
// escape a lava pit or similar
//this.pushltime = 0;
this.istypefrag = 0;
if(sound_allowed(MSG_BROADCAST, attacker))
{
- if (save > 10)
+ if (save > 10 && (dh - take) > 0) // don't play armor sound if the attack is fatal
sound (this, CH_SHOTS, SND_ARMORIMPACT, VOL_BASE, ATTEN_NORM);
else if (take > 30)
sound (this, CH_SHOTS, SND_BODYIMPACT2, VOL_BASE, ATTEN_NORM);
float realdmg = damage - excess;
if (this != attacker && realdmg)
+ if (!(round_handler_IsActive() && !round_handler_IsRoundStarted()) && time >= game_starttime)
{
if (IS_PLAYER(attacker) && DIFF_TEAM(attacker, this)) {
GameRules_scoring_add(attacker, DMG, realdmg);
bool valid_damage_for_weaponstats = false;
Weapon awep = WEP_Null;
+ if (!(round_handler_IsActive() && !round_handler_IsRoundStarted()) && time >= game_starttime)
if(vbot || IS_REAL_CLIENT(this))
if(abot || IS_REAL_CLIENT(attacker))
if(attacker && this != attacker)