CommonLibSSE NG
Loading...
Searching...
No Matches
BGSCameraShot.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/F/FormTypes.h"
4#include "RE/T/TESForm.h"
6#include "RE/T/TESModel.h"
7
8namespace RE
9{
11 public TESForm, // 00
12 public TESModel, // 20
14 {
15 public:
16 inline static constexpr auto RTTI = RTTI_BGSCameraShot;
17 inline static constexpr auto VTABLE = VTABLE_BGSCameraShot;
18 inline static constexpr auto FORMTYPE = FormType::CameraShot;
19
20 enum class CAM_ACTION
21 {
22 kShoot = 0,
23 kFly = 1,
24 kHit = 2,
25 kZoom = 3
26 };
27
28 enum class CAM_OBJECT
29 {
30 kAttacker = 0,
31 kProjectile = 1,
32 kTarget = 2,
33 kLeadActor = 3
34 };
35
37 {
38 enum RecordFlag : std::uint32_t
39 {
40 kDeleted = 1 << 5,
41 kIgnored = 1 << 12
42 };
43 };
44
45 struct CAMERA_SHOT_DATA // DATA
46 {
47 public:
48 enum class Flag
49 {
50 kNone = 0,
53 kDontFollowBone = 1 << 2,
54 kFirstPersonCamera = 1 << 3,
55 kNoTracer = 1 << 4,
56 kStartAtTimeZero = 1 << 5
57 };
58
59 // members
64 float playerTimeMult; // 10
65 float targetTimeMult; // 14
66 float globalTimeMult; // 18
67 float maxTime; // 1C
68 float minTime; // 20
70 float nearTargetDistance; // 28
71 };
72 static_assert(sizeof(CAMERA_SHOT_DATA) == 0x2C);
73
74 ~BGSCameraShot() override; // 00
75
76 // override (TESForm)
77 void InitializeData() override; // 04
78 bool Load(TESFile* a_mod) override; // 06
79 void InitItemImpl() override; // 13
80
81 // members
82 CAMERA_SHOT_DATA data; // 58 - DATA
83 std::uint32_t pad84; // 84
84 void* unk88; // 88 - smart ptr
85 void* unk90; // 90 - smart ptr
87 std::uint32_t unk9C; // 9C
88 void* unkA0; // A0 - smart ptr
89 NiPointer<NiAVObject> unkA8; // A8 - smart ptr
90 std::uint8_t unkB0; // B0
91 bool unkB1; // B1
92 std::uint16_t padB2; // B2
93 std::uint32_t padB4; // B4
94 void* unkB8; // B8
95 };
96 static_assert(sizeof(BGSCameraShot) == 0xC0);
97}
Definition BGSCameraShot.h:14
RefHandle unk98
Definition BGSCameraShot.h:86
std::uint16_t padB2
Definition BGSCameraShot.h:92
void * unk90
Definition BGSCameraShot.h:85
~BGSCameraShot() override
void InitItemImpl() override
void * unkA0
Definition BGSCameraShot.h:88
std::uint8_t unkB0
Definition BGSCameraShot.h:90
bool Load(TESFile *a_mod) override
static constexpr auto FORMTYPE
Definition BGSCameraShot.h:18
std::uint32_t unk9C
Definition BGSCameraShot.h:87
std::uint32_t pad84
Definition BGSCameraShot.h:83
void * unkB8
Definition BGSCameraShot.h:94
CAM_ACTION
Definition BGSCameraShot.h:21
CAM_OBJECT
Definition BGSCameraShot.h:29
void InitializeData() override
CAMERA_SHOT_DATA data
Definition BGSCameraShot.h:82
static constexpr auto VTABLE
Definition BGSCameraShot.h:17
static constexpr auto RTTI
Definition BGSCameraShot.h:16
NiPointer< NiAVObject > unkA8
Definition BGSCameraShot.h:89
bool unkB1
Definition BGSCameraShot.h:91
std::uint32_t padB4
Definition BGSCameraShot.h:93
void * unk88
Definition BGSCameraShot.h:84
Definition NiSmartPointer.h:9
Definition TESFile.h:15
Definition TESForm.h:35
Definition TESImageSpaceModifiableForm.h:10
Definition TESModel.h:16
Definition PCH.h:223
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BGSCameraShot(513991, 392987, 0x1ee1b40)
constexpr std::array< REL::VariantID, 3 > VTABLE_BGSCameraShot
Definition Offsets_VTABLE.h:704
std::uint32_t RefHandle
Definition BSCoreTypes.h:6
Definition BGSCameraShot.h:46
Flag
Definition BGSCameraShot.h:49
float targetPercentBetweenActors
Definition BGSCameraShot.h:69
float targetTimeMult
Definition BGSCameraShot.h:65
stl::enumeration< CAM_OBJECT, std::uint32_t > target
Definition BGSCameraShot.h:62
stl::enumeration< Flag, std::uint32_t > flags
Definition BGSCameraShot.h:63
float globalTimeMult
Definition BGSCameraShot.h:66
float nearTargetDistance
Definition BGSCameraShot.h:70
stl::enumeration< CAM_ACTION, std::uint32_t > cameraAction
Definition BGSCameraShot.h:60
float maxTime
Definition BGSCameraShot.h:67
stl::enumeration< CAM_OBJECT, std::uint32_t > location
Definition BGSCameraShot.h:61
float minTime
Definition BGSCameraShot.h:68
float playerTimeMult
Definition BGSCameraShot.h:64
Definition BGSCameraShot.h:37
RecordFlag
Definition BGSCameraShot.h:39
@ kDeleted
Definition BGSCameraShot.h:40
@ kIgnored
Definition BGSCameraShot.h:41