LeviLamina
Loading...
Searching...
No Matches
ParticleMotionDynamicComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/components/ParticleMotionComponentBase.h"
7#include "mc/util/molang/ExpressionNode.h"
8
9// auto generated forward declare list
10// clang-format off
11class RenderParams;
13namespace ParticleSystem { class ComponentAccessParticleEmitter; }
14namespace ParticleSystem { struct CommonParticle; }
15namespace SharedTypes::v1_20_80 { struct ParticleEffectComponent; }
16// clang-format on
17
18namespace ParticleSystem {
19
20class ParticleMotionDynamicComponent : public ::ParticleSystem::ParticleMotionComponentBase {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 48, ::ExpressionNode[3]> mLinearAccelerationExpr;
25 ::ll::TypedStorage<8, 16, ::ExpressionNode> mLinearDragCoefficientExpr;
26 ::ll::TypedStorage<8, 16, ::ExpressionNode> mRotationAccelerationExpr;
27 ::ll::TypedStorage<8, 16, ::ExpressionNode> mRotationDragCoefficientExpr;
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 updateParticleMotion(
40 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
41 ::ParticleSystem::CommonParticle& particle,
42 ::RenderParams& renderParams,
43 ::std::chrono::nanoseconds const& dt
44 ) /*override*/;
45 // NOLINTEND
46
47public:
48 // virtual function thunks
49 // NOLINTBEGIN
50 MCAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
51
52 MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
53
54 MCAPI void $parseJson(::ConstDeserializeDataParams const& deserializeDataParams);
55
56 MCAPI void $updateParticleMotion(
57 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
58 ::ParticleSystem::CommonParticle& particle,
59 ::RenderParams& renderParams,
60 ::std::chrono::nanoseconds const& dt
61 );
62 // NOLINTEND
63};
64
65} // namespace ParticleSystem
Definition ComponentAccessParticleEmitter.h:7
Definition ParticleMotionDynamicComponent.h:7
Definition RenderParams.h:29
Definition ConstDeserializeDataParams.h:13
Definition CommonParticle.h:7
Definition ParticleEffectComponent.h:12