CommonLibSSE NG
Loading...
Searching...
No Matches
ExtraFlags.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSExtraData.h"
5
6namespace RE
7{
8 class ExtraFlags : public BSExtraData
9 {
10 public:
11 inline static constexpr auto RTTI = RTTI_ExtraFlags;
13
14 enum class Flag
15 {
16 kNone = 0,
17 kBlockActivate = 1 << 0,
18 kBlockPlayerActivate = 1 << 1,
19 kBlockLoadEvents = 1 << 2,
20 kBlockActivateText = 1 << 3,
21 kPlayerHasTaken = 1 << 5
22 };
23
24 ~ExtraFlags() override; // 00
25
26 // override (BSExtraData)
27 [[nodiscard]] ExtraDataType GetType() const override; // 01 - { return kFlags; }
28
29 [[nodiscard]] constexpr bool IsActivationBlocked() const noexcept { return flags.all(Flag::kBlockActivate); }
30
31 // members
33 std::uint32_t pad14; // 14
34 };
35 static_assert(sizeof(ExtraFlags) == 0x18);
36}
Definition BSExtraData.h:9
Definition ExtraFlags.h:9
~ExtraFlags() override
Flag
Definition ExtraFlags.h:15
static constexpr auto RTTI
Definition ExtraFlags.h:11
std::uint32_t pad14
Definition ExtraFlags.h:33
ExtraDataType GetType() const override
stl::enumeration< Flag, std::uint32_t > flags
Definition ExtraFlags.h:32
constexpr bool IsActivationBlocked() const noexcept
Definition ExtraFlags.h:29
static auto EXTRADATATYPE
Definition ExtraFlags.h:12
Definition PCH.h:223
constexpr bool all(Args... a_args) const noexcept
Definition PCH.h:296
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_ExtraFlags(684698, 392365, 0x1ed8a80)
ExtraDataType
Definition ExtraDataTypes.h:173