CommonLibSSE NG
Loading...
Searching...
No Matches
LocalMapMenu.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/B/BSTArray.h"
6#include "RE/G/GFxValue.h"
7#include "RE/I/ImageData.h"
11#include "RE/N/NiCamera.h"
12#include "RE/N/NiSmartPointer.h"
13
14namespace RE
15{
16 class BSShaderAccumulator;
17 class NiNode;
18
20 {
21 public:
23 {
24 public:
25 struct Data
26 {
27 public:
28 // members
30 void* unk08; // 08 - smart ptr
32 std::uint64_t unk18; // 18
33 std::uint64_t unk20; // 20
34 std::uint64_t unk28; // 28
35 std::uint64_t unk30; // 30
36 std::uint64_t unk38; // 38
37 void* unk40; // 40 - smart ptr
38 };
39 static_assert(sizeof(Data) == 0x48);
40
41 [[nodiscard]] inline LocalMapCamera* GetLocalMapCamera() const noexcept
42 {
43 return &REL::RelocateMember<LocalMapCamera>(this, 0x30260, 0x30270);
44 }
45
46 void SetLocalMapCamera(const LocalMapCamera& localMapCamera) noexcept
47 {
48 REL::RelocateMember<LocalMapCamera>(this, 0x30260, 0x30270) = localMapCamera;
49 }
50
51 // members
53 Data unk301F8; // 301F8
54 std::uint64_t unk30240; // 30240
55 std::uint64_t unk30248; // 30248
56#ifndef ENABLE_SKYRIM_VR
57 std::uint64_t unk30250; // 30250
58 std::uint64_t unk30258; // 30258
62 std::uint64_t unk30350; // 30350
64#elif !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
65 std::uint64_t padVR1; // 30250
66 std::uint64_t padVR2; // 30258
67 std::uint64_t unk30260; // 30260
68 std::uint64_t unk30268; // 30268
69 LocalMapCamera camera; // 30270
70 NiPointer<BSShaderAccumulator> unk302D8; // 302D8
71 ImageSpaceShaderParam unk302E0; // 302E0
72 std::uint64_t unk30360; // 30360
73 NiPointer<NiNode> unk30368; // 30368
74 BSTArray<void*> unk30370; // 30370
75 BSTArray<void*> unk30388; // 30388
76 BSTArray<void*> unk303A0; // 303A0
77 void* unk303B8; // 303B8
78 NiCamera* unk303C0; // 303C0
79 std::uint32_t unk303C8; // 303C8
80 std::uint32_t pad303CC; // 303CC
81 std::uint64_t unk303D0; // 303D0
82#else
83 std::uint64_t unk30250; // 30250
84 std::uint64_t unk30258; // 30258
85 std::uint8_t unk30260[0x100]; // 30260
86#endif
87 };
88#ifndef ENABLE_SKYRIM_VR
89 static_assert(sizeof(LocalMapCullingProcess) == 0x30360);
90#elif !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
91 static_assert(sizeof(LocalMapCullingProcess) == 0x303D8);
92#endif
93
95 {
96 public:
97 inline static constexpr auto RTTI = RTTI_LocalMapMenu__InputHandler;
98
99 ~InputHandler() override; // 00
100
101 // override (MenuEventHandler)
102 bool CanProcess(InputEvent* a_event) override; // 01
103 bool ProcessThumbstick(ThumbstickEvent* a_event) override; // 03
104 bool ProcessMouseMove(MouseMoveEvent* a_event) override; // 04
105 bool ProcessButton(ButtonEvent* a_event) override; // 05
106
107 // members
109 };
110 static_assert(sizeof(InputHandler) == 0x18);
111
113 {
117 void* unk303E8; // 48
119 std::uint64_t unk303F8; // 58
120 };
121 static_assert(sizeof(RUNTIME_DATA) == 0x60);
122
123 [[nodiscard]] inline RUNTIME_DATA& GetRuntimeData() noexcept
124 {
125 return REL::RelocateMember<RUNTIME_DATA>(this, 0x303A0, 0x30418);
126 }
127
128 [[nodiscard]] inline const RUNTIME_DATA& GetRuntimeData() const noexcept
129 {
130 return REL::RelocateMember<RUNTIME_DATA>(this, 0x303A0, 0x30418);
131 }
132
133 // members
136 float unk00030; // 00030
137 float unk00034; // 00034
138 float unk00038; // 00038
139 float unk0003C; // 0003C
141 RUNTIME_DATA runtimeData; // 303A0, 30418
142#if !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
143 std::uint32_t unk30478; // 30478
144 std::uint32_t pad3047C; // 3047C
145#endif
146 };
147#ifndef ENABLE_SKYRIM_VR
148 static_assert(sizeof(LocalMapMenu) == 0x30400);
149#elif !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
150 static_assert(sizeof(LocalMapMenu) == 0x30480);
151#endif
152}
Definition BSCullingProcess.h:17
Definition BSTArray.h:377
Definition BSTSmartPointer.h:36
Definition ButtonEvent.h:11
Definition GFxValue.h:92
Definition ImageSpaceShaderParam.h:12
Definition InputEvent.h:22
Definition LocalMapCamera.h:14
Definition LocalMapMenu.h:95
bool ProcessMouseMove(MouseMoveEvent *a_event) override
static constexpr auto RTTI
Definition LocalMapMenu.h:97
bool ProcessButton(ButtonEvent *a_event) override
bool CanProcess(InputEvent *a_event) override
LocalMapMenu * localMapMenu
Definition LocalMapMenu.h:108
bool ProcessThumbstick(ThumbstickEvent *a_event) override
Definition MenuEventHandler.h:14
Definition MouseMoveEvent.h:8
Definition NiCamera.h:12
Definition NiSmartPointer.h:9
Definition ThumbstickEvent.h:8
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_LocalMapMenu__InputHandler(688975, 396830, 0x1f49050)
Definition ImageData.h:8
void * unk08
Definition LocalMapMenu.h:30
std::uint64_t unk38
Definition LocalMapMenu.h:36
std::uint64_t unk30
Definition LocalMapMenu.h:35
std::uint64_t unk20
Definition LocalMapMenu.h:33
std::uint64_t unk28
Definition LocalMapMenu.h:34
NiPointer< NiCamera > camera
Definition LocalMapMenu.h:31
void * unk40
Definition LocalMapMenu.h:37
NiPointer< BSShaderAccumulator > shaderAccumulator
Definition LocalMapMenu.h:29
std::uint64_t unk18
Definition LocalMapMenu.h:32
Definition LocalMapMenu.h:23
NiPointer< NiNode > unk30358
Definition LocalMapMenu.h:63
std::uint64_t unk30250
Definition LocalMapMenu.h:57
std::uint64_t unk30240
Definition LocalMapMenu.h:54
void SetLocalMapCamera(const LocalMapCamera &localMapCamera) noexcept
Definition LocalMapMenu.h:46
std::uint64_t unk30350
Definition LocalMapMenu.h:62
NiPointer< BSShaderAccumulator > unk302C8
Definition LocalMapMenu.h:60
LocalMapCamera camera
Definition LocalMapMenu.h:59
std::uint64_t unk30258
Definition LocalMapMenu.h:58
Data unk301F8
Definition LocalMapMenu.h:53
std::uint64_t unk30248
Definition LocalMapMenu.h:55
ImageSpaceShaderParam unk302D0
Definition LocalMapMenu.h:61
BSCullingProcess cullingProcess
Definition LocalMapMenu.h:52
LocalMapCamera * GetLocalMapCamera() const noexcept
Definition LocalMapMenu.h:41
Definition LocalMapMenu.h:113
BSTSmartPointer< InputHandler > unk303F0
Definition LocalMapMenu.h:118
ImageData unk303A0
Definition LocalMapMenu.h:114
std::uint64_t unk303F8
Definition LocalMapMenu.h:119
void * unk303E8
Definition LocalMapMenu.h:117
GFxValue unk303D0
Definition LocalMapMenu.h:116
GFxValue unk303B8
Definition LocalMapMenu.h:115
Definition LocalMapMenu.h:20
std::uint32_t pad3047C
Definition LocalMapMenu.h:144
LocalMapCullingProcess localCullingProcess
Definition LocalMapMenu.h:140
float unk00038
Definition LocalMapMenu.h:138
std::uint32_t unk30478
Definition LocalMapMenu.h:143
RUNTIME_DATA runtimeData
Definition LocalMapMenu.h:141
BSTArray< void * > unk00000
Definition LocalMapMenu.h:134
float unk00030
Definition LocalMapMenu.h:136
float unk00034
Definition LocalMapMenu.h:137
GFxValue unk00018
Definition LocalMapMenu.h:135
const RUNTIME_DATA & GetRuntimeData() const noexcept
Definition LocalMapMenu.h:128
RUNTIME_DATA & GetRuntimeData() noexcept
Definition LocalMapMenu.h:123
float unk0003C
Definition LocalMapMenu.h:139