CommonLibSSE NG
Loading...
Searching...
No Matches
BGSImpactData.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/C/Color.h"
4#include "RE/D/DecalData.h"
5#include "RE/F/FormTypes.h"
7#include "RE/S/SoundLevels.h"
8#include "RE/T/TESForm.h"
9#include "RE/T/TESModel.h"
10
11namespace RE
12{
14 public TESForm, // 00
15 public TESModel // 20
16 {
17 public:
18 inline static constexpr auto RTTI = RTTI_BGSImpactData;
19 inline static constexpr auto VTABLE = VTABLE_BGSImpactData;
20 inline static constexpr auto FORMTYPE = FormType::Impact;
21
22 enum class ORIENTATION
23 {
25 kProjVector = 1,
26 kProjReflect = 2
27 };
28
30 {
31 enum RecordFlag : std::uint32_t
32 {
33 kDeleted = 1 << 5,
34 kIgnored = 1 << 12
35 };
36 };
37
38 struct IMPACT_DATA_DATA // DATA
39 {
40 enum class Flag
41 {
42 kNone = 0,
43 kNoDecalData = 1 << 0
44 };
45
46 float effectDuration; // 00
48 float angleThreshold; // 08
49 float placementRadius; // 0C
53 std::uint16_t unk16; // 16
54 };
55 static_assert(sizeof(IMPACT_DATA_DATA) == 0x18);
56
57 ~BGSImpactData() override; // 00
58
59 // override (TESForm)
60 void InitializeData() override; // 04
61 bool Load(TESFile* a_mod) override; // 06
62 void InitItemImpl() override; // 13
63
64 // members
65 IMPACT_DATA_DATA data; // 48 - DATA
70 BGSHazard* hazard; // 80 - NAM2
71 DecalData dData; // 88 - DODT
72 std::uint32_t padAC; // AC
73 };
74 static_assert(sizeof(BGSImpactData) == 0xB0);
75}
Definition BGSHazard.h:44
Definition BGSImpactData.h:16
static constexpr auto RTTI
Definition BGSImpactData.h:18
BGSSoundDescriptorForm * sound2
Definition BGSImpactData.h:69
static constexpr auto VTABLE
Definition BGSImpactData.h:19
void InitializeData() override
BGSTextureSet * decalTextureSet2
Definition BGSImpactData.h:67
~BGSImpactData() override
BGSTextureSet * decalTextureSet
Definition BGSImpactData.h:66
void InitItemImpl() override
ORIENTATION
Definition BGSImpactData.h:23
DecalData dData
Definition BGSImpactData.h:71
BGSSoundDescriptorForm * sound1
Definition BGSImpactData.h:68
std::uint32_t padAC
Definition BGSImpactData.h:72
static constexpr auto FORMTYPE
Definition BGSImpactData.h:20
IMPACT_DATA_DATA data
Definition BGSImpactData.h:65
BGSHazard * hazard
Definition BGSImpactData.h:70
bool Load(TESFile *a_mod) override
Definition BGSSoundDescriptorForm.h:14
Definition BGSTextureSet.h:16
Definition TESFile.h:15
Definition TESForm.h:35
Definition TESModel.h:16
Definition PCH.h:223
Definition AbsorbEffect.h:6
SOUND_LEVEL
Definition SoundLevels.h:6
constexpr REL::VariantID RTTI_BGSImpactData(685238, 393010, 0x1ee2138)
constexpr std::array< REL::VariantID, 2 > VTABLE_BGSImpactData
Definition Offsets_VTABLE.h:720
Definition BGSImpactData.h:39
SOUND_LEVEL soundLevel
Definition BGSImpactData.h:50
float placementRadius
Definition BGSImpactData.h:49
std::uint16_t unk16
Definition BGSImpactData.h:53
stl::enumeration< ORIENTATION, std::uint32_t > orient
Definition BGSImpactData.h:47
stl::enumeration< ImpactResult, std::uint8_t > resultOverride
Definition BGSImpactData.h:52
float effectDuration
Definition BGSImpactData.h:46
stl::enumeration< Flag, std::uint8_t > flags
Definition BGSImpactData.h:51
float angleThreshold
Definition BGSImpactData.h:48
Flag
Definition BGSImpactData.h:41
Definition BGSImpactData.h:30
RecordFlag
Definition BGSImpactData.h:32
@ kIgnored
Definition BGSImpactData.h:34
@ kDeleted
Definition BGSImpactData.h:33
Definition DecalData.h:33