float oldsolid = ent.dphitcontentsmask;
if(!IS_CLIENT(ent))
antilag = false; // no antilag for non-clients!
- if (IS_PLAYER(ent) && (ent.(weaponentity).m_weapon == WEP_RIFLE || ent.(weaponentity).m_weapon == WEP_MACHINEGUN))
+ if (IS_PLAYER(ent) && (ent.(weaponentity).m_weapon.spawnflags & WEP_FLAG_PENETRATEWALLS))
ent.dphitcontentsmask = DPCONTENTS_BODY | DPCONTENTS_CORPSE;
else
ent.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE;
if (trace_ent == CS(ent).cursor_trace_ent)
w_shotdir = normalize(CS(ent).cursor_trace_ent.origin - w_shotorg);
else
- LOG_INFO("antilag fail\n");
+ LOG_INFO("antilag fail");
}
}
}
#if 0
mspercallsum += gettime(GETTIME_HIRES);
mspercallcount += 1;
- LOG_INFO("avg: ", ftos(mspercallcount / mspercallsum), " per sec\n");
+ LOG_INFO("avg: ", ftos(mspercallcount / mspercallsum), " per sec");
#endif
proj.velocity = W_CalculateProjectileVelocity(proj.owner, proj.owner.velocity, pSpeed * dir, forceAbsolute);
float solid_penetration_left = 1;
float total_damage = 0;
- if(tracereffects & EF_RED)
+ if(max_solid_penetration >= 50)
fireBullet_trace_callback_eff = EFFECT_RIFLE;
- else if(tracereffects & EF_BLUE)
+ else if(max_solid_penetration < 50)
fireBullet_trace_callback_eff = EFFECT_RIFLE_WEAK;
else
fireBullet_trace_callback_eff = EFFECT_BULLET;