CommonLibSSE (Parapets fork)
ExtraAction.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSExtraData.h"
4 #include "RE/E/ExtraDataTypes.h"
5 
6 namespace RE
7 {
8  enum class OBJECT_ACTION
9  {
10  kNone = 0,
11  kUseDefault = 1 << 0,
12  kActivate = 1 << 1,
13  kOpen = 1 << 2,
14  kOpenByDefault = 1 << 3
15  };
16 
17  class TESObjectREFR;
18 
19  class ExtraAction : public BSExtraData
20  {
21  public:
22  inline static constexpr auto RTTI = RTTI_ExtraAction;
23  inline static constexpr auto EXTRADATATYPE = ExtraDataType::kAction;
24 
25  ~ExtraAction() override; // 00
26 
27  // override (BSExtraData)
28  ExtraDataType GetType() const override; // 01 - { return kAction; }
29  bool IsNotEqual(const BSExtraData* a_rhs) const override; // 02 - { return unk10 != a_rhs->unk10; }
30 
31  // members
33  std::uint8_t pad11; // 11
34  std::uint16_t pad12; // 12
35  std::uint32_t pad14; // 14
37  };
38  static_assert(sizeof(ExtraAction) == 0x20);
39 }
Definition: BSExtraData.h:9
Definition: ExtraAction.h:20
std::uint8_t pad11
Definition: ExtraAction.h:33
TESObjectREFR * actionRef
Definition: ExtraAction.h:36
ExtraDataType GetType() const override
static constexpr auto EXTRADATATYPE
Definition: ExtraAction.h:23
~ExtraAction() override
std::uint16_t pad12
Definition: ExtraAction.h:34
bool IsNotEqual(const BSExtraData *a_rhs) const override
stl::enumeration< OBJECT_ACTION, std::int8_t > action
Definition: ExtraAction.h:32
std::uint32_t pad14
Definition: ExtraAction.h:35
static constexpr auto RTTI
Definition: ExtraAction.h:22
Definition: TESObjectREFR.h:105
Definition: AbsorbEffect.h:6
OBJECT_ACTION
Definition: ExtraAction.h:9
ExtraDataType
Definition: ExtraDataTypes.h:173
constexpr REL::ID RTTI_ExtraAction
Definition: Offsets_RTTI.h:4621