Frame interp: Howl 2 Electric Boogaloo

This commit is contained in:
Irastris
2026-04-14 17:17:29 -04:00
parent e37c912053
commit cd9bb31b02
2 changed files with 25 additions and 7 deletions
+4
View File
@@ -110,6 +110,10 @@ struct dMsgScrnHowl_c : public dMsgScrnBase_c {
/* 0x27A0 */ f32 field_0x27a0;
/* 0x27A4 */ f32 field_0x27a4;
/* 0x27A8 */ f32 field_0x27a8;
#if TARGET_PC
u8 showCursor;
#endif
};
#endif /* MSG_SCRN_D_MSG_SCRN_HOWL_H */
+21 -7
View File
@@ -311,6 +311,17 @@ void dMsgScrnHowl_c::exec() {
mpButtonIcon[1]->setAlphaRate(field_0x1994 * alphaRate);
mpButtonText[0]->setAlphaRate(field_0x1998 * alphaRate);
mpButtonText[1]->setAlphaRate(field_0x1998 * alphaRate);
#if TARGET_PC
showCursor = true;
if (field_0x2798 == 0) {
if (mPlotTime != field_0x212c) {
field_0x212c = mPlotTime;
} else {
showCursor = false;
}
}
#endif
}
void dMsgScrnHowl_c::drawSelf() {
@@ -494,20 +505,23 @@ void dMsgScrnHowl_c::drawWave() {
grafContext->setScissor();
#endif
#if !TARGET_PC
bool bVar5 = true;
if (field_0x2798 == 0) {
if (mPlotTime != field_0x212c) {
field_0x212c = mPlotTime;
} else {
#if TARGET_PC
if (!dusk::getSettings().game.enableFrameInterpolation)
#endif
{
bVar5 = false;
}
bVar5 = false;
}
}
if (bVar5) {
#endif
#if TARGET_PC
if (showCursor)
#else
if (bVar5)
#endif
{
for (int iVar10 = 0; iVar10 < field_0x2128 - 1; iVar10++) {
f32 local_54 = local_e0;
f32 local_c8 = field_0x180[sVar14];