LeviLamina
Loading...
Searching...
No Matches
SerializedSkinImpl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/image/Image.h"
7#include "mc/deps/core/math/Color.h"
8#include "mc/deps/json/Value.h"
9#include "mc/platform/Result.h"
10#include "mc/resources/MinEngineVersion.h"
11#include "mc/world/actor/player/TrustedSkinFlag.h"
12#include "mc/world/actor/player/persona/ArmSize.h"
13#include "mc/world/actor/player/persona/PieceType.h"
14
15// auto generated forward declare list
16// clang-format off
18class BinaryStream;
23class TintMapColor;
24// clang-format on
25
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 32, ::std::string> mId;
31 ::ll::TypedStorage<8, 32, ::std::string> mPlayFabId;
32 ::ll::TypedStorage<8, 32, ::std::string> mFullId;
33 ::ll::TypedStorage<8, 32, ::std::string> mResourcePatch;
34 ::ll::TypedStorage<8, 32, ::std::string> mDefaultGeometryName;
35 ::ll::TypedStorage<8, 48, ::mce::Image> mSkinImage;
36 ::ll::TypedStorage<8, 48, ::mce::Image> mCapeImage;
37 ::ll::TypedStorage<8, 24, ::std::vector<::AnimatedImageData>> mSkinAnimatedImages;
38 ::ll::TypedStorage<8, 16, ::Json::Value> mGeometryData;
39 ::ll::TypedStorage<8, 32, ::MinEngineVersion> mGeometryDataMinEngineVersion;
40 ::ll::TypedStorage<8, 16, ::Json::Value> mGeometryDataMutable;
41 ::ll::TypedStorage<8, 32, ::std::string> mAnimationData;
42 ::ll::TypedStorage<8, 32, ::std::string> mCapeId;
43 ::ll::TypedStorage<8, 24, ::std::vector<::SerializedPersonaPieceHandle>> mPersonaPieces;
44 ::ll::TypedStorage<8, 8, ::persona::ArmSize::Type> mArmSizeType;
45 ::ll::TypedStorage<8, 64, ::std::unordered_map<::persona::PieceType, ::TintMapColor>> mPieceTintColors;
46 ::ll::TypedStorage<4, 16, ::mce::Color> mSkinColor;
47 ::ll::TypedStorage<1, 1, ::TrustedSkinFlag> mIsTrustedSkin;
48 ::ll::TypedStorage<1, 1, bool> mIsPremium;
49 ::ll::TypedStorage<1, 1, bool> mIsPersona;
50 ::ll::TypedStorage<1, 1, bool> mIsPersonaCapeOnClassicSkin;
51 ::ll::TypedStorage<1, 1, bool> mIsPrimaryUser;
52 ::ll::TypedStorage<1, 1, bool> mOverridesPlayerAppearance;
53 // NOLINTEND
54
55public:
56 // member functions
57 // NOLINTBEGIN
58 MCAPI SerializedSkinImpl();
59
60 MCAPI explicit SerializedSkinImpl(::ConnectionRequest const& request);
61
62 MCAPI explicit SerializedSkinImpl(::SubClientConnectionRequest const& request);
63
65 ::std::string const& name,
66 ::std::string const& playFabId,
67 ::std::string const& resourcePatch,
68 ::mce::Image const& skinImage,
69 ushort const& skinImageWidth,
70 ushort const& skinImageHeight,
71 ::mce::Image const& capeImage,
72 ushort const& capeImageWidth,
73 ushort const& capeImageHeight,
74 ::Json::Value&& geometryData,
75 ::MinEngineVersion const& geometryDataMinEngineVersion,
76 ::std::string const& animationData,
77 ::std::string const& capeId,
78 bool isTrustedSkin,
79 bool isPremium,
80 bool isPersona,
81 bool isPersonaCapeOnClassicSkin,
82 bool isPrimaryUser,
83 bool overridesPlayerAppearance
84 );
85
86 MCAPI ::Bedrock::Result<void> read(::ReadOnlyBinaryStream& stream);
87
88 MCAPI void setArmSizeFromString(::std::string const& armSizeStr);
89
90 MCAPI void setPersonaAppearanceData(
91 ::persona::ArmSize::Type const& armSizeType,
92 ::mce::Color const& skinColor,
93 ::std::vector<::SerializedPersonaPieceHandle> personaPieces,
94 ::std::unordered_map<::persona::PieceType, ::TintMapColor> const& pieceTintColors
95 );
96
97 MCAPI void updateGeometryName();
98
99 MCAPI void write(::BinaryStream& stream) const;
100
101 MCAPI ~SerializedSkinImpl();
102 // NOLINTEND
103
104public:
105 // constructor thunks
106 // NOLINTBEGIN
107 MCAPI void* $ctor();
108
109 MCAPI void* $ctor(::ConnectionRequest const& request);
110
111 MCAPI void* $ctor(::SubClientConnectionRequest const& request);
112
113 MCAPI void* $ctor(
114 ::std::string const& name,
115 ::std::string const& playFabId,
116 ::std::string const& resourcePatch,
117 ::mce::Image const& skinImage,
118 ushort const& skinImageWidth,
119 ushort const& skinImageHeight,
120 ::mce::Image const& capeImage,
121 ushort const& capeImageWidth,
122 ushort const& capeImageHeight,
123 ::Json::Value&& geometryData,
124 ::MinEngineVersion const& geometryDataMinEngineVersion,
125 ::std::string const& animationData,
126 ::std::string const& capeId,
127 bool isTrustedSkin,
128 bool isPremium,
129 bool isPersona,
130 bool isPersonaCapeOnClassicSkin,
131 bool isPrimaryUser,
132 bool overridesPlayerAppearance
133 );
134 // NOLINTEND
135
136public:
137 // destructor thunk
138 // NOLINTBEGIN
139 MCAPI void $dtor();
140 // NOLINTEND
141};
Definition AnimatedImageData.h:10
Definition BinaryStream.h:10
Definition ConnectionRequest.h:26
Definition Value.h:16
Definition MinEngineVersion.h:10
Definition ReadOnlyBinaryStream.h:8
Definition SerializedPersonaPieceHandle.h:9
Definition SerializedSkinImpl.h:26
Definition SubClientConnectionRequest.h:20
Definition TintMapColor.h:8
Definition Color.h:13
Definition Image.h:12