CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
MapMenu.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/B/BSTArray.h"
5#include "RE/B/BSTEvent.h"
7#include "RE/G/GFxValue.h"
9#include "RE/I/IMenu.h"
10#include "RE/L/LocalMapMenu.h"
11#include "RE/M/MapCamera.h"
12
13namespace RE
14{
15 class BSAudioManager;
16 class MapLookHandler;
17 class MapMoveHandler;
18 class MapZoomHandler;
19 class MenuOpenCloseEvent;
20 class TESWorldSpace;
21
22 // menuDepth = 3
23 // flags = kPausesGame | kUsesCursor | kRendersOffscreenTargets | kCustomRendering
24 // context = kMap
25 class MapMenu :
26 public IMenu, // 00000
27 public BSTEventSink<MenuOpenCloseEvent>, // 00030
28 public IMapCameraCallbacks // 00038
29 {
30 public:
31 inline static constexpr auto RTTI = RTTI_MapMenu;
32 constexpr static std::string_view MENU_NAME = "MapMenu";
33
34 ~MapMenu() override; // 00
35
36 // override (IMenu)
37 void Accept(CallbackProcessor* a_processor) override; // 01
38 UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
39 void AdvanceMovie(float a_interval, std::uint32_t a_currentTime) override; // 05
40 void RefreshPlatform() override; // 08
41
42 // override (BSTEventSink<MenuOpenCloseEvent>)
44
46 {
47 using func_t = decltype(&MapMenu::PlaceMarker);
48 static REL::Relocation<func_t> func{ RELOCATION_ID(52226, 53113) };
49 return func(this);
50 }
51
52 // members
62 MapCamera camera; // 304A0
63 std::uint64_t unk30530; // 30530
66 std::int32_t selectedMarker; // 30558
70 std::uint64_t unk30580; // 30580
71 std::uint32_t unk30588; // 30588
72 bool controlsReady; // 3058C
73 std::uint8_t unk3058D; // 3058D
74 std::uint16_t unk3058E; // 3058E
75 std::uint64_t unk30590; // 30590
76 };
77 static_assert(sizeof(MapMenu) == 0x30598);
78}
#define RELOCATION_ID(SE, AE)
Definition PCH.h:506
Definition Relocation.h:210
Definition BSTArray.h:378
Definition BSTEvent.h:185
Definition BSTEvent.h:19
Definition BSTSmartPointer.h:37
Definition FxDelegateHandler.h:20
Definition GFxValue.h:92
Definition IMenu.h:55
Definition MapCamera.h:19
Definition MapMenu.h:29
~MapMenu() override
MapCamera camera
Definition MapMenu.h:62
NiPoint3 cameraPickOrigin
Definition MapMenu.h:67
BSTArray< GFxValue > markerData
Definition MapMenu.h:61
void Accept(CallbackProcessor *a_processor) override
LocalMapMenu localMapMenu
Definition MapMenu.h:57
std::uint16_t unk3058E
Definition MapMenu.h:74
std::uint64_t unk30590
Definition MapMenu.h:75
BSTSmartPointer< MapZoomHandler > zoomHandler
Definition MapMenu.h:55
BSTSmartPointer< MapLookHandler > lookHandler
Definition MapMenu.h:54
NiPoint3 playerMarkerPosition
Definition MapMenu.h:59
std::uint64_t unk30530
Definition MapMenu.h:63
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
BSTArray< MapMenuMarker > mapMarkers
Definition MapMenu.h:60
bool controlsReady
Definition MapMenu.h:72
GFxValue mapMovie
Definition MapMenu.h:65
NiPoint3 cameraPickDirection
Definition MapMenu.h:68
TESWorldSpace * worldSpace
Definition MapMenu.h:64
static constexpr std::string_view MENU_NAME
Definition MapMenu.h:32
std::uint8_t unk3058D
Definition MapMenu.h:73
RefHandle unk30460
Definition MapMenu.h:58
std::uint64_t unk30580
Definition MapMenu.h:70
std::int32_t selectedMarker
Definition MapMenu.h:66
std::uint32_t unk30588
Definition MapMenu.h:71
BSSoundHandle unk30574
Definition MapMenu.h:69
void AdvanceMovie(float a_interval, std::uint32_t a_currentTime) override
static constexpr auto RTTI
Definition MapMenu.h:31
BSEventNotifyControl ProcessEvent(const MenuOpenCloseEvent *a_event, BSTEventSource< MenuOpenCloseEvent > *a_eventSource) override
void PlaceMarker()
Definition MapMenu.h:45
ObjectRefHandle mapMarker
Definition MapMenu.h:56
void RefreshPlatform() override
BSTSmartPointer< MapMoveHandler > moveHandler
Definition MapMenu.h:53
Definition MenuOpenCloseEvent.h:8
Definition NiPoint3.h:6
Definition TESWorldSpace.h:118
Definition UIMessage.h:28
Definition AbsorbEffect.h:6
UI_MESSAGE_RESULTS
Definition IMenu.h:48
constexpr REL::ID RTTI_MapMenu(static_cast< std::uint64_t >(688986))
std::uint32_t RefHandle
Definition BSCoreTypes.h:6
BSEventNotifyControl
Definition BSTEvent.h:12
Definition BSSoundHandle.h:10
Definition IMapCameraCallbacks.h:6
Definition LocalMapMenu.h:21