Skip to content
LeviMC
English
AutoLightDark
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 // NOLINTEND
56
57public:
58 // static functions
59 // NOLINTBEGIN
60 MCNAPI static void _parseEvent(::Json::Value const& event, ::std::vector<::HashedString>& eventList);
61 // NOLINTEND
62
63public:
64 // virtual function thunks
65 // NOLINTBEGIN
67
69
70 MCNAPI void $parseJson(::ConstDeserializeDataParams const& deserializeDataParams);
71
72 MCNAPI void $handleCreation(
75 );
76
77 MCNAPI void $handleExpiration(
80 );
81
85 ::std::chrono::nanoseconds const lastAge,
86 ::std::chrono::nanoseconds age
87 );
88 // NOLINTEND
89};
90
91} // namespace ParticleSystem
Definition Value.h:16
Definition ComponentAccessParticleEmitter.h:7
Definition ParticleLifetimeEventsComponent.h:7
MCAPI void $parseJson(::ConstDeserializeDataParams const &deserializeDataParams)
MCAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent &data)
MCAPI void $handleTimelineEvents(::ParticleSystem::ComponentAccessParticleEmitter &emitter, ::ParticleSystem::CommonParticle &particle, ::std::chrono::nanoseconds const lastAge, ::std::chrono::nanoseconds age)
MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent &data)
static MCAPI void _parseEvent(::Json::Value const &event, ::std::vector<::HashedString > &eventList)
MCAPI void $handleCreation(::ParticleSystem::ComponentAccessParticleEmitter &emitter, ::ParticleSystem::CommonParticle &particle)
MCAPI void $handleExpiration(::ParticleSystem::ComponentAccessParticleEmitter &emitter, ::ParticleSystem::CommonParticle &particle)
Definition ConstDeserializeDataParams.h:15
Definition CommonParticle.h:7
Definition ParticleEffectComponent.h:12