CommonLibVR
SleepWaitMenu.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/G/GFxValue.h"
4 #include "RE/I/IMenu.h"
5 
6 namespace RE
7 {
8  // menuDepth = 4
9  // flags = kPausesGame | kRequiresUpdate | kAllowSaving | kApplicationMenu
10  // kUsesCursor if gamepad disabled
11  // context = kMenuMode
12  class SleepWaitMenu : public IMenu
13  {
14  public:
15  inline static constexpr auto RTTI = RTTI_SleepWaitMenu;
16  constexpr static std::string_view MENU_NAME = "Sleep/Wait Menu";
17 
18  ~SleepWaitMenu() override; // 00
19 
20  // override (IMenu)
21  void Accept(CallbackProcessor* a_processor) override; // 01
22  UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
23 
24  static void ToggleOpenSleepWaitMenu(bool a_sleeping)
25  {
26  using func_t = decltype(&SleepWaitMenu::ToggleOpenSleepWaitMenu);
27  static REL::Relocation<func_t> func{ RELOCATION_ID(51618, 52490) };
28  return func(a_sleeping);
29  }
30 
31  // members
32  std::uint32_t unk30; // 30
33  std::uint32_t pad34; // 34
34  GFxValue root; // 38 - "SleepWaitMenu_mc"
35  std::uint8_t unk50; // 50
36  std::uint8_t unk51; // 51
37  std::uint16_t pad52; // 52
38  std::uint32_t pad54; // 54
39  private:
40  KEEP_FOR_RE()
41  };
42 #ifndef SKYRIMVR
43  static_assert(sizeof(SleepWaitMenu) == 0x58);
44 #else
45  static_assert(sizeof(SleepWaitMenu) == 0x68);
46 #endif
47 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
#define RELOCATION_ID(SE, AE)
Definition: PCH.h:702
Definition: Relocation.h:210
Definition: FxDelegateHandler.h:20
Definition: GFxValue.h:92
Definition: IMenu.h:64
Definition: SleepWaitMenu.h:13
~SleepWaitMenu() override
std::uint32_t pad34
Definition: SleepWaitMenu.h:33
void Accept(CallbackProcessor *a_processor) override
std::uint8_t unk50
Definition: SleepWaitMenu.h:35
std::uint32_t unk30
Definition: SleepWaitMenu.h:32
std::uint16_t pad52
Definition: SleepWaitMenu.h:37
static void ToggleOpenSleepWaitMenu(bool a_sleeping)
Definition: SleepWaitMenu.h:24
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
static constexpr auto RTTI
Definition: SleepWaitMenu.h:15
GFxValue root
Definition: SleepWaitMenu.h:34
std::uint8_t unk51
Definition: SleepWaitMenu.h:36
constexpr static std::string_view MENU_NAME
Definition: SleepWaitMenu.h:16
std::uint32_t pad54
Definition: SleepWaitMenu.h:38
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
UI_MESSAGE_RESULTS
Definition: IMenu.h:49
constexpr REL::ID RTTI_SleepWaitMenu(static_cast< std::uint64_t >(688905))