CommonLibSSE (powerof3)
BGSDebris.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BGSPreloadable.h"
4 #include "RE/B/BSTArray.h"
5 #include "RE/B/BSTList.h"
6 #include "RE/F/FormTypes.h"
7 #include "RE/T/TESForm.h"
8 
9 namespace RE
10 {
11  namespace BSResource
12  {
13  struct ID;
14  }
15 
17  {
18  public:
19  enum class BGSDebrisDataFlags
20  {
21  kNone = 0,
22  kCollisionData = 1 << 0
23  };
24 
25  // members
26  std::int8_t percentage; // 00 - DATA~
28  std::uint16_t pad02; // 02
29  std::uint32_t pad04; // 04
30  const char* fileName; // 08
33  };
34  static_assert(sizeof(BGSDebrisData) == 0x40);
35 
36  class BGSDebris :
37  public TESForm, // 00
38  public BGSPreloadable // 20
39  {
40  public:
41  inline static constexpr auto RTTI = RTTI_BGSDebris;
42  inline static constexpr auto FORMTYPE = FormType::Debris;
43 
44  struct RecordFlags
45  {
46  enum RecordFlag : std::uint32_t
47  {
48  kDeleted = 1 << 5,
49  kIgnored = 1 << 12
50  };
51  };
52 
53  ~BGSDebris() override; // 00
54 
55  // override (TESForm)
56  void InitializeData() override; // 04 - { return; }
57  void ClearData() override; // 05
58  bool Load(TESFile* a_mod) override; // 06
59 
60  // members
62  };
63  static_assert(sizeof(BGSDebris) == 0x38);
64 }
Definition: BGSDebris.h:39
void ClearData() override
void InitializeData() override
BSSimpleList< BGSDebrisData * > data
Definition: BGSDebris.h:61
~BGSDebris() override
bool Load(TESFile *a_mod) override
static constexpr auto RTTI
Definition: BGSDebris.h:41
static constexpr auto FORMTYPE
Definition: BGSDebris.h:42
Definition: BGSPreloadable.h:8
Definition: BSTList.h:10
Definition: BSTArray.h:377
Definition: TESFile.h:14
Definition: TESForm.h:34
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSDebris
Definition: Offsets_RTTI.h:1278
Definition: BGSDebris.h:17
BGSDebrisDataFlags
Definition: BGSDebris.h:20
std::uint32_t pad04
Definition: BGSDebris.h:29
stl::enumeration< BGSDebrisDataFlags, std::uint8_t > flags
Definition: BGSDebris.h:27
std::uint16_t pad02
Definition: BGSDebris.h:28
BSTArray< std::uint32_t > addons
Definition: BGSDebris.h:32
std::int8_t percentage
Definition: BGSDebris.h:26
BSTArray< BSResource::ID > textureIDs
Definition: BGSDebris.h:31
const char * fileName
Definition: BGSDebris.h:30
Definition: BGSDebris.h:45
RecordFlag
Definition: BGSDebris.h:47
@ kIgnored
Definition: BGSDebris.h:49
@ kDeleted
Definition: BGSDebris.h:48