CommonLibSSE NG
BGSPerkRankArray.h
Go to the documentation of this file.
1 #pragma once
2 
4 #include "RE/M/MemoryManager.h"
5 
6 namespace RE
7 {
8  class BGSPerk;
9 
10  struct PerkRankData // PRKR
11  {
13  PerkRankData(BGSPerk* a_perk, std::int8_t a_rank);
14 
15  ~PerkRankData() = default;
16 
18 
19  BGSPerk* perk; // 00
20  std::int8_t currentRank; // 08
21  std::uint8_t pad09; // 09
22  std::uint16_t pad0A; // 0A
23  std::uint32_t pad0C; // 0C
24  };
25  static_assert(sizeof(PerkRankData) == 0x10);
26 
28  {
29  public:
30  inline static constexpr auto RTTI = RTTI_BGSPerkRankArray;
31 
32  ~BGSPerkRankArray() override; // 00
33 
34  // override (BaseFormComponent)
35  void InitializeDataComponent() override; // 01 - { return; }
36  void ClearDataComponent() override; // 02
37  void CopyComponent(BaseFormComponent* rhs) override; // 03
38 
39  // members
40  PerkRankData* perks; // 08 - PRKR
41  std::uint32_t perkCount; // 10 - PRKZ
42  std::uint32_t pad14; // 14
43  };
44  static_assert(sizeof(BGSPerkRankArray) == 0x18);
45 }
Definition: BGSPerkRankArray.h:28
~BGSPerkRankArray() override
void ClearDataComponent() override
PerkRankData * perks
Definition: BGSPerkRankArray.h:40
static constexpr auto RTTI
Definition: BGSPerkRankArray.h:30
std::uint32_t pad14
Definition: BGSPerkRankArray.h:42
void InitializeDataComponent() override
std::uint32_t perkCount
Definition: BGSPerkRankArray.h:41
void CopyComponent(BaseFormComponent *rhs) override
Definition: BGSPerk.h:31
Definition: BaseFormComponent.h:8
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BGSPerkRankArray(513934, 392574, 0x1edb2b0)
Definition: BGSPerkRankArray.h:11
std::uint16_t pad0A
Definition: BGSPerkRankArray.h:22
std::uint8_t pad09
Definition: BGSPerkRankArray.h:21
PerkRankData(BGSPerk *a_perk, std::int8_t a_rank)
std::int8_t currentRank
Definition: BGSPerkRankArray.h:20
std::uint32_t pad0C
Definition: BGSPerkRankArray.h:23
~PerkRankData()=default
BGSPerk * perk
Definition: BGSPerkRankArray.h:19