diff --git a/src/f_finale.c b/src/f_finale.c index 64a6503e7..a93163fcc 100644 --- a/src/f_finale.c +++ b/src/f_finale.c @@ -1407,16 +1407,14 @@ void F_GameEvaluationDrawer(void) } } - eemeralds_cur = finalecount % 360; + eemeralds_cur = (finalecount % 360)<>ANGLETOFINESHIFT) & FINEMASK; + fa = (FixedAngle(eemeralds_cur)>>ANGLETOFINESHIFT) & FINEMASK; x = (BASEVIDWIDTH<<(FRACBITS-1)) + (60*FINECOSINE(fa)); y = ((BASEVIDHEIGHT+16)<<(FRACBITS-1)) + (60*FINESINE(fa)); - eemeralds_cur += (360/7); - if (i & 1) - eemeralds_cur++; + eemeralds_cur += (360<>ANGLETOFINESHIFT) & FINEMASK; + fa = (FixedAngle(eemeralds_cur[j])>>ANGLETOFINESHIFT) & FINEMASK; x = (BASEVIDWIDTH<<(FRACBITS-1)) + FixedMul(FINECOSINE(fa),radius); y = (BASEVIDHEIGHT<<(FRACBITS-1)) + FixedMul(FINESINE(fa),radius); - eemeralds_cur[j] += (360/7); - if (i & 1) - eemeralds_cur[j]++; + eemeralds_cur[j] += (360<>ANGLETOFINESHIFT) & FINEMASK; + fa = (FixedAngle(eemeralds_cur[0])>>ANGLETOFINESHIFT) & FINEMASK; x = (BASEVIDWIDTH<<(FRACBITS-1)) + FixedMul(FINECOSINE(fa),radius); y = ((BASEVIDHEIGHT+16)<<(FRACBITS-1)) + FixedMul(FINESINE(fa),radius); - eemeralds_cur[0] += (360/7); - if (i & 1) - eemeralds_cur[0]++; + eemeralds_cur[0] += (360<