CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
ExtraAction.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSExtraData.h"
5
6namespace 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 VTABLE = VTABLE_ExtraAction;
24 inline static constexpr auto EXTRADATATYPE = ExtraDataType::kAction;
25
26 ~ExtraAction() override; // 00
27
28 // override (BSExtraData)
29 ExtraDataType GetType() const override; // 01 - { return kAction; }
30 bool IsNotEqual(const BSExtraData* a_rhs) const override; // 02 - { return unk10 != a_rhs->unk10; }
31
32 // members
34 std::uint8_t pad11; // 11
35 std::uint16_t pad12; // 12
36 std::uint32_t pad14; // 14
38 };
39 static_assert(sizeof(ExtraAction) == 0x20);
40}
Definition EnumSet.h:9
Definition BSExtraData.h:9
Definition ExtraAction.h:20
std::uint8_t pad11
Definition ExtraAction.h:34
static constexpr auto VTABLE
Definition ExtraAction.h:23
TESObjectREFR * actionRef
Definition ExtraAction.h:37
ExtraDataType GetType() const override
static constexpr auto EXTRADATATYPE
Definition ExtraAction.h:24
REX::EnumSet< OBJECT_ACTION, std::int8_t > action
Definition ExtraAction.h:33
~ExtraAction() override
std::uint16_t pad12
Definition ExtraAction.h:35
bool IsNotEqual(const BSExtraData *a_rhs) const override
std::uint32_t pad14
Definition ExtraAction.h:36
static constexpr auto RTTI
Definition ExtraAction.h:22
Definition TESObjectREFR.h:114
Definition AbsorbEffect.h:6
constexpr REL::ID RTTI_ExtraAction(static_cast< std::uint64_t >(684774))
constexpr std::array< REL::ID, 1 > VTABLE_ExtraAction
Definition Offsets_VTABLE.h:11476
OBJECT_ACTION
Definition ExtraAction.h:9
ExtraDataType
Definition ExtraDataTypes.h:173