10 class MenuOpenCloseEvent;
17 #ifndef SKYRIM_CROSS_VR
26 constexpr
static std::string_view
MENU_NAME =
"Training Menu";
30 #define RUNTIME_DATA_CONTENT \
33 std::uint32_t unk44; \
34 GFxValue trainingMenuObj; \
36 GFxValue skillMeter; \
37 GFxValue trainerSkill; \
38 GFxValue timesTrained; \
44 static_assert(
sizeof(RUNTIME_DATA) == 0xB8);
52 #ifndef SKYRIM_CROSS_VR
59 return &REL::RelocateMember<BSTEventSink<MenuOpenCloseEvent>>(
this, 0x30, 0x40);
69 return REL::RelocateMember<RUNTIME_DATA>(
this, 0x38, 0x48);
74 return REL::RelocateMember<RUNTIME_DATA>(
this, 0x38, 0x48);
78 #ifndef SKYRIM_CROSS_VR
82 #ifndef ENABLE_SKYRIM_VR
83 static_assert(
sizeof(TrainingMenu) == 0x0F0);
84 #elif !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
85 static_assert(
sizeof(TrainingMenu) == 0x100);
89 #undef RUNTIME_DATA_CONTENT
Definition: BSTEvent.h:143
Definition: FxDelegateHandler.h:19
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
UI_MESSAGE_RESULTS
Definition: IMenu.h:48
constexpr REL::VariantID RTTI_TrainingMenu(688920, 396775, 0x1f47a20)
BSEventNotifyControl
Definition: BSTEvent.h:12