// make sure you call makevectors first (FIXME?)
void W_SetupShot_Dir_ProjectileSize_Range(entity ent, vector s_forward, vector mi, vector ma, float antilag, float recoil, string snd, float chan, float maxdamage, float range)
{
- float nudge = 1; // added to traceline target and subtracted from result
+ float nudge = 1; // added to traceline target and subtracted from result TOOD(divVerent): do we still need this? Doesn't the engine do this now for us?
float oldsolid;
vector vecs, dv;
oldsolid = ent.dphitcontentsmask;
f = ExponentialFalloff(mindist, maxdist, halflifedist, ent.railgundistance);
ffs = ExponentialFalloff(mindist, maxdist, forcehalflifedist, ent.railgundistance);
- if(accuracy_isgooddamage(self.realowner, ent))
+ if(accuracy_isgooddamage(self, ent))
totaldmg += bdamage * f;
// apply the damage
if(autocvar_g_antilag == 0 || self.cvar_cl_noantilag)
lag = 0; // only do hitscan, but no antilag
if(lag)
+ {
FOR_EACH_PLAYER(pl)
if(pl != self)
antilag_takeback(pl, time - lag);
+ FOR_EACH_MONSTER(pl)
+ antilag_takeback(pl, time - lag);
+ }
WarpZone_trace_forent = self;
}
if(lag)
+ {
FOR_EACH_PLAYER(pl)
if(pl != self)
antilag_restore(pl);
+ FOR_EACH_MONSTER(pl)
+ antilag_restore(pl);
+ }
}