CommonLibSSE NG
ConstructibleObjectMenu.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTArray.h"
4 #include "RE/C/CraftingSubMenu.h"
6 
7 namespace RE
8 {
9  namespace CraftingSubMenus
10  {
12  {
13  public:
14  inline static constexpr auto RTTI = RTTI_CraftingSubMenus__ConstructibleObjectMenu;
15 
17  {
18  public:
20 
21  ~CreationConfirmCallback() override; // 00
22 
23  // override (IMessageBoxCallback)
24  void Run(Message a_msg) override; // 01
25 
26  // members
28  };
29  static_assert(sizeof(CreationConfirmCallback) == 0x18);
30 
31  struct ItemEntry
32  {
34  std::uint32_t filterFlag; // 08
35  std::uint32_t pad0C; // 0C
36  };
37  static_assert(sizeof(ItemEntry) == 0x10);
38 
39  enum class FilterFlags : std::uint32_t
40  {
41  Wood = 0x0,
42  Hide = 0x1,
43  Draugr = 0x2,
44  Iron = 0x3,
45  Studded = 0x4,
46  Imperial = 0x5,
47  Steel = 0x6,
48  Leather = 0x7,
49  Dwarven = 0x8,
50  Elven = 0x9,
51  Falmer = 0xA,
52  Orcish = 0xB,
53  Ebony = 0xC,
54  Glass = 0xD,
55  Dragon = 0xE,
56  Daedric = 0xF,
57  Jewelry = 0x10,
58  Unk11 = 0x11,
67  Bonemold = 0x1A,
68  Chitin = 0x1B,
69  Nordic = 0x1C,
70  Stalhrim = 0x1D
71  };
72 
73  ~ConstructibleObjectMenu() override; // 00
74 
75  // override (CraftingSubMenu)
76  void Accept(CallbackProcessor* a_cbReg) override; // 01
77  void Unk_06(void) override; // 06
78  void SetItemCardInfo(ItemCard* a_itemCard) override; // 07
79 
80  // members
82  BSTHashMap<FormID, FilterFlags> materialFilterFlags; // 118 - kwd's formid -> FilterFlags
83  std::uint32_t currentCobjIdx; // 148
84  std::uint32_t pad14C; // 14C
85  std::uint64_t unk150; // 150
86  std::uint64_t unk158; // 158
87  };
88  static_assert(sizeof(ConstructibleObjectMenu) == 0x160);
89  }
90 }
Definition: BGSConstructibleObject.h:11
Definition: BSTArray.h:377
Definition: BSTHashMap.h:21
static constexpr auto RTTI
Definition: ConstructibleObjectMenu.h:19
ConstructibleObjectMenu * menu
Definition: ConstructibleObjectMenu.h:27
Definition: ConstructibleObjectMenu.h:12
std::uint64_t unk150
Definition: ConstructibleObjectMenu.h:85
std::uint32_t pad14C
Definition: ConstructibleObjectMenu.h:84
void SetItemCardInfo(ItemCard *a_itemCard) override
std::uint32_t currentCobjIdx
Definition: ConstructibleObjectMenu.h:83
std::uint64_t unk158
Definition: ConstructibleObjectMenu.h:86
BSTHashMap< FormID, FilterFlags > materialFilterFlags
Definition: ConstructibleObjectMenu.h:82
FilterFlags
Definition: ConstructibleObjectMenu.h:40
BSTArray< ItemEntry > crafts
Definition: ConstructibleObjectMenu.h:81
void Accept(CallbackProcessor *a_cbReg) override
static constexpr auto RTTI
Definition: ConstructibleObjectMenu.h:14
Definition: CraftingSubMenu.h:20
Definition: FxDelegateHandler.h:19
Definition: IMessageBoxCallback.h:8
Message
Definition: IMessageBoxCallback.h:13
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_CraftingSubMenus__ConstructibleObjectMenu(688809, 396661, 0x1f46138)
constexpr REL::VariantID RTTI_CraftingSubMenus__ConstructibleObjectMenu__CreationConfirmCallback(688810, 396662, 0x1f46180)
Definition: ConstructibleObjectMenu.h:32
std::uint32_t filterFlag
Definition: ConstructibleObjectMenu.h:34
BGSConstructibleObject * constructibleObject
Definition: ConstructibleObjectMenu.h:33
std::uint32_t pad0C
Definition: ConstructibleObjectMenu.h:35
Definition: ItemCard.h:12