Fix "longest journey" achievement breaking due to movement glitches.

This commit is contained in:
Mari the Deer 2023-10-10 17:25:58 +02:00
commit adaf35eeb0
3 changed files with 6 additions and 2 deletions

View file

@ -261,6 +261,8 @@ extend Class Demolitionist
if ( vel dot vel > lagvel dot lagvel ) lagvel = lagvel*.8+vel*.2;
else lagvel = lagvel*.4+vel*.6;
double traveldist = level.Vec3Diff(oldpos,pos).length();
if ( (traveldist == double.infinity) || (traveldist == double.nan) )
traveldist = 0.; // prevent glitches from breaking stats
if ( !player.onground || bNoGravity )
{
if ( waterlevel > 1 )

View file

@ -67,6 +67,8 @@ extend class SWWMUtility
if ( developer >= 2 ) Console.Printf("AchievementProgress: achievement '"..pvar.."' not found");
return;
}
if ( pval == "NaN" ) // this can happen, yup
pval = "0";
hnd.achievementprogress.Insert(pvar,String.Format("%g",pval.ToDouble()+inc));
}
// for bitfields