Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
RealmsCreateScreenController.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/screens/controllers/MainMenuScreenController.h"
8#include "mc/client/gui/screens/controllers/ScreenExitBehavior.h"
9#include "mc/client/network/realms/World.h"
10#include "mc/client/store/iap/RealmsOfferPeriod.h"
11#include "mc/client/store/iap/RealmsOfferTier.h"
12#include "mc/client/store/iap/RealmsOfferType.h"
13#include "mc/client/store/iap/RealmsPurchaseIntent.h"
14#include "mc/deps/core/utility/NonOwnerPointer.h"
15
16// auto generated forward declare list
17// clang-format off
18class IEntitlementManager;
21struct ProductSku;
22struct Purchase;
23namespace Json { class Value; }
24// clang-format on
25
27public:
28 // RealmsCreateScreenController inner types define
29 enum class State : int {
30 Initial = 0,
31 Processing = 1,
32 Fail = 2,
33 Success = 3,
34 };
35
36public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<1, 1, bool> mDirty;
40 ::ll::TypedStorage<1, 1, bool> mCheckedTOS;
41 ::ll::TypedStorage<1, 1, bool> mIsValidRealmName;
42 ::ll::TypedStorage<1, 1, bool> mCheckUnfulfilledPurchase;
43 ::ll::TypedStorage<1, 1, bool> mOverridePurchaseIntent;
44 ::ll::TypedStorage<1, 1, bool> mPurchaseInProgress;
45 ::ll::TypedStorage<8, 32, ::std::string> mRealmsPurchaseCorrelationId;
46 ::ll::TypedStorage<1, 1, bool const> mIsSubController;
47 ::ll::TypedStorage<4, 4, ::RealmsPurchaseIntent const> mPurchaseIntent;
48 ::ll::TypedStorage<8, 32, ::std::string> mWorldName;
49 ::ll::TypedStorage<8, 32, ::std::string> mSubscriptionId;
50 ::ll::TypedStorage<4, 4, ::RealmsOfferType const> mOfferType;
51 ::ll::TypedStorage<4, 4, ::RealmsOfferPeriod> mOfferPeriod;
52 ::ll::TypedStorage<4, 4, ::RealmsOfferTier> mOfferTier;
53 ::ll::TypedStorage<1, 1, bool> mPurchaseDisabledDueToStoreVersion;
54 ::ll::TypedStorage<1, 1, bool const> mTrialAvailable;
55 ::ll::TypedStorage<1, 1, bool const> mHasClub;
56 ::ll::TypedStorage<1, 1, bool const> mIsFromRealmsPDP;
57 ::ll::TypedStorage<8, 64, ::std::function<void()>> mActionAfterCreate;
58 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager>> mEntitlementManager;
59 ::ll::TypedStorage<8, 720, ::Realms::World> mNewWorld;
60 ::ll::TypedStorage<8, 64, ::std::function<void(::Realms::World&)>> mRealmCreatedCallback;
61 // NOLINTEND
62
63public:
64 // prevent constructor by default
65 RealmsCreateScreenController();
66
67public:
68 // virtual functions
69 // NOLINTBEGIN
70 virtual ~RealmsCreateScreenController() /*override*/ = default;
71
72 virtual void onCreation() /*override*/;
73
74 virtual void onOpen() /*override*/;
75
76 virtual void onLeave() /*override*/;
77
78 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
79
80 virtual ::ui::DirtyFlag tick() /*override*/;
81 // NOLINTEND
82
83public:
84 // member functions
85 // NOLINTBEGIN
87 ::std::shared_ptr<::MainMenuScreenModel> model,
88 ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> entitlementManager,
89 ::RealmsCreateParams const& createParams,
90 bool isSubController,
91 ::ScreenExitBehavior exitBehavior
92 );
93
95
97
99
100 MCNAPI void _errorDialogInvalidName(::std::string realmName, bool genericError);
101
102 MCNAPI void _fulfillPriorRealmPurchase(::std::weak_ptr<::Purchase> purchase);
103
104 MCNAPI ::ProductSku const& _getProductSku() const;
105
107
108 MCNAPI void _promptForIntentMismatchOverride(::std::string const& contentId);
109
110 MCNAPI void _verifyAppStoreReady(::std::function<void()> readyCallback);
111 // NOLINTEND
112
113public:
114 // constructor thunks
115 // NOLINTBEGIN
116 MCNAPI void* $ctor(
117 ::std::shared_ptr<::MainMenuScreenModel> model,
118 ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> entitlementManager,
119 ::RealmsCreateParams const& createParams,
120 bool isSubController,
121 ::ScreenExitBehavior exitBehavior
122 );
123 // NOLINTEND
124
125public:
126 // virtual function thunks
127 // NOLINTBEGIN
128 MCNAPI void $onCreation();
129
130 MCNAPI void $onOpen();
131
132 MCNAPI void $onLeave();
133
134 MCNAPI void $addStaticScreenVars(::Json::Value& globalVars);
135
136 MCNAPI ::ui::DirtyFlag $tick();
137 // NOLINTEND
138};
Definition Value.h:16
Definition MainMenuScreenController.h:5
Definition MainMenuScreenModel.h:5
Definition RealmsCreateParams.h:5
Definition RealmsCreateScreenController.h:5
MCAPI void _verifyAppStoreReady(::std::function< void()> readyCallback)
MCAPI void _errorDialogFailedConditions()
MCAPI void * $ctor(::std::shared_ptr<::MainMenuScreenModel > model, ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager > entitlementManager, ::RealmsCreateParams const &createParams, bool isSubController, ::ScreenExitBehavior exitBehavior)
MCAPI void $addStaticScreenVars(::Json::Value &globalVars)
MCAPI void _fulfillPriorRealmPurchase(::std::weak_ptr<::Purchase > purchase)
MCAPI void _errorDialogCreateRealmFail()
MCAPI void _openPurchaseInProgress()
MCAPI void _checkUnfulfilledPurchase()
MCAPI void _promptForIntentMismatchOverride(::std::string const &contentId)
MCAPI void _errorDialogInvalidName(::std::string realmName, bool genericError)
MCAPI RealmsCreateScreenController(::std::shared_ptr<::MainMenuScreenModel > model, ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager > entitlementManager, ::RealmsCreateParams const &createParams, bool isSubController, ::ScreenExitBehavior exitBehavior)
MCAPI::ProductSku const & _getProductSku() const
MCAPI::ui::DirtyFlag $tick()