LeviLamina
Loading...
Searching...
No Matches
ParticleAppearanceTintingComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/components/ParticleAppearanceComponentBase.h"
7#include "mc/deps/core/string/HashedString.h"
8#include "mc/util/molang/ExpressionNode.h"
9
10// auto generated forward declare list
11// clang-format off
12class RenderParams;
14namespace ParticleSystem { class ComponentAccessParticleEmitter; }
15namespace ParticleSystem { struct ColorFrame; }
16namespace ParticleSystem { struct CommonParticle; }
17namespace SharedTypes::v1_20_80 { struct ParticleEffectComponent; }
18// clang-format on
19
20namespace ParticleSystem {
21
22class ParticleAppearanceTintingComponent : public ::ParticleSystem::ParticleAppearanceComponentBase {
23public:
24 // ParticleAppearanceTintingComponent inner types declare
25 // clang-format off
26 struct ParticleColors;
27 // clang-format on
28
29 // ParticleAppearanceTintingComponent inner types define
30 struct ParticleColors {
31 public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<8, 48, ::HashedString const> mName;
35 ::ll::TypedStorage<8, 32, ::std::string const> mAppearanceTintColors;
36 ::ll::TypedStorage<8, 64, ::std::array<::ExpressionNode, 4>> mOriginalColor;
37 ::ll::TypedStorage<1, 1, bool const> mAlpha;
38 ::ll::TypedStorage<4, 16, float[4]> mCol;
39 ::ll::TypedStorage<4, 16, float[4]> mParticleColorFloat;
40 // NOLINTEND
41
42 public:
43 // member functions
44 // NOLINTBEGIN
45 MCAPI ~ParticleColors();
46 // NOLINTEND
47
48 public:
49 // destructor thunk
50 // NOLINTBEGIN
51 MCAPI void $dtor();
52 // NOLINTEND
53 };
54
55public:
56 // member variables
57 // NOLINTBEGIN
58 ::ll::TypedStorage<8, 24, ::std::vector<::ParticleSystem::ParticleAppearanceTintingComponent::ParticleColors>>
59 mParticleColors;
60 ::ll::TypedStorage<1, 1, bool const> mAlpha;
61 ::ll::TypedStorage<4, 16, float[4]> mCol;
62 ::ll::TypedStorage<4, 16, float[4]> mParticleColorFloat;
63 ::ll::TypedStorage<8, 24, ::std::vector<::ParticleSystem::ColorFrame>> mColorFrames;
64 ::ll::TypedStorage<8, 16, ::ExpressionNode> mInterpolantExpr;
65 // NOLINTEND
66
67public:
68 // virtual functions
69 // NOLINTBEGIN
70 virtual void initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
71
72 virtual void upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
73
74 virtual void parseJson(::ConstDeserializeDataParams const& deserializeDataParams) /*override*/;
75
76 virtual void updateParticleAppearance(
77 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
78 ::ParticleSystem::CommonParticle& particle,
79 ::RenderParams& renderParams
80 ) /*override*/;
81 // NOLINTEND
82
83public:
84 // member functions
85 // NOLINTBEGIN
86 MCAPI void _parseColorBlock(::ConstDeserializeDataParams const& deserializeDataParams, float value);
87
88 MCAPI void _parseGradientBlock(::ConstDeserializeDataParams const& deserializeDataParams);
89 // NOLINTEND
90
91public:
92 // virtual function thunks
93 // NOLINTBEGIN
94 MCAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
95
96 MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
97
98 MCAPI void $parseJson(::ConstDeserializeDataParams const& deserializeDataParams);
99
100 MCAPI void $updateParticleAppearance(
101 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
102 ::ParticleSystem::CommonParticle& particle,
103 ::RenderParams& renderParams
104 );
105 // NOLINTEND
106
107public:
108 // vftables
109 // NOLINTBEGIN
110 MCNAPI static void** $vftable();
111 // NOLINTEND
112};
113
114} // namespace ParticleSystem
Definition ComponentAccessParticleEmitter.h:7
Definition ParticleAppearanceTintingComponent.h:7
Definition RenderParams.h:30
Definition ConstDeserializeDataParams.h:13
Definition ColorFrame.h:7
Definition CommonParticle.h:7
Definition ParticleAppearanceTintingComponent.h:15
Definition ParticleEffectComponent.h:12