CommonLibSSE (powerof3)
BGSIdleMarker.h
Go to the documentation of this file.
1 #pragma once
2 
4 #include "RE/F/FormTypes.h"
5 #include "RE/T/TESBoundObject.h"
6 #include "RE/T/TESModel.h"
7 
8 namespace RE
9 {
10  class BGSIdleMarker :
11  public TESBoundObject, // 00
12  public TESModel, // 30
13  public BGSIdleCollection // 58
14  {
15  public:
16  inline static constexpr auto RTTI = RTTI_BGSIdleMarker;
17  inline static constexpr auto VTABLE = VTABLE_BGSIdleMarker;
18  inline static constexpr auto FORMTYPE = FormType::IdleMarker;
19 
20  struct RecordFlags
21  {
22  enum RecordFlag : std::uint32_t
23  {
24  kDeleted = 1 << 5,
25  kIgnored = 1 << 12,
26  kChildCanUse = 1 << 29
27  };
28  };
29 
30  ~BGSIdleMarker() override; // 00
31 
32  // override (TESBoundObject)
33  bool Load(TESFile* a_mod) override; // 06
34  void InitItemImpl() override; // 13
35  bool GetIgnoredBySandbox() const override; // 22 - { return (BGSIdleCollection::flags >> 4) & 1; }
36  void UnClone3D(TESObjectREFR* a_ref) override; // 41
37  NiAVObject* Clone3D(TESObjectREFR* a_ref) override; // 4A
38  };
39  static_assert(sizeof(BGSIdleMarker) == 0x78);
40 }
Definition: BGSIdleCollection.h:10
Definition: BGSIdleMarker.h:14
NiAVObject * Clone3D(TESObjectREFR *a_ref) override
void InitItemImpl() override
static constexpr auto VTABLE
Definition: BGSIdleMarker.h:17
void UnClone3D(TESObjectREFR *a_ref) override
bool GetIgnoredBySandbox() const override
~BGSIdleMarker() override
static constexpr auto FORMTYPE
Definition: BGSIdleMarker.h:18
static constexpr auto RTTI
Definition: BGSIdleMarker.h:16
bool Load(TESFile *a_mod) override
Definition: NiAVObject.h:51
Definition: TESBoundObject.h:24
Definition: TESFile.h:17
Definition: TESModel.h:16
Definition: TESObjectREFR.h:114
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSIdleMarker(static_cast< std::uint64_t >(685379))
constexpr std::array< REL::ID, 3 > VTABLE_BGSIdleMarker
Definition: Offsets_VTABLE.h:8632
Definition: BGSIdleMarker.h:21
RecordFlag
Definition: BGSIdleMarker.h:23
@ kIgnored
Definition: BGSIdleMarker.h:25
@ kDeleted
Definition: BGSIdleMarker.h:24
@ kChildCanUse
Definition: BGSIdleMarker.h:26