LeviLamina
Loading...
Searching...
No Matches
ActorAnimationControllerPlayer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/SkeletalHierarchyIndex.h"
7#include "mc/world/actor/animation/ActorAnimationControllerPtr.h"
8#include "mc/world/actor/animation/ActorAnimationPlayer.h"
9#include "mc/world/actor/animation/ActorAnimationType.h"
10
11// auto generated forward declare list
12// clang-format off
15class BoneOrientation;
16class ExpressionNode;
17class HashedString;
18class RenderParams;
19struct AnimationVisitor;
20// clang-format on
21
22class ActorAnimationControllerPlayer : public ::ActorAnimationPlayer {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 16, ::ActorAnimationControllerPtr> mAnimationControllerPtr;
27 ::ll::TypedStorage<4, 4, int> mCurrStateIndex;
28 ::ll::TypedStorage<4, 4, int> mLastStateIndex;
29 ::ll::TypedStorage<4, 4, int> mNextStateIndex;
30 ::ll::TypedStorage<4, 4, int> mBlendTransitionStateIndex;
31 ::ll::TypedStorage<4, 4, float> mBlendTransitionTime;
32 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::ActorAnimationControllerStatePlayer>>>
33 mAnimationControllerStatePlayers;
34 ::ll::TypedStorage<8, 8, ::std::unordered_map<::HashedString, ::HashedString> const*> mActorParticleEffectMap;
35 ::ll::TypedStorage<8, 8, ::std::unordered_map<::HashedString, ::std::string> const*> mActorSoundEffectMap;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 ActorAnimationControllerPlayer();
41
42public:
43 // virtual functions
44 // NOLINTBEGIN
45 virtual void applyToPose(
46 ::RenderParams& renderParams,
47 ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>>& destBoneOrientationsMap,
48 float blendWeight
49 ) /*override*/;
50
51 virtual void resetAnimation() /*override*/;
52
53 virtual void bindParticleEffects(
54 ::std::unordered_map<::HashedString, ::HashedString> const& actorParticleEffectMap
55 ) /*override*/;
56
57 virtual void
58 bindSoundEffects(::std::unordered_map<::HashedString, ::std::string> const& actorSoundEffectMap) /*override*/;
59
60 virtual bool hasAnimationFinished() const /*override*/;
61
62 virtual ::std::shared_ptr<::ActorAnimationPlayer> findAnimation(::HashedString const& friendlyName) /*override*/;
63
64 virtual ::ActorAnimationType getAnimationType() const /*override*/;
65
66 virtual ::HashedString const& getRawName() const /*override*/;
67
68 virtual void visit(::AnimationVisitor&& dispatcher) /*override*/;
69
70 virtual ~ActorAnimationControllerPlayer() /*override*/ = default;
71 // NOLINTEND
72
73public:
74 // member functions
75 // NOLINTBEGIN
76 MCAPI ActorAnimationControllerPlayer(
77 ::HashedString const& friendlyName,
78 ::ActorAnimationControllerPtr const& animationControllerPtr,
79 ::AnimationComponent& animationComponent,
80 ::ExpressionNode const& blendExpression,
81 ::std::set<::HashedString, ::std::hash<::HashedString>>& animationControllerNameStack
82 );
83
84 MCAPI void applyStateAnimationToPose(
85 ::RenderParams& renderParams,
86 ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>>& destBoneOrientationsMap,
87 float blendWeight
88 );
89
90 MCAPI void blendViaShortestPath(
91 ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>>& destBoneOrientationsMap,
92 ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>> const&
93 blendOutBoneOrientationsMap,
94 ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>> const&
95 blendInBoneOrientationsMap,
96 float blendInWeight,
97 float blendWeight
98 );
99
100 MCAPI_C ::std::shared_ptr<::ActorAnimationControllerStatePlayer>
101 getStatePlayer(::HashedString const& stateName, ::AnimationComponent& animationComponent, bool createIfMissing);
102 // NOLINTEND
103
104public:
105 // constructor thunks
106 // NOLINTBEGIN
107 MCAPI void* $ctor(
108 ::HashedString const& friendlyName,
109 ::ActorAnimationControllerPtr const& animationControllerPtr,
110 ::AnimationComponent& animationComponent,
111 ::ExpressionNode const& blendExpression,
112 ::std::set<::HashedString, ::std::hash<::HashedString>>& animationControllerNameStack
113 );
114 // NOLINTEND
115
116public:
117 // virtual function thunks
118 // NOLINTBEGIN
119 MCAPI void $applyToPose(
120 ::RenderParams& renderParams,
121 ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>>& destBoneOrientationsMap,
122 float blendWeight
123 );
124
125 MCAPI void $resetAnimation();
126
127 MCAPI void $bindParticleEffects(::std::unordered_map<::HashedString, ::HashedString> const& actorParticleEffectMap);
128
129 MCAPI void $bindSoundEffects(::std::unordered_map<::HashedString, ::std::string> const& actorSoundEffectMap);
130
131 MCAPI bool $hasAnimationFinished() const;
132
133 MCAPI ::std::shared_ptr<::ActorAnimationPlayer> $findAnimation(::HashedString const& friendlyName);
134
135 MCFOLD ::ActorAnimationType $getAnimationType() const;
136
137 MCAPI ::HashedString const& $getRawName() const;
138
139 MCAPI void $visit(::AnimationVisitor&& dispatcher);
140
141
142 // NOLINTEND
143
144public:
145 // vftables
146 // NOLINTBEGIN
147 MCNAPI static void** $vftable();
148 // NOLINTEND
149};
static MCAPI void ** $vftable()
Definition ActorAnimationControllerPtr.h:10
Definition ActorAnimationControllerStatePlayer.h:23
Definition AnimationComponent.h:36
Definition BoneOrientation.h:19
Definition ExpressionNode.h:33
Definition HashedString.h:5
Definition RenderParams.h:30
Definition AnimationVisitor.h:16