Added a failsafe for cases when Goodbye topic is finished but dialog has not closed for whatever reason
This commit is contained in:
parent
240e361967
commit
845a007995
@ -19,6 +19,15 @@ public:
|
|||||||
private:
|
private:
|
||||||
RE::UI_MESSAGE_RESULTS ProcessMessageEx(RE::UIMessage& a_message)
|
RE::UI_MESSAGE_RESULTS ProcessMessageEx(RE::UIMessage& a_message)
|
||||||
{
|
{
|
||||||
|
// Unblock Tab if Goodbye response has finished playing (End script has already run at this point).
|
||||||
|
// A failsafe when Goodbye does not close the dialogue menu.
|
||||||
|
if (bTabBlocked && a_message.type == RE::UI_MESSAGE_TYPE::kUpdate) {
|
||||||
|
auto* mtm = RE::MenuTopicManager::GetSingleton();
|
||||||
|
if (mtm && mtm->isSayingGoodbye && !mtm->currentTopicInfo && RE::UI::GetSingleton()->IsMenuOpen(MENU_NAME)) {
|
||||||
|
BlockTab(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (bTabBlocked && a_message.type == RE::UI_MESSAGE_TYPE::kScaleformEvent) {
|
if (bTabBlocked && a_message.type == RE::UI_MESSAGE_TYPE::kScaleformEvent) {
|
||||||
RE::BSUIScaleformData* data = static_cast<RE::BSUIScaleformData*>(a_message.data);
|
RE::BSUIScaleformData* data = static_cast<RE::BSUIScaleformData*>(a_message.data);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user