CommonLibSSE (powerof3)
BGSMovableStatic.h
Go to the documentation of this file.
1 #pragma once
2 
4 #include "RE/F/FormTypes.h"
5 #include "RE/T/TESFullName.h"
6 #include "RE/T/TESObjectSTAT.h"
7 
8 namespace RE
9 {
11  {
12  public:
13  enum class Flag
14  {
15  kNone = 0,
16  kOnLocalMap = 1 << 0
17  };
18 
19  // members
21  };
22  static_assert(sizeof(MOVABLE_STATIC_DATA) == 0x1);
23 
25  public TESFullName, // 00
26  public BGSDestructibleObjectForm, // 10
27  public TESObjectSTAT // 20
28  {
29  public:
30  inline static constexpr auto RTTI = RTTI_BGSMovableStatic;
31  inline static constexpr auto VTABLE = VTABLE_BGSMovableStatic;
32  inline static constexpr auto FORMTYPE = FormType::MovableStatic;
33 
34  struct RecordFlags
35  {
36  enum RecordFlag : std::uint32_t
37  {
38  kDeleted = 1 << 5,
39  kMustUpdateAnims = 1 << 8,
41  kIgnored = 1 << 12,
42  kHasDistantLOD = 1 << 15,
43  kRandomAnimStart = 1 << 16,
44  kHasCurrents = 1 << 19,
45  kObstacle = 1 << 25,
49  };
50  };
51 
52  ~BGSMovableStatic() override; // 00
53 
54  // override (TESObjectSTAT)
55  void InitializeData() override; // 04
56  bool Load(TESFile* a_mod) override; // 06
57  void InitItemImpl() override; // 13
58 
59  // members
62  std::uint8_t padA9; // A9
63  std::uint16_t padAA; // AA
64  std::uint32_t padAC; // AC
65  };
66  static_assert(sizeof(BGSMovableStatic) == 0xB0);
67 }
Definition: BGSDestructibleObjectForm.h:61
Definition: BGSMovableStatic.h:28
~BGSMovableStatic() override
std::uint32_t padAC
Definition: BGSMovableStatic.h:64
static constexpr auto VTABLE
Definition: BGSMovableStatic.h:31
MOVABLE_STATIC_DATA data
Definition: BGSMovableStatic.h:61
static constexpr auto FORMTYPE
Definition: BGSMovableStatic.h:32
std::uint16_t padAA
Definition: BGSMovableStatic.h:63
void InitializeData() override
BGSSoundDescriptorForm * soundLoop
Definition: BGSMovableStatic.h:60
static constexpr auto RTTI
Definition: BGSMovableStatic.h:30
bool Load(TESFile *a_mod) override
void InitItemImpl() override
std::uint8_t padA9
Definition: BGSMovableStatic.h:62
Definition: BGSSoundDescriptorForm.h:14
Definition: TESFile.h:17
Definition: TESFullName.h:9
Definition: TESObjectSTAT.h:30
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 4 > VTABLE_BGSMovableStatic
Definition: Offsets_VTABLE.h:8654
constexpr REL::ID RTTI_BGSMovableStatic(static_cast< std::uint64_t >(685024))
Definition: BGSMovableStatic.h:35
RecordFlag
Definition: BGSMovableStatic.h:37
@ kHasDistantLOD
Definition: BGSMovableStatic.h:42
@ kRandomAnimStart
Definition: BGSMovableStatic.h:43
@ kNavMeshGeneration_BoundingBox
Definition: BGSMovableStatic.h:47
@ kHiddenFromLocalMap
Definition: BGSMovableStatic.h:40
@ kHasCurrents
Definition: BGSMovableStatic.h:44
@ kNavMeshGeneration_Filter
Definition: BGSMovableStatic.h:46
@ kIgnored
Definition: BGSMovableStatic.h:41
@ kMustUpdateAnims
Definition: BGSMovableStatic.h:39
@ kNavMeshGeneration_Ground
Definition: BGSMovableStatic.h:48
@ kDeleted
Definition: BGSMovableStatic.h:38
@ kObstacle
Definition: BGSMovableStatic.h:45
Definition: BGSMovableStatic.h:11
Flag
Definition: BGSMovableStatic.h:14
REX::EnumSet< Flag, std::uint8_t > flags
Definition: BGSMovableStatic.h:20