CommonLibSSE NG
Loading...
Searching...
No Matches
MessageBoxMenu.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/I/IMenu.h"
4
5namespace RE
6{
7 // menuDepth = 10
8 // flags = kPausesGame | kAlwaysOpen | kUsesCursor | kModal
9 // context = kMenuMode
10 class MessageBoxMenu : public IMenu
11 {
12 public:
13 inline static constexpr auto RTTI = RTTI_MessageBoxMenu;
14 constexpr static std::string_view MENU_NAME = "MessageBoxMenu";
15
17 {
18#define RUNTIME_DATA_CONTENT \
19 std::uint8_t unk30; /* 00 */ \
20 std::uint8_t pad31; /* 01 */ \
21 std::uint16_t pad32; /* 02 */ \
22 std::uint32_t pad34; /* 04 */
23
25 };
26 static_assert(sizeof(RUNTIME_DATA) == 0x8);
27
28 ~MessageBoxMenu() override; // 00
29
30 // override (IMenu)
31 void Accept(CallbackProcessor* a_processor) override; // 01
32 UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
33
34 [[nodiscard]] inline RUNTIME_DATA& GetRuntimeData() noexcept
35 {
36 return REL::RelocateMember<RUNTIME_DATA>(this, 0x30, 0x40);
37 }
38
39 [[nodiscard]] inline const RUNTIME_DATA& GetRuntimeData() const noexcept
40 {
41 return REL::RelocateMember<RUNTIME_DATA>(this, 0x30, 0x40);
42 }
43
44 // members
45#ifndef SKYRIM_CROSS_VR
46 RUNTIME_DATA_CONTENT // 30, 40
47#endif
48 };
49#ifndef ENABLE_SKYRIM_VR
50 static_assert(sizeof(MessageBoxMenu) == 0x38);
51#elif !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
52 static_assert(sizeof(MessageBoxMenu) == 0x48);
53#endif
54}
55#undef RUNTIME_DATA_CONTENT
#define RUNTIME_DATA_CONTENT
Definition Actor.h:633
Definition FxDelegateHandler.h:19
Definition IMenu.h:55
Definition MessageBoxMenu.h:11
RUNTIME_DATA & GetRuntimeData() noexcept
Definition MessageBoxMenu.h:34
~MessageBoxMenu() override
void Accept(CallbackProcessor *a_processor) override
static constexpr std::string_view MENU_NAME
Definition MessageBoxMenu.h:14
const RUNTIME_DATA & GetRuntimeData() const noexcept
Definition MessageBoxMenu.h:39
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
static constexpr auto RTTI
Definition MessageBoxMenu.h:13
Definition UIMessage.h:28
Definition AbsorbEffect.h:6
UI_MESSAGE_RESULTS
Definition IMenu.h:48
constexpr REL::VariantID RTTI_MessageBoxMenu(688894, 396749, 0x1f47580)
Definition MessageBoxMenu.h:17