CommonLibSSE (powerof3)
RaceSexMenu.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/I/IMenu.h"
5 #include "RE/R/RaceSexCamera.h"
6 #include "RE/S/Sexes.h"
7 
8 namespace RE
9 {
10  // menuDepth = 3
11  // flags = kPausesGame | kUsesMenuContext | kRequiresUpdate | kTopmostRenderedMenu | kUpdateUsesCursor
12  // context = kItemMenu
13  class RaceSexMenu :
14  public IMenu, // 00
15  public MenuEventHandler // 30
16  {
17  public:
18  inline static constexpr auto RTTI = RTTI_RaceSexMenu;
19  constexpr static std::string_view MENU_NAME = "RaceSex Menu";
20 
21  ~RaceSexMenu() override; // 00
22 
23  // override (IMenu)
24  void Accept(CallbackProcessor* a_processor) override; // 01
25  void PostCreate() override; // 02
26  UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
27  void AdvanceMovie(float a_interval, std::uint32_t a_currentTime) override; // 05
28 
29  // override (MenuEventHandler)
30  bool CanProcess(InputEvent* a_event) override = 0; // 01
31  bool ProcessThumbstick(ThumbstickEvent* a_event) override; // 03
32  bool ProcessMouseMove(MouseMoveEvent* a_event) override; // 04
33  bool ProcessButton(ButtonEvent* a_event) override; // 05
34 
35  // members
40  std::uint64_t unk188; // 188
41  std::uint32_t unk190; // 190
42  std::uint32_t unk194; // 194
44  std::uint16_t unk19C; // 19C
45  std::uint8_t unk19E; // 19E
46  std::uint8_t pad19F; // 19F
47  std::uint8_t unk1A0; // 1A0
48  std::uint8_t unk1A1; // 1A1
49  std::uint16_t unk1A2; // 1A2
50  std::uint32_t unk1A4; // 1A4
51  };
52  static_assert(sizeof(RaceSexMenu) == 0x1A8);
53 }
Definition: ButtonEvent.h:10
Definition: FxDelegateHandler.h:19
Definition: IMenu.h:55
Definition: InputEvent.h:22
Definition: MenuEventHandler.h:14
Definition: MouseMoveEvent.h:8
Definition: RaceSexCamera.h:8
Definition: RaceSexMenu.h:16
BSTArray< void * > unk040[7]
Definition: RaceSexMenu.h:36
BSTArray< void * > unk140[2]
Definition: RaceSexMenu.h:38
~RaceSexMenu() override
std::uint8_t pad19F
Definition: RaceSexMenu.h:46
std::uint16_t unk1A2
Definition: RaceSexMenu.h:49
std::uint32_t unk194
Definition: RaceSexMenu.h:42
void PostCreate() override
std::uint16_t unk19C
Definition: RaceSexMenu.h:44
bool ProcessMouseMove(MouseMoveEvent *a_event) override
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
std::uint32_t unk1A4
Definition: RaceSexMenu.h:50
std::uint8_t unk19E
Definition: RaceSexMenu.h:45
bool ProcessButton(ButtonEvent *a_event) override
RaceSexCamera camera
Definition: RaceSexMenu.h:37
std::uint8_t unk1A0
Definition: RaceSexMenu.h:47
std::uint64_t unk188
Definition: RaceSexMenu.h:40
std::uint8_t unk1A1
Definition: RaceSexMenu.h:48
constexpr static std::string_view MENU_NAME
Definition: RaceSexMenu.h:19
static constexpr auto RTTI
Definition: RaceSexMenu.h:18
bool ProcessThumbstick(ThumbstickEvent *a_event) override
std::uint32_t unk190
Definition: RaceSexMenu.h:41
stl::enumeration< SEX, std::uint32_t > sex
Definition: RaceSexMenu.h:43
void AdvanceMovie(float a_interval, std::uint32_t a_currentTime) override
void Accept(CallbackProcessor *a_processor) override
BSTArray< void * > unk170
Definition: RaceSexMenu.h:39
bool CanProcess(InputEvent *a_event) override=0
Definition: ThumbstickEvent.h:8
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
UI_MESSAGE_RESULTS
Definition: IMenu.h:48
constexpr REL::ID RTTI_RaceSexMenu
Definition: Offsets_RTTI.h:5761