From cd3774932e43092a08084a5f1eff83edc2b427d9 Mon Sep 17 00:00:00 2001 From: toaster Date: Sun, 10 Jul 2022 21:46:17 +0100 Subject: [PATCH] Interpolate the Phantom Ruby floating animation. Also, I fell for the copypasted code bait CLASSIC, so now all instances of the Ruby are decoupled from FPS cap. --- src/m_menu.c | 7 +++---- src/y_inter.c | 3 ++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/m_menu.c b/src/m_menu.c index 2151b00a..6b7179be 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -165,7 +165,6 @@ INT16 startmap; // Mario, NiGHTS, or just a plain old normal game? static INT16 itemOn = 1; // menu item skull is on, Hack by Tails 09-18-2002 static INT16 skullAnimCounter = 10; // skull animation counter -static angle_t rubyfloattime = 0; static UINT8 setupcontrolplayer; static INT32 (*setupcontrols)[2]; // pointer to the gamecontrols of the player being edited @@ -3406,8 +3405,6 @@ void M_Ticker(void) if (--skullAnimCounter <= 0) skullAnimCounter = 8; - rubyfloattime += (ANGLE_MAX/NEWTICRATE); - if (currentMenu == &PlaybackMenuDef) { if (playback_enterheld > 0) @@ -5520,8 +5517,10 @@ static void DrawReplayHutReplayInfo(void) V_DrawSmallScaledPatch(x+(w>>1), y, V_SNAPTOTOP|V_FLIP, patch); { + static angle_t rubyfloattime = 0; const fixed_t rubyheight = FINESINE(rubyfloattime>>ANGLETOFINESHIFT); V_DrawFixedPatch((x+(w>>2))<>2))<>ANGLETOFINESHIFT); V_DrawFixedPatch((x+w/2)<>ANGLETOFINESHIFT); + rubyfloattime += FixedMul(ANGLE_MAX/NEWTICRATE, renderdeltatics); } V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 31);