Skip to content

Commit 5d96ddb

Browse files
committed
feat: BGSPerk RE
1 parent 7d2f5b4 commit 5d96ddb

File tree

3 files changed

+68
-0
lines changed

3 files changed

+68
-0
lines changed
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#pragma once
2+
3+
namespace RE
4+
{
5+
class BGSLocalizedStringDL
6+
{
7+
public:
8+
// members
9+
std::uint32_t id; // 0
10+
};
11+
static_assert(sizeof(BGSLocalizedStringDL) == 0x4);
12+
}

CommonLibSF/include/RE/B/BGSPerk.h

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,36 @@
11
#pragma once
22

3+
#include "RE/B/BSTArray.h"
4+
#include "RE/T/TESDescription.h"
5+
#include "RE/T/TESForm.h"
6+
#include "RE/T/TESFullName.h"
7+
38
namespace RE
49
{
10+
class BGSPerk :
11+
public TESForm, // 00
12+
public TESFullName, // 38
13+
public TESDescription // 48
14+
{
15+
public:
16+
SF_RTTI_VTABLE(BGSPerk);
17+
SF_FORMTYPE(PERK);
18+
19+
~BGSPerk() override; // 00
20+
21+
// members
22+
std::uint16_t unk60; // 60
23+
std::uint8_t unk62; // 62
24+
std::uint8_t unk63; // 63
25+
std::uint8_t unk64; // 64
26+
std::uint64_t unk68; // 68
27+
BSFixedStringCS unk70; // 70
28+
BSFixedString perkIcon; // 78 - GNAM
29+
std::uint64_t unk80; // 80
30+
std::uint64_t unk88; // 88
31+
std::uint64_t unk90; // 90
32+
std::uint64_t unk98; // 98
33+
BSTArray<void*> unkA0; // A0
34+
};
35+
static_assert(sizeof(BGSPerk) == 0xB0);
536
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#pragma once
2+
3+
#include "RE/B/BGSLocalizedStringDL.h"
4+
#include "RE/B/BaseFormComponent.h"
5+
6+
namespace RE
7+
{
8+
class TESDescription : public BaseFormComponent
9+
{
10+
public:
11+
SF_RTTI_VTABLE(TESDescription);
12+
13+
~TESDescription() override; // 00
14+
15+
// override (BaseFormComponent)
16+
const BSFixedString& GetFormComponentType() const override; // 01 - { return "TESDescription_Component"; }
17+
void InitializeDataComponent() override; // 02
18+
19+
// members
20+
std::uint32_t fileOffset; // 08
21+
std::uint32_t chunkOffset; // 0C
22+
BGSLocalizedStringDL descriptionText; // 10
23+
};
24+
static_assert(sizeof(TESDescription) == 0x18);
25+
}

0 commit comments

Comments
 (0)