CommonLibSSE NG
Loading...
Searching...
No Matches
CreditsMenu.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/I/IMenu.h"
5
6namespace RE
7{
8 // menuDepth = 10
9 // flags = kPausesGame
10 // context = kMenuMode
12#ifndef SKYRIM_CROSS_VR
13 public IMenu, // 00
14 public GFxFunctionHandler // 30
15#else
16 public IMenu // 00
17#endif
18 {
19 public:
20 inline static constexpr auto RTTI = RTTI_CreditsMenu;
21 constexpr static std::string_view MENU_NAME = "Credits Menu";
22
23 ~CreditsMenu() override; // 00
24
25 // override (IMenu)
26 UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
27
28#ifndef SKYRIM_CROSS_VR
29 // override (GFxFunctionHandler)
30 void Call(Params& a_params) override; // 01
31#endif
32
33 [[nodiscard]] GFxFunctionHandler* AsGFxFunctionHandler() noexcept
34 {
35 return &REL::RelocateMember<GFxFunctionHandler>(this, 0x30, 0x40);
36 }
37
38 [[nodiscard]] const GFxFunctionHandler* AsGFxFunctionHandler() const noexcept
39 {
40 return const_cast<CreditsMenu*>(this)->AsGFxFunctionHandler();
41 }
42 };
43#ifndef ENABLE_SKYRIM_VR
44 static_assert(sizeof(CreditsMenu) == 0x40);
45#elif !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
46 static_assert(sizeof(CreditsMenu) == 0x50);
47#endif
48}
Definition CreditsMenu.h:18
GFxFunctionHandler * AsGFxFunctionHandler() noexcept
Definition CreditsMenu.h:33
const GFxFunctionHandler * AsGFxFunctionHandler() const noexcept
Definition CreditsMenu.h:38
~CreditsMenu() override
static constexpr auto RTTI
Definition CreditsMenu.h:20
void Call(Params &a_params) override
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
static constexpr std::string_view MENU_NAME
Definition CreditsMenu.h:21
Definition GFxFunctionHandler.h:12
Definition IMenu.h:55
Definition UIMessage.h:28
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_CreditsMenu(688827, 396679, 0x1f466d8)
UI_MESSAGE_RESULTS
Definition IMenu.h:48
Definition GFxFunctionHandler.h:17