CommonLibSSE (powerof3)
SmithingMenu.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
RE/B/BSTArray.h
"
4
#include "
RE/B/BSTHashMap.h
"
5
#include "
RE/C/CraftingSubMenu.h
"
6
#include "
RE/I/IMessageBoxCallback.h
"
7
#include "
RE/I/InventoryEntryData.h
"
8
9
namespace
RE
10
{
11
namespace
CraftingSubMenus
12
{
13
class
SmithingMenu
:
public
CraftingSubMenu
14
{
15
public
:
16
inline
static
constexpr
auto
RTTI
=
RTTI_CraftingSubMenus__SmithingMenu
;
17
inline
static
constexpr
auto
VTABLE
=
VTABLE_CraftingSubMenus__SmithingMenu
;
18
19
class
SmithingConfirmCallback
:
public
IMessageBoxCallback
20
{
21
public
:
22
inline
static
constexpr
auto
RTTI
=
RTTI_CraftingSubMenus__SmithingMenu__SmithingConfirmCallback
;
23
inline
static
constexpr
auto
VTABLE
=
VTABLE_CraftingSubMenus__SmithingMenu__SmithingConfirmCallback
;
24
25
~SmithingConfirmCallback
()
override
;
// 00
26
27
// override (IMessageBoxCallback)
28
void
Run
(
Message
a_msg)
override
;
// 01
29
30
// members
31
SmithingMenu
*
subMenu
;
// 10
32
};
33
static_assert(
sizeof
(
SmithingConfirmCallback
) == 0x18);
34
35
struct
SmithingItemEntry
36
{
37
// members
38
TESForm
*
item
;
// 00
39
std::int64_t
unk08
;
// 08
40
BGSConstructibleObject
*
constructibleObject
;
// 10
41
float
unk18
;
// 18 - Health of item?
42
float
unk1C
;
// 1C - kSmithing actor value?
43
int
unk20
;
// 20
44
int
unk24
;
// 24
45
std::byte
unk28
;
// 28
46
std::byte
unk29
;
// 29
47
std::byte
unk2A
;
// 2A
48
std::byte
pad2B
;
// 2B
49
std::uint32_t
pad2C
;
// 2C
50
};
51
static_assert(
sizeof
(
SmithingItemEntry
) == 0x30);
52
53
~SmithingMenu
()
override
;
// 00
54
55
// override (CraftingSubMenu)
56
void
Accept
(
CallbackProcessor
* a_cbReg)
override
;
// 01
57
void
UpdateSmithingList
()
override
;
// 02
58
bool
ProcessUserEvent
(
BSFixedString
* a_control)
override
;
// 05
59
60
// members
61
BSTArray<SmithingItemEntry>
recipes
;
// 100
62
BSTHashMap<UnkKey, UnkValue>
unk118
;
// 118 - constructibleObject map?
63
NiPointer<TESObjectREFR>
furnitureRef
;
// 148
64
std::uint32_t
currentIndex
;
// 150
65
std::int32_t
selectedIndex
;
// 154 - if set, currentIndex will match this value.
66
FormType
smithingType
;
// 158
67
std::uint32_t
unk15C
;
// 15C
68
InventoryEntryData
*
unk160
;
// 160
69
};
70
static_assert(
sizeof
(
SmithingMenu
) == 0x168);
71
}
72
}
BSTArray.h
BSTHashMap.h
CraftingSubMenu.h
IMessageBoxCallback.h
InventoryEntryData.h
RE::BGSConstructibleObject
Definition:
BGSConstructibleObject.h:11
RE::BSTArray
Definition:
BSTArray.h:378
RE::BSTScatterTable
Definition:
BSTHashMap.h:21
RE::CraftingSubMenus::CraftingSubMenu
Definition:
CraftingSubMenu.h:21
RE::CraftingSubMenus::SmithingMenu::SmithingConfirmCallback
Definition:
SmithingMenu.h:20
RE::CraftingSubMenus::SmithingMenu::SmithingConfirmCallback::Run
void Run(Message a_msg) override
RE::CraftingSubMenus::SmithingMenu::SmithingConfirmCallback::RTTI
static constexpr auto RTTI
Definition:
SmithingMenu.h:22
RE::CraftingSubMenus::SmithingMenu::SmithingConfirmCallback::subMenu
SmithingMenu * subMenu
Definition:
SmithingMenu.h:31
RE::CraftingSubMenus::SmithingMenu::SmithingConfirmCallback::VTABLE
static constexpr auto VTABLE
Definition:
SmithingMenu.h:23
RE::CraftingSubMenus::SmithingMenu::SmithingConfirmCallback::~SmithingConfirmCallback
~SmithingConfirmCallback() override
RE::CraftingSubMenus::SmithingMenu
Definition:
SmithingMenu.h:14
RE::CraftingSubMenus::SmithingMenu::UpdateSmithingList
void UpdateSmithingList() override
RE::CraftingSubMenus::SmithingMenu::recipes
BSTArray< SmithingItemEntry > recipes
Definition:
SmithingMenu.h:61
RE::CraftingSubMenus::SmithingMenu::currentIndex
std::uint32_t currentIndex
Definition:
SmithingMenu.h:64
RE::CraftingSubMenus::SmithingMenu::furnitureRef
NiPointer< TESObjectREFR > furnitureRef
Definition:
SmithingMenu.h:63
RE::CraftingSubMenus::SmithingMenu::selectedIndex
std::int32_t selectedIndex
Definition:
SmithingMenu.h:65
RE::CraftingSubMenus::SmithingMenu::unk118
BSTHashMap< UnkKey, UnkValue > unk118
Definition:
SmithingMenu.h:62
RE::CraftingSubMenus::SmithingMenu::~SmithingMenu
~SmithingMenu() override
RE::CraftingSubMenus::SmithingMenu::ProcessUserEvent
bool ProcessUserEvent(BSFixedString *a_control) override
RE::CraftingSubMenus::SmithingMenu::unk160
InventoryEntryData * unk160
Definition:
SmithingMenu.h:68
RE::CraftingSubMenus::SmithingMenu::VTABLE
static constexpr auto VTABLE
Definition:
SmithingMenu.h:17
RE::CraftingSubMenus::SmithingMenu::Accept
void Accept(CallbackProcessor *a_cbReg) override
RE::CraftingSubMenus::SmithingMenu::smithingType
FormType smithingType
Definition:
SmithingMenu.h:66
RE::CraftingSubMenus::SmithingMenu::RTTI
static constexpr auto RTTI
Definition:
SmithingMenu.h:16
RE::CraftingSubMenus::SmithingMenu::unk15C
std::uint32_t unk15C
Definition:
SmithingMenu.h:67
RE::FxDelegateHandler::CallbackProcessor
Definition:
FxDelegateHandler.h:20
RE::IMessageBoxCallback
Definition:
IMessageBoxCallback.h:8
RE::IMessageBoxCallback::Message
Message
Definition:
IMessageBoxCallback.h:14
RE::InventoryEntryData
Definition:
InventoryEntryData.h:15
RE::NiPointer
Definition:
NiSmartPointer.h:9
RE::TESForm
Definition:
TESForm.h:36
RE::detail::BSFixedString< char >
RE
Definition:
AbsorbEffect.h:6
RE::RTTI_CraftingSubMenus__SmithingMenu__SmithingConfirmCallback
constexpr REL::ID RTTI_CraftingSubMenus__SmithingMenu__SmithingConfirmCallback(static_cast< std::uint64_t >(688812))
RE::VTABLE_CraftingSubMenus__SmithingMenu__SmithingConfirmCallback
constexpr std::array< REL::ID, 1 > VTABLE_CraftingSubMenus__SmithingMenu__SmithingConfirmCallback
Definition:
Offsets_VTABLE.h:11418
RE::FormType
FormType
Definition:
FormTypes.h:139
RE::RTTI_CraftingSubMenus__SmithingMenu
constexpr REL::ID RTTI_CraftingSubMenus__SmithingMenu(static_cast< std::uint64_t >(688811))
RE::VTABLE_CraftingSubMenus__SmithingMenu
constexpr std::array< REL::ID, 2 > VTABLE_CraftingSubMenus__SmithingMenu
Definition:
Offsets_VTABLE.h:11417
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry
Definition:
SmithingMenu.h:36
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::constructibleObject
BGSConstructibleObject * constructibleObject
Definition:
SmithingMenu.h:40
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk24
int unk24
Definition:
SmithingMenu.h:44
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk18
float unk18
Definition:
SmithingMenu.h:41
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk2A
std::byte unk2A
Definition:
SmithingMenu.h:47
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk29
std::byte unk29
Definition:
SmithingMenu.h:46
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk28
std::byte unk28
Definition:
SmithingMenu.h:45
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk08
std::int64_t unk08
Definition:
SmithingMenu.h:39
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::pad2C
std::uint32_t pad2C
Definition:
SmithingMenu.h:49
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::pad2B
std::byte pad2B
Definition:
SmithingMenu.h:48
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk20
int unk20
Definition:
SmithingMenu.h:43
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::item
TESForm * item
Definition:
SmithingMenu.h:38
RE::CraftingSubMenus::SmithingMenu::SmithingItemEntry::unk1C
float unk1C
Definition:
SmithingMenu.h:42
CommonLibSSE
include
RE
S
SmithingMenu.h
Generated by
1.9.1