CommonLibSSE (powerof3)
ExtraFlags.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
class
ExtraFlags
:
public
BSExtraData
9
{
10
public
:
11
inline
static
constexpr
auto
RTTI
=
RTTI_ExtraFlags
;
12
inline
static
constexpr
auto
VTABLE
=
VTABLE_ExtraFlags
;
13
inline
static
constexpr
auto
EXTRADATATYPE
=
ExtraDataType::kFlags
;
14
15
enum class
Flag
16
{
17
kNone
= 0,
18
kBlockActivate
= 1 << 0,
19
kBlockPlayerActivate
= 1 << 1,
20
kBlockLoadEvents
= 1 << 2,
21
kBlockActivateText
= 1 << 3,
22
kPlayerHasTaken
= 1 << 5
23
};
24
25
~ExtraFlags
()
override
;
// 00
26
27
// override (BSExtraData)
28
[[nodiscard]]
ExtraDataType
GetType
()
const override
;
// 01 - { return kFlags; }
29
30
[[nodiscard]] constexpr
bool
IsActivationBlocked
() const noexcept {
return
flags
.
all
(
Flag::kBlockActivate
); }
31
32
// members
33
REX::EnumSet<Flag, std::uint32_t>
flags
;
// 10
34
std::uint32_t
pad14
;
// 14
35
};
36
static_assert(
sizeof
(
ExtraFlags
) == 0x18);
37
}
BSExtraData.h
ExtraDataTypes.h
REX::EnumSet< Flag, std::uint32_t >
REX::EnumSet::all
constexpr bool all(Args... a_args) const noexcept requires(std
Definition:
EnumSet.h:99
RE::BSExtraData
Definition:
BSExtraData.h:9
RE::ExtraFlags
Definition:
ExtraFlags.h:9
RE::ExtraFlags::VTABLE
static constexpr auto VTABLE
Definition:
ExtraFlags.h:12
RE::ExtraFlags::EXTRADATATYPE
static constexpr auto EXTRADATATYPE
Definition:
ExtraFlags.h:13
RE::ExtraFlags::~ExtraFlags
~ExtraFlags() override
RE::ExtraFlags::Flag
Flag
Definition:
ExtraFlags.h:16
RE::ExtraFlags::Flag::kNone
@ kNone
RE::ExtraFlags::Flag::kBlockActivate
@ kBlockActivate
RE::ExtraFlags::Flag::kBlockLoadEvents
@ kBlockLoadEvents
RE::ExtraFlags::Flag::kBlockPlayerActivate
@ kBlockPlayerActivate
RE::ExtraFlags::Flag::kBlockActivateText
@ kBlockActivateText
RE::ExtraFlags::Flag::kPlayerHasTaken
@ kPlayerHasTaken
RE::ExtraFlags::RTTI
static constexpr auto RTTI
Definition:
ExtraFlags.h:11
RE::ExtraFlags::flags
REX::EnumSet< Flag, std::uint32_t > flags
Definition:
ExtraFlags.h:33
RE::ExtraFlags::pad14
std::uint32_t pad14
Definition:
ExtraFlags.h:34
RE::ExtraFlags::GetType
ExtraDataType GetType() const override
RE::ExtraFlags::IsActivationBlocked
constexpr bool IsActivationBlocked() const noexcept
Definition:
ExtraFlags.h:30
RE
Definition:
AbsorbEffect.h:6
RE::VTABLE_ExtraFlags
constexpr std::array< REL::ID, 1 > VTABLE_ExtraFlags
Definition:
Offsets_VTABLE.h:11526
RE::RTTI_ExtraFlags
constexpr REL::ID RTTI_ExtraFlags(static_cast< std::uint64_t >(684698))
RE::ExtraDataType
ExtraDataType
Definition:
ExtraDataTypes.h:173
RE::ExtraDataType::kFlags
@ kFlags
CommonLibSSE
include
RE
E
ExtraFlags.h
Generated by
1.9.1