LeviLamina
Loading...
Searching...
No Matches
ActorAnimationPlayer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/util/molang/ExpressionNode.h"
8#include "mc/world/actor/SkeletalHierarchyIndex.h"
9#include "mc/world/actor/animation/ActorAnimationType.h"
10
11// auto generated forward declare list
12// clang-format off
15class BoneOrientation;
16class RenderParams;
17struct AnimationVisitor;
18// clang-format on
19
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 48, ::HashedString const> mFriendlyName;
25 ::ll::TypedStorage<8, 16, ::ExpressionNode const> mBlendExpression;
26 ::ll::TypedStorage<1, 1, bool> mExpanded;
27 ::ll::TypedStorage<1, 1, bool> mAnimationFinished;
28 // NOLINTEND
29
30public:
31 // virtual functions
32 // NOLINTBEGIN
33 virtual ~ActorAnimationPlayer() = default;
34
35 virtual void applyToPose(
36 ::ApplyAnimationContext const& applyContext,
37 ::RenderParams& renderParams,
38 ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>>& destBoneOrientationsMap,
39 float blendWeight
40 ) = 0;
41
42 virtual void resetAnimation() = 0;
43
44 virtual void buildBoneToPartMapping(::AnimationComponent& animationComponent);
45
46 virtual void
47 bindParticleEffects(::std::unordered_map<::HashedString, ::HashedString> const& actorParticleEffectMap);
48
49 virtual void bindSoundEffects(::std::unordered_map<::HashedString, ::std::string> const& actorSoundEffectMap);
50
51 virtual bool hasAnimationFinished() const = 0;
52
53 virtual ::std::shared_ptr<::ActorAnimationPlayer> findAnimation(::HashedString const& friendlyName) = 0;
54
55 virtual ::ActorAnimationType getAnimationType() const = 0;
56
57 virtual ::HashedString const& getRawName() const = 0;
58
59 virtual void visit(::AnimationVisitor&& dispatcher);
60 // NOLINTEND
61
62public:
63 // virtual function thunks
64 // NOLINTBEGIN
65 MCFOLD void $buildBoneToPartMapping(::AnimationComponent& animationComponent);
66
67 MCFOLD void
68 $bindParticleEffects(::std::unordered_map<::HashedString, ::HashedString> const& actorParticleEffectMap);
69
70 MCFOLD void $bindSoundEffects(::std::unordered_map<::HashedString, ::std::string> const& actorSoundEffectMap);
71
72#ifdef LL_PLAT_S
73 MCAPI void $visit(::AnimationVisitor&& dispatcher);
74#else // LL_PLAT_C
75 MCFOLD void $visit(::AnimationVisitor&& dispatcher);
76#endif
77
78
79 // NOLINTEND
80};
Definition ActorAnimationPlayer.h:20
Definition AnimationComponent.h:38
Definition ApplyAnimationContext.h:16
Definition BoneOrientation.h:16
Definition HashedString.h:5
Definition RenderParams.h:29
Definition AnimationVisitor.h:16