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