CommonLibSSE (powerof3)
BGSCollisionLayer.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSFixedString.h"
4 #include "RE/B/BSTArray.h"
5 #include "RE/C/Color.h"
6 #include "RE/F/FormTypes.h"
7 #include "RE/T/TESDescription.h"
8 #include "RE/T/TESForm.h"
9 
10 namespace RE
11 {
13  public TESForm, // 00
14  public TESDescription // 20
15  {
16  public:
17  inline static constexpr auto RTTI = RTTI_BGSCollisionLayer;
18  inline static constexpr auto FORMTYPE = FormType::CollisionLayer;
19 
20  enum class FLAG // GNAM
21  {
22  kNone = 0,
23  kTriggerVolume = 1 << 0,
24  kSensor = 1 << 1,
25  kNavmeshObstacle = 1 << 2
26  };
27 
28  struct RecordFlags
29  {
30  enum RecordFlag : std::uint32_t
31  {
32  kDeleted = 1 << 5,
33  kIgnored = 1 << 12
34  };
35  };
36 
37  ~BGSCollisionLayer() override; // 00
38 
39  // override (TESForm)
40  void ClearData() override; // 05
41  bool Load(TESFile* a_mod) override; // 06
42  void InitItemImpl() override; // 13
43  void SetDelete(bool a_set) override; // 23 - { TESForm::SetDelete(a_set); }
44 
45  // members
46  std::uint32_t collisionIdx; // 30 - BNAM
47  Color debugColor; // 34 - FNAM
49  std::uint32_t pad3C; // 3C
50  BSFixedString name; // 40 - MNAM
52  };
53  static_assert(sizeof(BGSCollisionLayer) == 0x60);
54 }
Definition: BGSCollisionLayer.h:15
Color debugColor
Definition: BGSCollisionLayer.h:47
static constexpr auto RTTI
Definition: BGSCollisionLayer.h:17
~BGSCollisionLayer() override
FLAG
Definition: BGSCollisionLayer.h:21
void ClearData() override
std::uint32_t pad3C
Definition: BGSCollisionLayer.h:49
BSFixedString name
Definition: BGSCollisionLayer.h:50
std::uint32_t collisionIdx
Definition: BGSCollisionLayer.h:46
bool Load(TESFile *a_mod) override
void InitItemImpl() override
void SetDelete(bool a_set) override
stl::enumeration< FLAG, std::uint32_t > flags
Definition: BGSCollisionLayer.h:48
BSTArray< BGSCollisionLayer * > collidesWith
Definition: BGSCollisionLayer.h:51
static constexpr auto FORMTYPE
Definition: BGSCollisionLayer.h:18
Definition: BSTArray.h:377
Definition: TESDescription.h:12
Definition: TESFile.h:14
Definition: TESForm.h:34
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSCollisionLayer
Definition: Offsets_RTTI.h:1275
Definition: BGSCollisionLayer.h:29
RecordFlag
Definition: BGSCollisionLayer.h:31
@ kDeleted
Definition: BGSCollisionLayer.h:32
@ kIgnored
Definition: BGSCollisionLayer.h:33
Definition: Color.h:6