CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
BGSHazard.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/F/FormTypes.h"
6#include "RE/T/TESFullName.h"
8#include "RE/T/TESModel.h"
9
10namespace RE
11{
12 struct BGSHazardData // DATA
13 {
14 public:
15 enum class BGSHazardFlags
16 {
17 kNone = 0,
18 kPCOnly = 1 << 0,
19 kInheritDuration = 1 << 1,
20 kAlignToNormal = 1 << 2,
21 kInheritRadius = 1 << 3,
22 kDropToGround = 1 << 4
23 };
24
25 std::uint32_t limit; // 00
26 float radius; // 04
27 float lifetime; // 08
28 float imageSpaceRadius; // 0C
29 float targetInterval; // 10
35 };
36 static_assert(sizeof(BGSHazardData) == 0x38);
37
38 class BGSHazard :
39 public TESBoundObject, // 00
40 public TESFullName, // 30
41 public TESModel, // 40
42 public BGSPreloadable, // 68
44 {
45 public:
46 inline static constexpr auto RTTI = RTTI_BGSHazard;
47 inline static constexpr auto FORMTYPE = FormType::Hazard;
48
50 {
51 enum RecordFlag : std::uint32_t
52 {
53 kDeleted = 1 << 5,
54 kIgnored = 1 << 12
55 };
56 };
57
58 ~BGSHazard() override; // 00
59
60 // override (TESBoundObject)
61 void InitializeData() override; // 04
62 bool Load(TESFile* a_mod) override; // 06
63 void InitItemImpl() override; // 13
64
65 // members
66 BGSHazardData data; // 80 - DATA
67 };
68 static_assert(sizeof(BGSHazard) == 0xB8);
69}
Definition: BGSHazard.h:44
bool Load(TESFile *a_mod) override
void InitializeData() override
~BGSHazard() override
static constexpr auto RTTI
Definition: BGSHazard.h:46
static constexpr auto FORMTYPE
Definition: BGSHazard.h:47
void InitItemImpl() override
BGSHazardData data
Definition: BGSHazard.h:66
Definition: BGSImpactDataSet.h:13
Definition: BGSPreloadable.h:8
Definition: BGSSoundDescriptorForm.h:14
Definition: SpellItem.h:16
Definition: TESBoundObject.h:24
Definition: TESFile.h:14
Definition: TESFullName.h:9
Definition: TESImageSpaceModifiableForm.h:10
Definition: TESModel.h:16
Definition: TESObjectLIGH.h:64
Definition: PCH.h:216
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSHazard
Definition: Offsets_RTTI.h:1306
Definition: BGSHazard.h:50
RecordFlag
Definition: BGSHazard.h:52
@ kDeleted
Definition: BGSHazard.h:53
@ kIgnored
Definition: BGSHazard.h:54
Definition: BGSHazard.h:13
TESObjectLIGH * light
Definition: BGSHazard.h:32
stl::enumeration< BGSHazardFlags, std::uint32_t > flags
Definition: BGSHazard.h:30
std::uint32_t limit
Definition: BGSHazard.h:25
BGSImpactDataSet * impactDataSet
Definition: BGSHazard.h:33
float lifetime
Definition: BGSHazard.h:27
float targetInterval
Definition: BGSHazard.h:29
float radius
Definition: BGSHazard.h:26
float imageSpaceRadius
Definition: BGSHazard.h:28
BGSHazardFlags
Definition: BGSHazard.h:16
SpellItem * spell
Definition: BGSHazard.h:31
BGSSoundDescriptorForm * sound
Definition: BGSHazard.h:34