CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
BeamProjectile.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSTEvent.h"
4#include "RE/F/FormTypes.h"
5#include "RE/P/Projectile.h"
6
7namespace RE
8{
9 class BSProceduralGeomEvent;
10 struct BeamProjectileImpactEvent;
11
13 public Projectile, // 000
14 public BSTEventSource<BeamProjectileImpactEvent>, // 1E0
15 public BSTEventSink<BSProceduralGeomEvent> // 1D8
16 {
17 public:
18 inline static constexpr auto RTTI = RTTI_BeamProjectile;
19 inline static constexpr auto FORMTYPE = FormType::ProjectileBeam;
20
22 {
23 enum RecordFlag : std::uint32_t
24 {
25 };
26 };
27
28 ~BeamProjectile() override; // 00
29
30 // override (Projectile)
31 void SaveGame(BGSSaveFormBuffer* a_buf) override; // 0E
32 void LoadGame(BGSLoadFormBuffer* a_buf) override; // 0F
33 void InitLoadGame(BGSLoadFormBuffer* a_buf) override; // 10
34 void FinishLoadGame(BGSLoadFormBuffer* a_buf) override; // 11
35 void Revert(BGSLoadFormBuffer* a_buf) override; // 12
36 void Unk_A5(void) override; // A5
37 void Unk_A9(void) override; // A9
38 void UpdateImpl(float a_delta) override; // AB
39 void Unk_B8(void) override; // B8
40 void Unk_BD(void) override; // BD
41 void Handle3DLoaded() override; // C0
42 void Unk_C1(void) override; // C1
43
44 // override (BSTEventSink<BSProceduralGeomEvent>)
45 BSEventNotifyControl ProcessEvent(const BSProceduralGeomEvent* a_event, BSTEventSource<BSProceduralGeomEvent>* a_eventSource) override; // 01
46
47 // members
48 std::uint64_t unk238; // 238
49 };
50#if !defined(SKYRIMVR) && !defined(SKYRIMSE_PRE_1_6_629)
51 static_assert(sizeof(BeamProjectile) == 0x248);
52#else
53 static_assert(sizeof(BeamProjectile) == 0x240);
54#endif
55}
Definition: BSTEvent.h:146
Definition: BSTEvent.h:28
Definition: BeamProjectile.h:16
void Unk_B8(void) override
std::uint64_t unk238
Definition: BeamProjectile.h:48
void LoadGame(BGSLoadFormBuffer *a_buf) override
void Handle3DLoaded() override
void Unk_A5(void) override
void SaveGame(BGSSaveFormBuffer *a_buf) override
BSEventNotifyControl ProcessEvent(const BSProceduralGeomEvent *a_event, BSTEventSource< BSProceduralGeomEvent > *a_eventSource) override
void UpdateImpl(float a_delta) override
void InitLoadGame(BGSLoadFormBuffer *a_buf) override
static constexpr auto RTTI
Definition: BeamProjectile.h:18
void FinishLoadGame(BGSLoadFormBuffer *a_buf) override
~BeamProjectile() override
void Unk_A9(void) override
void Unk_C1(void) override
static constexpr auto FORMTYPE
Definition: BeamProjectile.h:19
void Revert(BGSLoadFormBuffer *a_buf) override
void Unk_BD(void) override
Definition: Projectile.h:19
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BeamProjectile
Definition: Offsets_RTTI.h:3683
BSEventNotifyControl
Definition: BSTEvent.h:12
Definition: BeamProjectile.h:22
RecordFlag
Definition: BeamProjectile.h:24