LeviLamina
Loading...
Searching...
No Matches
AnimationComponent.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/AnimationComponentGroupType.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
16class BoneOrientation;
18class DataDrivenModel;
19class ExpressionNode;
20class HashedString;
23class RenderParams;
24// clang-format on
25
27public:
28 // AnimationComponent inner types declare
29 // clang-format off
31 // clang-format on
32
33 // AnimationComponent inner types define
35 public:
36 // member variables
37 // NOLINTBEGIN
41 // NOLINTEND
42
43 public:
44 // prevent constructor by default
48 };
49
50public:
51 // member variables
52 // NOLINTBEGIN
53 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorAnimationControllerStatePlayer>>
54 mCurrentAnimationControllerStatePlayer;
55 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::ActorAnimationPlayer>>> mComponentAnimationPlayers;
56 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::ActorAnimationControllerInfo>>>
57 mOwnedAnimationControllers;
58 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::ModelPartLocator>> mModelPartLocators;
59 ::ll::TypedStorage<8, 496, ::RenderParams> mRenderParams;
60 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorAnimationPlayer>> mPlaySingleAnimation;
61 ::ll::TypedStorage<8, 8, void*> mModelRenderControllerCacheWasBuiltFrom;
62 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::CommonResourceDefinitionMap>> mCommonResourceDefinitionMap;
63 ::ll::TypedStorage<8, 8, ::std::unordered_map<::HashedString, ::HashedString> const*> mParticleEffectMap;
64 ::ll::TypedStorage<8, 64, ::std::function<void(::ActorAnimationPlayer&)>> mAnimationComponentInitFunction;
65 ::ll::TypedStorage<8, 24, ::std::vector<::AnimationComponent::ChildAnimationComponentInfo>>
66 mChildAnimationComponents;
67 ::ll::TypedStorage<8, 64, ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>>>
68 mBoneOrientations;
69 ::ll::TypedStorage<1, 1, bool> mAnimationComponentInitialized;
70 ::ll::TypedStorage<4, 4, ::AnimationComponentGroupType> mAnimationComponentGroupType;
71 ::ll::TypedStorage<8, 8, ::AnimationComponentID> mOwnerUUID;
72 ::ll::TypedStorage<8, 8, int64> mLastUpdateFrame;
73 ::ll::TypedStorage<8, 8, uint64> mLastReloadInitTimeStampClient;
74 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::DataDrivenModel const>> mLastModelInitializedWith;
75 ::ll::TypedStorage<1, 1, bool> mApplyAnimations;
76 ::ll::TypedStorage<1, 1, bool> mNeedToUpdateQueryableBoneOrientations;
77 // NOLINTEND
78
79public:
80 // member functions
81 // NOLINTBEGIN
82 MCAPI
83 AnimationComponent(::AnimationComponentGroupType animationComponentGroup, ::AnimationComponentID const& ownerUUID);
84
85 MCAPI void applyAnimations(bool setDefaultPose);
86
87 MCAPI ::std::shared_ptr<::ActorAnimationPlayer> createAnimationPlayer(
88 ::HashedString const& friendlyName,
89 ::ExpressionNode const& blendExpression,
90 ::std::set<::HashedString, ::std::hash<::HashedString>>& animationControllerNameStack
91 );
92
93 MCAPI ::std::vector<::BoneOrientation>*
94 getBoneOrientations(::SkeletalHierarchyIndex skeletalHierarchyIndex, bool missingIsOkay);
95
96 MCAPI void initInstanceSpecificAnimationData(::MolangVariableMap* variableMap);
97
98 MCAPI void initializeServerAnimationComponent(
99 ::Actor& actor,
100 ::std::shared_ptr<::CommonResourceDefinitionMap> animationResourceDefinition,
101 ::std::function<void(::ActorAnimationPlayer&)> animationComponentInitFunction
102 );
103
104 MCAPI void serverUpdate(::Actor& actor);
105
106 MCAPI void setDirty();
107
108 MCAPI ~AnimationComponent();
109 // NOLINTEND
110
111public:
112 // static variables
113 // NOLINTBEGIN
114 MCAPI static ::std::atomic<int64>& mClientFrameIndex();
115
116 MCAPI static ::std::atomic<int64>& mReloadTimeStampClient();
117
118 MCAPI static ::std::atomic<int64>& mServerFrameIndex();
119 // NOLINTEND
120
121public:
122 // constructor thunks
123 // NOLINTBEGIN
124 MCAPI void* $ctor(::AnimationComponentGroupType animationComponentGroup, ::AnimationComponentID const& ownerUUID);
125 // NOLINTEND
126
127public:
128 // destructor thunk
129 // NOLINTBEGIN
130 MCAPI void $dtor();
131 // NOLINTEND
132};
Definition ActorAnimationControllerInfo.h:5
Definition ActorAnimationControllerStatePlayer.h:21
Definition ActorAnimationPlayer.h:18
Definition Actor.h:104
Definition AnimationComponentID.h:5
Definition AnimationComponent.h:26
Definition BoneOrientation.h:5
Definition CommonResourceDefinitionMap.h:13
Definition DataDrivenModel.h:5
Definition ExpressionNode.h:31
Definition HashedString.h:5
Definition ModelPartLocator.h:5
Definition MolangVariableMap.h:15
Definition RenderParams.h:30
Definition AnimationComponent.h:34
Definition Alias.h:14