CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
NiPSysData.h
Go to the documentation of this file.
1#pragma once
2
4
5namespace RE
6{
8 {
9 public:
10 // members
12 float age; // 0C
13 float lifespan; // 10
14 float lastUpdate; // 14
15 std::uint16_t unk18; // 18
16 std::uint16_t unk1A; // 1A
17 std::uint32_t pad1C; // 1C
18 };
19 static_assert(sizeof(NiParticleInfo) == 0x20);
20
22 {
23 public:
24 inline static constexpr auto RTTI = RTTI_NiPSysData;
25 inline static constexpr auto Ni_RTTI = NiRTTI_NiPSysData;
26 inline static constexpr auto VTABLE = VTABLE_NiPSysData;
27
28 ~NiPSysData() override; // 00
29
30 // override (NiParticlesData)
31 const NiRTTI* GetRTTI() const override; // 02
32 void LoadBinary(NiStream& a_stream) override; // 18
33 void LinkObject(NiStream& a_stream) override; // 19
34 bool RegisterStreamables(NiStream& a_stream) override; // 1A
35 void SaveBinary(NiStream& a_stream) override; // 1B
36 bool IsEqual(NiObject* a_object) override; // 1C - { return false; }
37 void RemoveParticle(std::uint16_t a_particleCount) override; // 28
38
39 // add
40 virtual std::uint16_t AddParticle(); // 2A
41 virtual void ResolveAddedParticles(); // 2B
42
43 // members
45 float* rotationSpeeds; // 98
46 std::uint16_t addedParticleCount; // A0
47 std::uint16_t addedParticlesBase; // A0
48 std::uint32_t padA4; // A4
49 };
50 static_assert(sizeof(NiPSysData) == 0xA8);
51}
Definition NiObject.h:37
Definition NiPSysData.h:22
bool IsEqual(NiObject *a_object) override
NiParticleInfo * particleInfo
Definition NiPSysData.h:44
static constexpr auto VTABLE
Definition NiPSysData.h:26
const NiRTTI * GetRTTI() const override
void LoadBinary(NiStream &a_stream) override
void LinkObject(NiStream &a_stream) override
static constexpr auto RTTI
Definition NiPSysData.h:24
std::uint16_t addedParticlesBase
Definition NiPSysData.h:47
std::uint16_t addedParticleCount
Definition NiPSysData.h:46
static constexpr auto Ni_RTTI
Definition NiPSysData.h:25
virtual void ResolveAddedParticles()
~NiPSysData() override
virtual std::uint16_t AddParticle()
void RemoveParticle(std::uint16_t a_particleCount) override
float * rotationSpeeds
Definition NiPSysData.h:45
std::uint32_t padA4
Definition NiPSysData.h:48
bool RegisterStreamables(NiStream &a_stream) override
void SaveBinary(NiStream &a_stream) override
Definition NiPSysData.h:8
float lifespan
Definition NiPSysData.h:13
std::uint16_t unk18
Definition NiPSysData.h:15
float lastUpdate
Definition NiPSysData.h:14
float age
Definition NiPSysData.h:12
std::uint16_t unk1A
Definition NiPSysData.h:16
std::uint32_t pad1C
Definition NiPSysData.h:17
NiPoint3 velocity
Definition NiPSysData.h:11
Definition NiParticlesData.h:9
Definition NiPoint3.h:6
Definition NiRTTI.h:6
Definition NiStream.h:29
Definition AbsorbEffect.h:6
constexpr REL::ID NiRTTI_NiPSysData(static_cast< std::uint64_t >(524492))
constexpr std::array< REL::ID, 1 > VTABLE_NiPSysData
Definition Offsets_VTABLE.h:12253
constexpr REL::ID RTTI_NiPSysData(static_cast< std::uint64_t >(690596))