3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/screens/models/MainMenuScreenModel.h"
8#include "mc/client/gui/screens/models/PersonaScreenModelCommon.h"
9#include "mc/client/gui/screens/models/persona/SizeSectionModel.h"
10#include "mc/client/persona/SkinHandle.h"
11#include "mc/client/services/persona/DownloadImportManager.h"
12#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
13#include "mc/deps/shared_types/persona/PieceSide.h"
14#include "mc/world/actor/player/persona/ProfileType.h"
19class IStoreCatalogItem;
27namespace persona {
class Profile; }
37 ::ll::TypedStorage<4, 4, float const> DEFAULT_PAPERDOLL_ROTATION;
38 ::ll::TypedStorage<4, 4, float const> PAPERDOLL_BACK_ROTATION;
39 ::ll::TypedStorage<8, 24, ::persona::SizeSectionModel> mSizeSectionModel;
40 ::ll::TypedStorage<8, 112, ::SkinHandle> mSelectedSkinHandle;
41 ::ll::TypedStorage<4, 4, ::SharedTypes::persona::PieceSide> mCurrentPieceSide;
42 ::ll::TypedStorage<4, 4, int> mSelectedSkinPackCollectorIndex;
43 ::ll::TypedStorage<4, 4, int> mSelectedSkinPackModelIndex;
44 ::ll::TypedStorage<4, 4, int> mSelectedSkinIndex;
45 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::SkinPackCollectionModel>>> mSkinPackCollectors;
46 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Social::eventData::PersonaOfferClickedData>> mOfferClickedData;
47 ::ll::TypedStorage<8, 8, int64> mNextPossibleEventClickedTime;
48 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SkinPackModel>> mInvalidSkinPackModel;
49 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SkinPackCollectionModel>> mInvalidSkinPackCollectionModel;
50 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SkinPackCollectionModel>> mClassicOwnedSkinPackCollection;
51 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SkinPackCollectionModel>> mClassicPurchasableSkinPackCollection;
52 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SkinPackCollectionModel>> mClassicRealmsPlusSkinPackCollection;
53 ::ll::TypedStorage<8, 128, ::persona::DownloadImportManager> mPersonaDownloadManager;
54 ::ll::TypedStorage<8, 16, ::std::shared_ptr<bool>> mExistanceTracker;
64 virtual ~PersonaScreenModel() =
default;
66 virtual void update(::ui::DirtyFlag& dirtyFlags) ;
68 virtual ::SkinHandle
const& getSelectedSkinHandle() const ;
85 ::persona::PieceOfferWrapper const& pieceOffer,
86 ::
std::function<
void(
bool)> onOfferCollectedCallback,
87 bool exclusiveDownload
118 MCNAPI
void newCharacter(::LinksToStyle const& linkTo, uint defaultAppearanceIndex);
140 MCNAPI
void $update(::ui::DirtyFlag& dirtyFlags);
Definition AchievementData.h:5
Definition EnableNonOwnerReferences.h:7
Definition MainMenuScreenModel.h:5
Definition PersonaAppearance.h:5
Definition PersonaScreenModelCommon.h:5
Definition PersonaScreenModel.h:5
MCAPI bool isPersonaEquipButtonVisible(::persona::PieceOfferWrapper const &activeOffer, bool isCoinPurchasVisible) const
MCAPI bool isArmOrLegTypeAndEquipped(::persona::PieceOfferWrapper const &activeOffer) const
MCAPI bool checkPersonaServiceSavedToCacheFlag()
MCAPI ::std::shared_ptr<::persona::Profile > getPersonaProfileForActiveClient(::persona::ProfileType type)
MCAPI void clearPersonaServiceSavedToCacheFlag()
MCAPI::AchievementData const & getOfferAchievement(::persona::PieceOfferWrapper const &offer) const
MCAPI void syncSelectedSkinHandle()
MCAPI void showProfileSettingsScreen()
MCAPI::std::string const getPrimaryUserTitleAccountPlayFabId()
MCAPI::std::string getAchievementOfferLockStateTexture(::persona::PieceOfferWrapper const &pieceOffer) const
MCAPI bool isSkinOwned(::SkinPackModel const &skinPack, ::SkinHandle const &handle) const
MCAPI bool isCustomSkin(::SkinHandle const &handle) const
MCAPI bool collectPersonaOffer(::persona::PieceOfferWrapper const &pieceOffer, ::std::function< void(bool)> onOfferCollectedCallback, bool exclusiveDownload)
MCAPI::SkinHandle const & $getSelectedSkinHandle() const
MCAPI void sendCurrentPersonaSkinIfNeeded(::PersonaAppearance const &initialAppearance, bool inGame)
MCAPI bool isOfferAchievementUnlocked(::persona::PieceOfferWrapper const &offer) const
MCAPI void * $ctor(::MinecraftScreenModelContext context)
MCAPI bool isPieceEquipped(::std::string const &pieceId) const
MCAPI bool isRealmsRedeemButtonVisible(::persona::PieceOfferWrapper const &activeOffer) const
MCAPI void cycleCurrentPieceSide(::IStoreCatalogItem const &pieceOffer, ::SharedTypes::persona::PieceSide direction)
MCAPI void setSelectedSkinHandle(::SkinHandle newSelectedSkinHandle)
MCAPI void newCharacter(::LinksToStyle const &linkTo, uint defaultAppearanceIndex)
MCAPI void $update(::ui::DirtyFlag &dirtyFlags)
MCAPI bool _playerHasContentSubscription() const
MCAPI bool isRealmsSubscriptionButtonVisible(::persona::PieceOfferWrapper const &activeOffer) const
MCAPI void _initializeSkinPackCollectors()
MCAPI bool setUseClassicSkinOnPersona(::persona::PersonaCharacterHandle const &handle, bool usage)
Definition SkinHandle.h:5
Definition SkinPackCollectionModel.h:5
Definition SkinPackModel.h:5
Definition PersonaOfferClickedData.h:7
Definition PieceOfferWrapper.h:7
Definition MinecraftScreenModelContext.h:5
Definition PersonaCharacterHandle.h:10