LeviLamina
Loading...
Searching...
No Matches
PaperDollRenderer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/controls/renderers/MinecraftUICustomRenderer.h"
7#include "mc/deps/core/string/HashedString.h"
8#include "mc/platform/UUID.h"
9#include "mc/platform/brstd/move_only_function.h"
10#include "mc/util/MolangVariableMap.h"
11
12// auto generated forward declare list
13// clang-format off
16class IClientInstance;
21class SkinPackPin;
22class UIControl;
24class UIScene;
28// clang-format on
29
31public:
32 // PaperDollRenderer inner types define
33 enum class RotationStyle : int {
34 None = 0,
35 Automatic = 1,
36 GestureX = 2,
37 CustomY = 3,
38 Lerping = 4,
39 };
40
41public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<4, 4, ::PaperDollRenderer::RotationStyle> mRotationStyle;
45 ::ll::TypedStorage<4, 4, ::PaperDollRenderer::RotationStyle> mPreviousRotationStyle;
46 ::ll::TypedStorage<1, 1, bool> mUseSelectedSkin;
47 ::ll::TypedStorage<1, 1, bool> mUseSkinByName;
48 ::ll::TypedStorage<1, 1, bool> mUseUUID;
49 ::ll::TypedStorage<4, 4, float> mDeltaTime;
50 ::ll::TypedStorage<4, 4, float> mElapsedTime;
51 ::ll::TypedStorage<4, 4, float> mRotation;
52 ::ll::TypedStorage<4, 4, float> mTargetRotation;
53 ::ll::TypedStorage<4, 4, float> mCameraTiltInDeg;
54 ::ll::TypedStorage<4, 4, float> mRotationSpeedMultiplier;
55 ::ll::TypedStorage<8, 32, ::std::string> mSkinName;
56 ::ll::TypedStorage<8, 16, ::mce::UUID> mCurrentPlayerUUID;
57 ::ll::TypedStorage<8, 16, ::mce::UUID> mPaperDollPackId;
58 ::ll::TypedStorage<4, 4, int> mPaperDollSkinIdx;
59 ::ll::TypedStorage<1, 1, bool> mWaitForSkinInitialize;
60 ::ll::TypedStorage<1, 1, bool> mMarkLocalPlayerAsDirty;
61 ::ll::TypedStorage<8, 64, ::brstd::move_only_function<void(::std::string_view) const>> mRemoveSkin;
62 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::HashedString>> mParticleEffectsMap;
63 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::AnimationComponent>> mAnimationComponent;
64 ::ll::TypedStorage<8, 56, ::MolangVariableMap> mVariables;
65 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mSkinLastUpdated;
66 ::ll::TypedStorage<8, 64, ::std::unordered_map<::mce::UUID, ::SkinPackPin>> mPinnedPacks;
67 // NOLINTEND
68
69public:
70 // virtual functions
71 // NOLINTBEGIN
72 virtual ~PaperDollRenderer() /*override*/ = default;
73
74 virtual ::std::shared_ptr<::UICustomRenderer> clone() const /*override*/;
75
76 virtual void
77 render(::MinecraftUIRenderContext& renderContext, ::IClientInstance& client, ::UIControl& owner, int) /*override*/;
78
79 virtual bool update(::IClientInstance& client, ::UIControl& owner, ::UIScene const& scene) /*override*/;
80 // NOLINTEND
81
82public:
83 // member functions
84 // NOLINTBEGIN
85 MCAPI PaperDollRenderer();
86
87 MCAPI explicit PaperDollRenderer(::IPaperDollUIDefSource const& def);
88
89 MCAPI void _addAnimationIfNotRegistered(
90 ::std::shared_ptr<::ActorAnimationGroup> actorAnimationGroup,
91 ::HashedString const& friendlyName
92 );
93
94 MCAPI ::AnimationComponent& _getAnimationComponent();
95
96 MCAPI void _render(
97 ::IPaperDollRenderContext& context,
98 ::PaperDollRenderOwnerData const& data,
99 ::OffscreenCaptureDescription const* capture
100 );
101
102 MCAPI void _update(::IPaperDollUpdateContext& context, ::PaperDollUpdateOwnerData const& data);
103 // NOLINTEND
104
105public:
106 // constructor thunks
107 // NOLINTBEGIN
108 MCAPI void* $ctor();
109
110 MCAPI void* $ctor(::IPaperDollUIDefSource const& def);
111 // NOLINTEND
112
113public:
114 // virtual function thunks
115 // NOLINTBEGIN
116 MCAPI ::std::shared_ptr<::UICustomRenderer> $clone() const;
117
118 MCAPI void $render(::MinecraftUIRenderContext& renderContext, ::IClientInstance& client, ::UIControl& owner, int);
119
120 MCAPI bool $update(::IClientInstance& client, ::UIControl& owner, ::UIScene const& scene);
121 // NOLINTEND
122};
Definition ActorAnimationGroup.h:22
Definition AnimationComponent.h:38
Definition IClientInstance.h:5
Definition IPaperDollRenderContext.h:5
Definition IPaperDollUIDefSource.h:5
Definition IPaperDollUpdateContext.h:5
Definition MinecraftUICustomRenderer.h:5
Definition MinecraftUIRenderContext.h:5
Definition PaperDollRenderer.h:5
Definition SkinPackPin.h:5
Definition UIControl.h:5
Definition UICustomRenderer.h:5
Definition UIScene.h:5
Definition OffscreenCaptureDescription.h:5
Definition PaperDollRenderOwnerData.h:5
Definition PaperDollUpdateOwnerData.h:5