LeviLamina
Loading...
Searching...
No Matches
ParticleLifetimeEventsComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/components/ParticleLifetimeComponentBase.h"
7#include "mc/deps/core/string/HashedString.h"
8
9// auto generated forward declare list
10// clang-format off
12namespace Json { class Value; }
13namespace ParticleSystem { class ComponentAccessParticleEmitter; }
14namespace ParticleSystem { struct CommonParticle; }
15namespace SharedTypes::v1_20_80 { struct ParticleEffectComponent; }
16// clang-format on
17
18namespace ParticleSystem {
19
20class ParticleLifetimeEventsComponent : public ::ParticleSystem::ParticleLifetimeComponentBase {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 24, ::std::vector<::HashedString>> mCreationEvents;
25 ::ll::TypedStorage<8, 24, ::std::vector<::HashedString>> mExpirationEvents;
26 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::std::chrono::nanoseconds, ::std::vector<::HashedString>>>>
27 mTimelineEvents;
28 // NOLINTEND
29
30public:
31 // virtual functions
32 // NOLINTBEGIN
33 virtual void initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
34
35 virtual void upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
36
37 virtual void parseJson(::ConstDeserializeDataParams const& deserializeDataParams) /*override*/;
38
39 virtual void handleCreation(
40 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
41 ::ParticleSystem::CommonParticle& particle
42 ) /*override*/;
43
44 virtual void handleExpiration(
45 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
46 ::ParticleSystem::CommonParticle& particle
47 ) /*override*/;
48
49 virtual void handleTimelineEvents(
50 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
51 ::ParticleSystem::CommonParticle& particle,
52 ::std::chrono::nanoseconds const lastAge,
53 ::std::chrono::nanoseconds age
54 ) /*override*/;
55
56 virtual ~ParticleLifetimeEventsComponent() /*override*/ = default;
57 // NOLINTEND
58
59public:
60 // member functions
61 // NOLINTBEGIN
62 MCAPI void _parseEvent(::Json::Value const& event, ::std::vector<::HashedString>& eventList);
63 // NOLINTEND
64
65public:
66 // virtual function thunks
67 // NOLINTBEGIN
68 MCAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
69
70 MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
71
72 MCAPI void $parseJson(::ConstDeserializeDataParams const& deserializeDataParams);
73
74 MCAPI void $handleCreation(
75 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
76 ::ParticleSystem::CommonParticle& particle
77 );
78
79 MCAPI void $handleExpiration(
80 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
81 ::ParticleSystem::CommonParticle& particle
82 );
83
84 MCAPI void $handleTimelineEvents(
85 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
86 ::ParticleSystem::CommonParticle& particle,
87 ::std::chrono::nanoseconds const lastAge,
88 ::std::chrono::nanoseconds age
89 );
90 // NOLINTEND
91
92public:
93 // vftables
94 // NOLINTBEGIN
95 MCNAPI static void** $vftable();
96 // NOLINTEND
97};
98
99} // namespace ParticleSystem
Definition Value.h:16
Definition ComponentAccessParticleEmitter.h:7
Definition ParticleLifetimeEventsComponent.h:7
Definition ConstDeserializeDataParams.h:13
Definition CommonParticle.h:7
Definition ParticleEffectComponent.h:12