mirror of
https://github.com/hedge-dev/UnleashedRecomp.git
synced 2025-10-30 07:11:05 +00:00
Fix achievements button guide reappearing for Yes/No prompts (#193)
This commit is contained in:
parent
5321ee0fba
commit
c1988e9323
2 changed files with 24 additions and 7 deletions
|
|
@ -48,8 +48,7 @@ namespace SWA
|
||||||
class CHudPause : public CGameObject
|
class CHudPause : public CGameObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
xpointer<void> m_pVftable;
|
SWA_INSERT_PADDING(0x30);
|
||||||
SWA_INSERT_PADDING(0x2C);
|
|
||||||
RCPtr<CProject> m_rcPause;
|
RCPtr<CProject> m_rcPause;
|
||||||
RCPtr<CScene> m_rcBg;
|
RCPtr<CScene> m_rcBg;
|
||||||
RCPtr<CScene> m_rcBg1;
|
RCPtr<CScene> m_rcBg1;
|
||||||
|
|
@ -58,12 +57,32 @@ namespace SWA
|
||||||
RCPtr<CScene> m_rcBg1Select_2;
|
RCPtr<CScene> m_rcBg1Select_2;
|
||||||
RCPtr<CScene> m_rcStatusTitle;
|
RCPtr<CScene> m_rcStatusTitle;
|
||||||
RCPtr<CScene> m_rcFooterA;
|
RCPtr<CScene> m_rcFooterA;
|
||||||
SWA_INSERT_PADDING(0x5C);
|
SWA_INSERT_PADDING(0x59);
|
||||||
|
bool m_IsVisible;
|
||||||
|
SWA_INSERT_PADDING(0x02);
|
||||||
be<EActionType> m_Action;
|
be<EActionType> m_Action;
|
||||||
be<EMenuType> m_Menu;
|
be<EMenuType> m_Menu;
|
||||||
be<EStatusType> m_Status;
|
be<EStatusType> m_Status;
|
||||||
be<ETransitionType> m_Transition;
|
be<ETransitionType> m_Transition;
|
||||||
SWA_INSERT_PADDING(0x20);
|
SWA_INSERT_PADDING(0x04);
|
||||||
|
be<uint32_t> m_Submenu;
|
||||||
|
SWA_INSERT_PADDING(0x18);
|
||||||
bool m_IsShown;
|
bool m_IsShown;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcPause, 0xEC);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg, 0xF4);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1, 0xFC);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1_2, 0x104);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1Select, 0x10C);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1Select_2, 0x114);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcStatusTitle, 0x11C);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_rcFooterA, 0x124);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_IsVisible, 0x185);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_Action, 0x188);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_Menu, 0x18C);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_Status, 0x190);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_Transition, 0x194);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_Submenu, 0x19C);
|
||||||
|
SWA_ASSERT_OFFSETOF(CHudPause, m_IsShown, 0x1B8);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,6 @@ PPC_FUNC(sub_824B0930)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: disable Start button closing menu.
|
|
||||||
if (AchievementMenu::s_isVisible)
|
if (AchievementMenu::s_isVisible)
|
||||||
{
|
{
|
||||||
// HACK: wait for transition to finish before restoring control.
|
// HACK: wait for transition to finish before restoring control.
|
||||||
|
|
@ -154,7 +153,6 @@ PPC_FUNC(sub_824B0930)
|
||||||
if (OptionsMenu::CanClose() && pInputState->GetPadState().IsTapped(SWA::eKeyState_B))
|
if (OptionsMenu::CanClose() && pInputState->GetPadState().IsTapped(SWA::eKeyState_B))
|
||||||
{
|
{
|
||||||
OptionsMenu::Close();
|
OptionsMenu::Close();
|
||||||
|
|
||||||
GuestToHostFunction<int>(sub_824AFD28, pHudPause, 0, 0, 0, 1);
|
GuestToHostFunction<int>(sub_824AFD28, pHudPause, 0, 0, 0, 1);
|
||||||
__imp__sub_824B0930(ctx, base);
|
__imp__sub_824B0930(ctx, base);
|
||||||
}
|
}
|
||||||
|
|
@ -165,7 +163,7 @@ PPC_FUNC(sub_824B0930)
|
||||||
|
|
||||||
const auto ms_IsRenderHud = (bool*)g_memory.Translate(0x8328BB26);
|
const auto ms_IsRenderHud = (bool*)g_memory.Translate(0x8328BB26);
|
||||||
|
|
||||||
if (*ms_IsRenderHud && pHudPause->m_IsShown && pHudPause->m_Transition == SWA::eTransitionType_Undefined)
|
if (*ms_IsRenderHud && pHudPause->m_IsShown && !pHudPause->m_Submenu && pHudPause->m_Transition == SWA::eTransitionType_Undefined)
|
||||||
{
|
{
|
||||||
ButtonGuide::Open(Button(Localise("Achievements_Name"), EButtonIcon::Back, EButtonAlignment::Left, EFontQuality::Low));
|
ButtonGuide::Open(Button(Localise("Achievements_Name"), EButtonIcon::Back, EButtonAlignment::Left, EFontQuality::Low));
|
||||||
g_isClosed = false;
|
g_isClosed = false;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue