LeviLamina
Loading...
Searching...
No Matches
PauseScreenController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/GameEventNotification.h"
8#include "mc/client/gui/SceneType.h"
9#include "mc/client/gui/screens/controllers/ClientInstanceScreenController.h"
10#include "mc/client/social/ProfileImageOptions.h"
11#include "mc/deps/core/utility/pub_sub/Subscription.h"
12#include "mc/legacy/ActorUniqueID.h"
13
14// auto generated forward declare list
15// clang-format off
16class Option;
19class PlayerListEntry;
22namespace Json { class Value; }
23namespace mce { class UUID; }
24// clang-format on
25
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 24, ::std::vector<::ActorUniqueID>> mClientIds;
31 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SocialButtonScreenController>> mSocialButtonScreenController;
32 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mCurrentClientId;
33 ::ll::TypedStorage<1, 1, bool> mPlayerListInitialized;
34 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::UserDataScreenController>> mUserDataScreenController;
35 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::PermissionsScreenController>> mPermissionsScreenController;
36 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PauseScreenModel>> mPauseScreenModel;
37 ::ll::TypedStorage<8, 72, ::Social::ProfileImageOptions> mProfileImage;
38 ::ll::TypedStorage<1, 1, bool> mOldPauseStatus;
39 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnPlayerListEntryRemovedSub;
40 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mPauseOptionSubscription;
41 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mTrialModeUpdateSubscription;
42 ::ll::TypedStorage<1, 1, bool> mScoreboardShowing;
43 ::ll::TypedStorage<1, 1, bool> mErrorButtonHovered;
44 ::ll::TypedStorage<4, 4, int> mPreviousMaxPlayerCount;
45 ::ll::TypedStorage<4, 4, int> mFeedUnreadCount;
46 ::ll::TypedStorage<1, 1, bool> mRefreshScreen;
47 ::ll::TypedStorage<1, 1, bool> mIsTrialModeEnabled;
48 ::ll::TypedStorage<1, 1, bool> mOverlaySocialDrawerOnce;
49 ::ll::TypedStorage<1, 1, bool> mOldUnreadMessagesStatus;
50 // NOLINTEND
51
52public:
53 // prevent constructor by default
54 PauseScreenController();
55
56public:
57 // virtual functions
58 // NOLINTBEGIN
59 virtual ~PauseScreenController() /*override*/ = default;
60
61 virtual void onOpen() /*override*/;
62
63 virtual void onTerminate() /*override*/;
64
65 virtual void onInit() /*override*/;
66
67 virtual void onEntered() /*override*/;
68
69 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
70
71 virtual void queueTitleNarration() /*override*/;
72
73 virtual ::ui::SceneType getSceneType() const /*override*/;
74
75 virtual ::ui::DirtyFlag tick() /*override*/;
76
77 virtual ::ui::DirtyFlag handleGameEventNotification(::ui::GameEventNotification notification) /*override*/;
78
79 virtual ::std::string _getButtonADescription() /*override*/;
80 // NOLINTEND
81
82public:
83 // member functions
84 // NOLINTBEGIN
85 MCAPI PauseScreenController(::std::shared_ptr<::PauseScreenModel> model, bool overlaySocialDrawerOnce);
86
87 MCAPI bool _isInviteButtonEnabled() const;
88
89 MCAPI bool _isInviteButtonVisible() const;
90
91 MCAPI bool _isMultiplayerLocked() const;
92
93 MCAPI bool _isProfileButtonAEnabled() const;
94
95 MCAPI bool _isProfileButtonBEnabled() const;
96
97 MCAPI void _navigateToPermissions(::ActorUniqueID const& id);
98
99 MCAPI void _onPlayerListEntryRemoved(
100 ::PlayerListEntry const&,
101 ::std::unordered_map<::mce::UUID, ::PlayerListEntry> const& list
102 );
103
104 MCAPI void _pauseToggleOptionCallback(::Option const& pauseFeatureToggle);
105
106 MCAPI void _populateClientIds();
107
108 MCAPI bool _showRealmsButtons() const;
109
110 MCAPI bool _useMovedInviteButton() const;
111 // NOLINTEND
112
113public:
114 // constructor thunks
115 // NOLINTBEGIN
116 MCAPI void* $ctor(::std::shared_ptr<::PauseScreenModel> model, bool overlaySocialDrawerOnce);
117 // NOLINTEND
118
119public:
120 // virtual function thunks
121 // NOLINTBEGIN
122 MCAPI void $onOpen();
123
124 MCAPI void $onTerminate();
125
126 MCAPI void $onInit();
127
128 MCAPI void $onEntered();
129
130 MCAPI void $addStaticScreenVars(::Json::Value& globalVars);
131
132 MCAPI void $queueTitleNarration();
133
134 MCAPI ::ui::SceneType $getSceneType() const;
135
136 MCAPI ::ui::DirtyFlag $tick();
137
138 MCAPI ::ui::DirtyFlag $handleGameEventNotification(::ui::GameEventNotification notification);
139
140 MCFOLD ::std::string $_getButtonADescription();
141 // NOLINTEND
142};
Definition ClientInstanceScreenController.h:5
Definition Value.h:16
Definition Option.h:22
Definition PauseScreenController.h:5
Definition PauseScreenModel.h:5
Definition PermissionsScreenController.h:5
Definition PlayerListEntry.h:17
Definition SocialButtonScreenController.h:5
Definition UserDataScreenController.h:5
Definition UUID.h:8