Some microoptimizations.

Remove dead code.
Tweak how enemy flight distance is calculated.
Rename flight achievement to something more fitting.
This commit is contained in:
Mari the Deer 2021-03-26 01:35:32 +01:00
commit a2a59e1381
6 changed files with 11 additions and 22 deletions

View file

@ -401,6 +401,7 @@ Class SWWMFlyTracker : Thinker
{
Actor tracked, instigator;
Vector3 startpos, curpos;
double maxdist;
int gracepd;
static void Track( Actor b, Actor whomst )
@ -419,15 +420,17 @@ Class SWWMFlyTracker : Thinker
ffd.tracked = b;
ffd.instigator = whomst;
ffd.curpos = ffd.startpos = b.pos;
ffd.maxdist = 0;
}
override void Tick()
{
if ( instigator && instigator.player ) SWWMUtility.AchievementProgress('swwm_progress_flight',int(level.Vec3Diff(startpos,curpos).length()),instigator.player);
maxdist = max(maxdist,level.Vec3Diff(startpos,curpos).length());
if ( !tracked || tracked.bFLOAT || tracked.bNOGRAVITY || (tracked.waterlevel > 1) || (tracked.pos.z <= tracked.floorz) || !tracked.TestMobjZ(false) )
{
gracepd++;
if ( gracepd < 10 ) return;
if ( instigator ) SWWMUtility.AchievementProgress('swwm_progress_flight',int(maxdist),instigator.player);
Destroy();
return;
}