CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
TESCustomPackageData.h
Go to the documentation of this file.
1#pragma once
2
5#include "RE/B/BSTArray.h"
8
9namespace RE
10{
11 class IPackageData;
12 class IProcedureTreeItem;
13 class TESPackage;
14
16 {
18 std::int8_t* uids; // 08
19 std::uint16_t dataSize; // 10
20 std::int8_t nextUID; // 12 - XNAM
21 std::uint8_t pad13; // 13
22 std::uint32_t pad14; // 14
23 };
24 static_assert(sizeof(BGSPackageDataList) == 0x18);
25
27 {
28 public:
30 {
31 public:
32 enum class Flag
33 {
34 kNone = 0,
35 kPublic = 1 << 0
36 };
37
38 // members
39 BSFixedString name; // 00 - BNAM
40 std::int8_t uid; // 08 - UNAM
41 bool isPublic; // 09 - PNAM
42 std::uint8_t pad0A; // 0A
43 std::uint8_t pad0B; // 0B
44 std::uint32_t pad0C; // 0C
45 };
46 static_assert(sizeof(NameMapData) == 0x10);
47
48 // members
49 std::uint32_t pad04; // 04
51 };
52 static_assert(sizeof(BGSPackageDataNameMap) == 0x20);
53
55 {
56 public:
57 inline static constexpr auto RTTI = RTTI_TESCustomPackageData;
58 inline static constexpr auto VTABLE = VTABLE_TESCustomPackageData;
59
60 ~TESCustomPackageData() override; // 00
61
62 // override (TESPackageData)
63 void Copy(TESPackageData* a_package, TESForm* a_form) override; // 01
64 void InitItem(TESForm* a_form) override; // 03
65 void SaveGame(BGSSaveFormBuffer* a_buf) override; // 04 - { return; }
66 void LoadGame(BGSLoadFormBuffer* a_buf) override; // 05 - { return; }
67
68 // members
73 std::uint16_t version; // 38
75 std::uint8_t pad3B; // 3B
76 std::uint32_t pad3C; // 3C
77 };
78 static_assert(sizeof(TESCustomPackageData) == 0x40);
79}
Definition BGSLoadFormBuffer.h:11
Definition BGSSaveFormBuffer.h:8
Definition BSTArray.h:378
Definition BSTSmartPointer.h:37
Definition IPackageData.h:12
Definition IProcedureTreeItem.h:8
Definition TESCustomPackageData.h:55
~TESCustomPackageData() override
bool alwaysRecheckConditions
Definition TESCustomPackageData.h:74
std::uint16_t version
Definition TESCustomPackageData.h:73
static constexpr auto RTTI
Definition TESCustomPackageData.h:57
void LoadGame(BGSLoadFormBuffer *a_buf) override
void Copy(TESPackageData *a_package, TESForm *a_form) override
std::uint32_t pad3C
Definition TESCustomPackageData.h:76
void SaveGame(BGSSaveFormBuffer *a_buf) override
void InitItem(TESForm *a_form) override
TESPackage * templateParent
Definition TESCustomPackageData.h:72
std::uint8_t pad3B
Definition TESCustomPackageData.h:75
BSTSmartPointer< BGSPackageDataNameMap > nameMap
Definition TESCustomPackageData.h:71
BGSPackageDataList data
Definition TESCustomPackageData.h:69
IProcedureTreeItem * procedureTree
Definition TESCustomPackageData.h:70
static constexpr auto VTABLE
Definition TESCustomPackageData.h:58
Definition TESForm.h:36
Definition TESPackageData.h:10
Definition TESPackage.h:310
Definition AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_TESCustomPackageData
Definition Offsets_VTABLE.h:12816
constexpr REL::ID RTTI_TESCustomPackageData(static_cast< std::uint64_t >(686030))
Definition TESCustomPackageData.h:16
std::int8_t * uids
Definition TESCustomPackageData.h:18
IPackageData ** data
Definition TESCustomPackageData.h:17
std::uint16_t dataSize
Definition TESCustomPackageData.h:19
std::uint8_t pad13
Definition TESCustomPackageData.h:21
std::int8_t nextUID
Definition TESCustomPackageData.h:20
std::uint32_t pad14
Definition TESCustomPackageData.h:22
Definition TESCustomPackageData.h:30
Flag
Definition TESCustomPackageData.h:33
std::int8_t uid
Definition TESCustomPackageData.h:40
std::uint32_t pad0C
Definition TESCustomPackageData.h:44
std::uint8_t pad0B
Definition TESCustomPackageData.h:43
BSFixedString name
Definition TESCustomPackageData.h:39
bool isPublic
Definition TESCustomPackageData.h:41
std::uint8_t pad0A
Definition TESCustomPackageData.h:42
Definition TESCustomPackageData.h:27
BSTArray< NameMapData > nameMap
Definition TESCustomPackageData.h:50
std::uint32_t pad04
Definition TESCustomPackageData.h:49
Definition BSIntrusiveRefCounted.h:8