3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/persona/PieceHandle.h"
7#include "mc/deps/core/math/Color.h"
8#include "mc/deps/shared_types/persona/ArmSizeType.h"
9#include "mc/deps/shared_types/persona/PieceType.h"
15namespace Json {
class Value; }
21 enum class EmoteWheelIndicie :
int {};
23 using ArmSizeType = ::SharedTypes::persona::ArmSizeType;
25 using EmoteWheel = ::std::array<::persona::PieceHandle, 4>;
27 using PieceTintMap = ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor>;
29 using PieceVector = ::std::vector<::persona::PieceHandle>;
34 ::ll::TypedStorage<8, 24, ::std::vector<::persona::PieceHandle>> mPieceVector;
35 ::ll::TypedStorage<8, 24, ::std::vector<::std::string>> mUnsupportedPieces;
36 ::ll::TypedStorage<8, 864, ::std::array<::persona::PieceHandle, 4>> mEmoteWheel;
37 ::ll::TypedStorage<1, 1, ::SharedTypes::persona::ArmSizeType> mArmSizeType;
38 ::ll::TypedStorage<1, 1, ::SharedTypes::persona::ArmSizeType> mCustomSkinArmSize;
39 ::ll::TypedStorage<8, 64, ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor>> mPieceTintColors;
40 ::ll::TypedStorage<4, 16, ::mce::Color> mSkinColor;
41 ::ll::TypedStorage<8, 32, ::std::string> mEncodedClassicSkinImage;
42 ::ll::TypedStorage<8, 32, ::std::string> mSerializedLockedClassicSkin;
43 ::ll::TypedStorage<1, 1, bool> mUseClassicSkin;
44 ::ll::TypedStorage<1, 1, bool> mAllowUnownedPieces;
45 ::ll::TypedStorage<1, 1, bool> mSaveSerializedLockedClassicSkin;
46 ::ll::TypedStorage<1, 1, bool> mSaveSerializedUseClassicSkin;
47 ::ll::TypedStorage<1, 1, bool> mSerializedUseClassicSkin;
68 ::std::vector<::persona::PieceHandle>
const& pieceList,
69 ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor>
const& tintMap,
71 ::SharedTypes::persona::ArmSizeType
const& armSizeType
75 ::std::vector<::persona::PieceHandle>
const& pieceList,
76 ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor>
const& tintMap,
78 ::SharedTypes::persona::ArmSizeType
const& armSizeType,
79 ::std::array<::persona::PieceHandle, 4>
const& emoteWheel
86 MCNAPI
bool _hasEmote(::std::string
const& pieceId)
const;
98 MCNAPI ::persona::PieceHandle
const&
getEquivalentPiece(::SharedTypes::persona::PieceType pieceType)
const;
100 MCNAPI ::persona::PieceHandle
const&
getPiece(::std::string
const& pieceId)
const;
102 MCNAPI ::persona::PieceHandle
const&
getPiece(::SharedTypes::persona::PieceType pieceType)
const;
132 MCNAPI ::Json::Value
toJSONObject(
bool allowInvalid,
bool includeUnsupported)
const;
153 ::std::vector<::persona::PieceHandle>
const& pieceList,
154 ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor>
const& tintMap,
156 ::SharedTypes::persona::ArmSizeType
const& armSizeType
160 ::std::vector<::persona::PieceHandle>
const& pieceList,
161 ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor>
const& tintMap,
163 ::SharedTypes::persona::ArmSizeType
const& armSizeType,
164 ::std::array<::persona::PieceHandle, 4>
const& emoteWheel
Definition PersonaAppearance.h:5
MCAPI PersonaAppearance(::std::vector<::persona::PieceHandle > const &pieceList, ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor > const &tintMap, ::mce::Color const &skinColor, ::SharedTypes::persona::ArmSizeType const &armSizeType)
MCAPI PersonaAppearance(::std::vector<::persona::PieceHandle > const &pieceList, ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor > const &tintMap, ::mce::Color const &skinColor, ::SharedTypes::persona::ArmSizeType const &armSizeType, ::std::array<::persona::PieceHandle, 4 > const &emoteWheel)
MCAPI void * $ctor(::persona::PieceHandle &&legacyPiece)
MCAPI void * $ctor(::PersonaAppearance &&rhs)
MCAPI void removeEquivalentPieces(::SharedTypes::persona::PieceType pieceType)
MCAPI::PersonaAppearance & operator=(::PersonaAppearance &&rhs)
MCAPI void setPiece(::persona::PieceHandle const &newPiece)
MCAPI bool isPieceVectorEqual(::PersonaAppearance const &rhs) const
MCAPI int getEmoteWheelIndex(::std::string const &pieceId) const
MCAPI PersonaAppearance(::persona::PieceHandle &&legacyPiece)
MCAPI bool isPhysicalTraitEqual(::PersonaAppearance const &rhs) const
MCAPI bool isTintEqual(::PersonaAppearance const &rhs) const
MCAPI bool isEmoteWheelEqual(::PersonaAppearance const &rhs) const
MCAPI void copyEquivalentGroupFrom(::PersonaAppearance const &source, ::SharedTypes::persona::PieceType pieceType)
MCAPI void * $ctor(::std::vector<::persona::PieceHandle > const &pieceList, ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor > const &tintMap, ::mce::Color const &skinColor, ::SharedTypes::persona::ArmSizeType const &armSizeType)
MCAPI void * $ctor(::std::vector<::persona::PieceHandle > const &pieceList, ::std::unordered_map<::SharedTypes::persona::PieceType, ::TintMapColor > const &tintMap, ::mce::Color const &skinColor, ::SharedTypes::persona::ArmSizeType const &armSizeType, ::std::array<::persona::PieceHandle, 4 > const &emoteWheel)
MCAPI bool isAnyEmoteSlotSet() const
MCAPI void setCustomSkinEncoded(::std::string &&encodedSkin)
MCAPI::Json::Value toJSONObject(bool allowInvalid, bool includeUnsupported) const
MCAPI bool removeEmotesWithId(::std::string const &emoteId)
static MCAPI bool _isSerializedPieceEmpty(::Json::Value const &serializedPiece)
MCAPI::std::string _getSerializedPieceIdNoFlags(::Json::Value const &serializedPiece)
MCAPI::persona::PieceHandle const & getEquivalentPiece(::SharedTypes::persona::PieceType pieceType) const
MCAPI PersonaAppearance()
MCAPI void _preHandleSettingPiece(::SharedTypes::persona::PieceType pieceTypeBeingSet)
MCAPI bool isPieceVectorExcludingClassicSkinEqual(::PersonaAppearance const &rhs) const
static MCAPI void ** $vftable()
MCAPI::persona::PieceHandle const & getPiece(::SharedTypes::persona::PieceType pieceType) const
MCAPI bool _doesSerializedPieceContainFlag(::Json::Value const &serializedPiece, char const flagToCheckFor) const
MCAPI void * $ctor(::PersonaAppearance const &other)
MCAPI bool _hasEmote(::std::string const &pieceId) const
MCAPI PersonaAppearance(::PersonaAppearance &&rhs)
MCAPI void setEmote(int emoteWheelSlot, ::persona::PieceHandle const &newEmote)
MCAPI::PersonaAppearance & operator=(::PersonaAppearance const &rhs)
MCAPI::persona::PieceHandle const & getPiece(::std::string const &pieceId) const
MCAPI bool fillFromJSON(::SemVersion const &version, ::Json::Value const &appearanceInfo)
MCAPI void setTintMapColor(::SharedTypes::persona::PieceType pieceType, ::mce::Color const &color, ushort channel)
MCAPI PersonaAppearance(::PersonaAppearance const &other)
MCAPI bool getAllowUnownedPieces() const
Definition SemVersion.h:15
Definition TintMapColor.h:8
Definition PieceHandle.h:7