CommonLibSSE (Parapets fork)
BarterMenu.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTArray.h"
4 #include "RE/G/GFxValue.h"
5 #include "RE/I/IMenu.h"
6 
7 namespace RE
8 {
9  struct BottomBar;
10  struct ItemCard;
11  struct ItemList;
12 
13  // menuDepth = 0
14  // flags = kPausesGame | kUsesMenuContext | kDisablePauseMenu | kUpdateUsesCursor | kInventoryItemMenu | kCustomRendering
15  // context = kItemMenu
16  class BarterMenu : public IMenu
17  {
18  public:
19  inline static constexpr auto RTTI = RTTI_BarterMenu;
20  constexpr static std::string_view MENU_NAME = "BarterMenu";
21 
22  ~BarterMenu() override; // 00
23 
24  // override (IMenu)
25  void Accept(CallbackProcessor* a_processor) override; // 01
26  UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
27  void PostDisplay() override; // 06
28 
29  [[nodiscard]] RefHandle GetTargetRefHandle();
30 
31  // members
35  GFxValue root; // 48 - "Menu_mc"
36  std::uint64_t unk60; // 60
37  std::uint64_t unk68; // 68
38  std::uint64_t unk70; // 70
39  std::uint8_t unk78; // 78
40  std::uint8_t pad79; // 79
41  std::uint16_t pad7A; // 7A
42  std::uint32_t pad7C; // 7C
44  std::uint64_t unk98; // 98
45  std::uint32_t unkA0; // A0
46  bool pcControlsReady; // A4
47  std::uint8_t padA5; // A5
48  std::uint16_t padA6; // A6
49  };
50 #ifndef SKYRIMVR
51  static_assert(sizeof(BarterMenu) == 0xA8);
52 #else
53  static_assert(sizeof(BarterMenu) == 0xB8);
54 #endif
55 }
Definition: BarterMenu.h:17
std::uint64_t unk60
Definition: BarterMenu.h:36
std::uint8_t pad79
Definition: BarterMenu.h:40
GFxValue root
Definition: BarterMenu.h:35
std::uint32_t pad7C
Definition: BarterMenu.h:42
BSTArray< void * > unk80
Definition: BarterMenu.h:43
std::uint16_t pad7A
Definition: BarterMenu.h:41
ItemCard * itemCard
Definition: BarterMenu.h:33
static constexpr auto RTTI
Definition: BarterMenu.h:19
constexpr static std::string_view MENU_NAME
Definition: BarterMenu.h:20
bool pcControlsReady
Definition: BarterMenu.h:46
std::uint64_t unk68
Definition: BarterMenu.h:37
void PostDisplay() override
std::uint64_t unk98
Definition: BarterMenu.h:44
void Accept(CallbackProcessor *a_processor) override
std::uint8_t unk78
Definition: BarterMenu.h:39
ItemList * itemList
Definition: BarterMenu.h:32
std::uint8_t padA5
Definition: BarterMenu.h:47
std::uint32_t unkA0
Definition: BarterMenu.h:45
RefHandle GetTargetRefHandle()
~BarterMenu() override
std::uint16_t padA6
Definition: BarterMenu.h:48
BottomBar * bottomBar
Definition: BarterMenu.h:34
std::uint64_t unk70
Definition: BarterMenu.h:38
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
Definition: FxDelegateHandler.h:19
Definition: GFxValue.h:92
Definition: IMenu.h:56
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BarterMenu
Definition: Offsets_RTTI.h:3677
UI_MESSAGE_RESULTS
Definition: IMenu.h:49
std::uint32_t RefHandle
Definition: BSCoreTypes.h:6
Definition: BottomBar.h:9
Definition: ItemCard.h:14
Definition: ItemList.h:14