LeviLamina
Loading...
Searching...
No Matches
ClientInstanceScreenModel.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/game/ControlOptionType.h"
7#include "mc/client/game/CoordinateCaptureType.h"
8#include "mc/client/gui/CraftingType.h"
9#include "mc/client/gui/SoundDirection.h"
10#include "mc/client/gui/screens/models/MinecraftScreenModel.h"
11#include "mc/client/util/ChatMessageRestrictions.h"
12#include "mc/deps/core/threading/Async.h"
13#include "mc/deps/core/utility/NonOwnerPointer.h"
14#include "mc/deps/input/enums/WYSIWYGState.h"
15#include "mc/legacy/ActorUniqueID.h"
16#include "mc/network/packet/MultiplayerSettingsPacketType.h"
17#include "mc/network/packet/StructureTemplateRequestOperation.h"
18#include "mc/options/UIProfile.h"
19#include "mc/options/option_types/OptionID.h"
20#include "mc/util/HudElement.h"
21#include "mc/util/ProfanityFilterContext.h"
22#include "mc/world/actor/ActorType.h"
23#include "mc/world/actor/ai/util/BossEventUpdateType.h"
24#include "mc/world/level/block/actor/BlockActorType.h"
25#include "mc/world/level/block/actor/ChalkboardSize.h"
26
27// auto generated forward declare list
28// clang-format off
29class Actor;
30class Block;
31class BlockActor;
33class BlockPos;
34class BlockSource;
36class BossEventPacket;
37class BoundingBox;
39class CommandOrigin;
41class GuiData;
42class GuiMessage;
44class ItemStack;
51class RectangleArea;
57class TitleMessage;
58class Vec3;
59struct BossInfo;
60struct PhotoRecord;
61namespace Bedrock::PubSub { class Subscription; }
62namespace Bedrock::Safety { class RedactableString; }
63namespace Core { class Path; }
64namespace OreUI { class Router; }
65namespace Social { class User; }
66namespace mce { class Color; }
67namespace mce { class UUID; }
68// clang-format on
69
71public:
72 // member variables
73 // NOLINTBEGIN
74 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ActorUniqueID, ::BossInfo>> mBossInfo;
75 // NOLINTEND
76
77public:
78 // virtual functions
79 // NOLINTBEGIN
80 virtual ~ClientInstanceScreenModel() /*override*/;
81 // NOLINTEND
82
83public:
84 // member functions
85 // NOLINTBEGIN
86 MCAPI void addPhotoToPortfolio(::std::string const& photoName, ::std::string const& newPhotoName);
87
88 MCAPI void addToDevConsoleMessageHistory(::std::string const& message);
89
90 MCAPI void addToSentMessageHistory(::std::string const& message);
91
92 MCAPI void calculatePlacePos(uchar& face, ::BlockPos& pos) const;
93
94 MCAPI bool canAttachBalloonToBlock(::BlockPos const& blockPos) const;
95
96 MCAPI bool canAttachLeashedActorsToBlock(::BlockPos const& blockPos) const;
97
98 MCAPI bool canCollectFromCauldron(::BlockPos const& blockPos) const;
99
100 MCAPI bool canDrinkMedicine(::ItemStack const& medicine) const;
101
102 MCAPI bool canEmptyIntoCauldron(::BlockPos const& blockPos) const;
103
104 MCAPI bool canHangItemFrame(::ItemStack const& heldItemInstance, uchar face, ::BlockPos blockPos) const;
105
106 MCFOLD bool canInteractWhileKeyboardIsOpen() const;
107
108 MCAPI bool canPlaceCamera(::ItemStack const& camera, ::BlockPos const& blockPos, uchar facing) const;
109
110 MCAPI bool canPlaceChalkboard(::ItemStack const& chalkboard, ::BlockPos const& blockPos, uchar facing) const;
111
112 MCAPI bool canPlaceHeldBlock() const;
113
114 MCAPI bool canPlaceHeldItem() const;
115
116 MCAPI bool canPlaceWaterlily() const;
117
118 MCAPI bool canPlayerFly() const;
119
120 MCAPI bool canTipArrows(::BlockPos const& blockPos) const;
121
122 MCAPI bool canUseReed() const;
123
124 MCAPI bool canUseSeed() const;
125
126 MCAPI void clearActiveControlOptions();
127
128 MCAPI void clearInvalidDownKeys();
129
130 MCAPI void clearTitleMessages();
131
132 MCAPI bool connectedToThirdPartyServer() const;
133
134 MCAPI ::std::unique_ptr<::BookScreenManager> createBookScreenManager(int bookSlot, ::BlockActor* lectern);
135
136 MCAPI ::std::unique_ptr<::MinecartCommandBlockManager>
137 createCommandBlockManager(bool isMinecart, ::BlockPos pos, ::ActorUniqueID entityUniqueID);
138
139 MCAPI ::std::shared_ptr<::HudContainerManagerController> createHudContainerManagerController();
140
141 MCAPI void createPhotoItem(::PhotoRecord const& record);
142
143 MCAPI ::std::unique_ptr<::PortfolioScreenManager> createPortfolioScreenManager();
144
145 MCAPI void deleteContainerManager();
146
147 MCAPI ::BoundingBox detectStructureBlockCorners(::BlockPos const& pos);
148
149 MCAPI void displaySubtitleMessage(::std::string const& message, ::SoundDirection direction, bool isLocalPlayer);
150
151 MCAPI void displaySystemMessage(
152 ::std::string const& message,
153 ::std::string const& ttsMessage,
154 ::ProfanityFilterContext profanityFilterContext
155 );
156
157 MCAPI float distanceSqrFromPlayerToBlockCenter(::Vec3 const& pos);
158
159 MCAPI bool doOtherConfigsExistInThisCategory() const;
160
161 MCFOLD bool doesPlatformShowHideKeyboardButton() const;
162
163 MCAPI bool endPortalFrameBlockHasEye(::BlockPos const& blockPos) const;
164
165 MCAPI ::ChatMessageRestrictions executeCommand(::std::string const& commandLine);
166
167 MCAPI bool exportStructureBlock(::std::string const& structureName, ::Core::Path const& filePath);
168
169 MCAPI bool findStructure(::StructureEditorData& structureData);
170
171 MCAPI bool forceAllowEating() const;
172
173 MCAPI ::std::set<uint> const& getActiveControlOptions() const;
174
175 MCAPI ::std::vector<::OptionID> getActiveOptionIDs(::ControlOptionType controlOptionType) const;
176
177 MCAPI ::std::vector<::MobEffectInstance> const& getAllPlayerEffects() const;
178
179 MCAPI ::Block const& getBlockAt(::BlockPos const& blockPos) const;
180
181 MCAPI ::BlockActor* getBlockEntity(::BlockPos const& pos, ::BlockActorType blockEntityType);
182
183 MCAPI ::mce::Color getBossBarColor(int index) const;
184
185 MCAPI float getBossHealthPercentage(int index) const;
186
187 MCAPI ::Bedrock::Safety::RedactableString getBossName(int index) const;
188
189 MCAPI ::ChalkboardSize getChalkboardType(::BlockPos const& pos);
190
191 MCAPI ::Social::User& getClientUser();
192
193 MCAPI ::CoordinateCaptureType getCoordinateCaptureType() const;
194
195 MCFOLD ::OreUI::Router& getCurrentUIRouter();
196
197 MCAPI ::std::unique_ptr<::CommandOrigin> getDevConsoleCommandOrigin() const;
198
199 MCAPI ::std::deque<::std::string> const& getDevConsoleMessageHistory();
200
201 MCAPI ::Actor* getEntity(::ActorUniqueID const& entityId);
202
203 MCAPI ::Bedrock::NotNullNonOwnerPtr<::GuiData> getGuiData() const;
204
205 MCAPI ::std::vector<::GuiMessage>& getGuiMessageList();
206
207 MCAPI ::ClientInputHandler* getInput();
208
209 MCAPI ::std::string getInteractionText() const;
210
211 MCAPI int getItemNameOffset(bool showClassicUI, bool showSurvivalUI, bool showLocatorBar) const;
212
213 MCAPI ::std::string const& getLastChatMessage();
214
215 MCAPI ::std::string const getLastFilteredChatMessage();
216
217 MCAPI ::Block const& getLiquidBlockAt(::BlockPos const& blockPos) const;
218
219 MCAPI ::Bedrock::Threading::Async<::ResourceLocation> getLocalThirdPartyGamerpic() const;
220
221 MCAPI int getNumberOfActiveConfigs() const;
222
223 MCAPI int getNumberOfDaysPlayed() const;
224
225 MCAPI ::ItemStack const& getOffhandSlot() const;
226
227 MCAPI float getPickRange() const;
228
229 MCAPI float getPlayerAbsorptionValue() const;
230
231 MCAPI int getPlayerArmorValue() const;
232
233 MCAPI ::std::unique_ptr<::CommandOrigin> getPlayerCommandOrigin() const;
234
235 MCAPI ::std::optional<::BlockPos> const getPlayerCursorBlockHitPosition() const;
236
237 MCAPI float getPlayerExp();
238
239 MCAPI int getPlayerLevel();
240
241 MCAPI ::Vec3 getPlayerPosition() const;
242
243 MCAPI ::BlockSource* getPlayerRegion() const;
244
245 MCAPI ::std::vector<::GuiMessage> getPreexistingChatMessages();
246
247 MCAPI ::RectangleArea getSafeScreenZoneArea() const;
248
249 MCAPI ::ItemStack const& getSelectedItem() const;
250
251 MCAPI ::std::deque<::std::string> const& getSentMessageHistory();
252
253 MCAPI ::std::string const& getStoreName() const;
254
255 MCAPI ::std::vector<::GuiMessage>& getSubtitleList();
256
257 MCAPI ::Bedrock::Threading::Async<::ResourceLocation>
258 getThirdPartyGamerpic(::mce::UUID const& playerId, ::std::string const& platformOnlineID) const;
259
260 MCAPI ::TitleMessage const& getTitleMessage() const;
261
262 MCAPI ::UIProfile getUIProfile() const;
263
264 MCAPI ::WYSIWYGState getWYSIWYGState() const;
265
266 MCAPI float getXToScreenRatio(float x) const;
267
268 MCAPI float getYToScreenRatio(float y) const;
269
270 MCAPI void handleQuitButtonPress();
271
272 MCAPI bool hasPlayerSleepFlagSet() const;
273
274 MCAPI ::StructureTemplate* importStructureBlock(::std::string const& structureName, ::Core::Path const& filePath);
275
276 MCAPI void initiateGLBFileSave(
277 ::std::string const& defaultName,
278 ::Core::Path const& originPath,
279 ::std::function<void(bool)> onComplete
280 );
281
282 MCAPI ::std::shared_ptr<::MinecraftglTFExporter> initiateStructureModelExport(
283 ::BlockPos const& position,
284 ::StructureEditorData const& structureEditorData,
285 ::std::function<void(bool)> onFileReady
286 );
287
288 MCAPI void insertStructureBlockRequest(::std::string const& structureName, ::StructureTemplate const& temp);
289
290 MCAPI bool isAbleToRespawn() const;
291
292 MCAPI bool isBossProperlyRegistered(int index) const;
293
294 MCFOLD bool isChatMute() const;
295
296 MCAPI bool isDimensionReady() const;
297
298 MCAPI bool isEmoteChatMute() const;
299
300 MCAPI bool const isHudElementVisible(::HudElement hudElement) const;
301
302 MCAPI bool isInEditorToolMode() const;
303
304 MCAPI bool isInteracting() const;
305
306 MCAPI bool isNoConfigSelected() const;
307
308 MCAPI bool isOxygenBubbleShowing() const;
309
310 MCAPI bool isPlayerFlying() const;
311
312 MCAPI bool isPlayerHungry() const;
313
314 MCAPI bool isPlayerInPortal() const;
315
316 MCAPI bool isPlayerInWater() const;
317
318 MCAPI bool isPlayerOnDescendableBlock() const;
319
320 MCAPI bool isPlayerOnGround() const;
321
322 MCAPI bool isPlayerRiding() const;
323
324 MCAPI bool isPlayerRidingActorType(::ActorType type) const;
325
326 MCAPI bool isRemoteProfanityFilterEnabled() const;
327
328 MCAPI bool isTextToSpeechEnabled() const;
329
330 MCAPI bool isTouchPressed() const;
331
332 MCAPI bool isUsingItem() const;
333
334 MCAPI bool itemFrameFilled(::BlockPos const& blockPos) const;
335
336 MCAPI void loadMode(::BlockPos const& pos, ::StructureBlockActor* act);
337
338 MCAPI void makeStructureBlockRequest(
339 ::std::string const& structureName,
340 ::BlockPos const& structureBlockPosition,
341 ::StructureSettings const& structureSettings,
342 ::StructureTemplateRequestOperation exportOperation
343 );
344
345 MCAPI bool mayEditChalkboard(::BlockPos const& blockPos) const;
346
347 MCAPI void navigateToChatScreen();
348
349 MCAPI void navigateToImmersiveReaderScreen(::std::string readerText);
350
351 MCAPI void navigateToInventoryScreen(::CraftingType craftType);
352
353 MCAPI void navigateToLeaveLevelScreen(bool switchScreen);
354
355 MCAPI void navigateToServerStoreScreen();
356
357 MCAPI void queryBossInfo() const;
358
359 MCAPI void registerBlockEventListener(::BlockEventListener& listener);
360
361 MCAPI void registerClientPlayerEventCoordinatorListener(::PlayerEventListener& listener);
362
363 MCAPI void registerContentChangeListener(::ContainerContentChangeListener& listener);
364
365 MCAPI void registerNpcEventListener(::NpcEventListener& listener);
366
367 MCAPI void requestClipboardData(::std::function<void(::std::string const&)> callback) const;
368
369 MCAPI void requestDisconnectPlayer(::std::string const& userName);
370
371 MCAPI void resetCanTakeScreenshot();
372
373 MCAPI void sendBlockEntityUpdatePacket(::BlockPos const& pos);
374
375 MCAPI ::ChatMessageRestrictions sendChatMessage(::std::string const& message);
376
377 MCAPI void sendCommandBlockUpdatePacket(::ActorUniqueID const& entityId);
378
379 MCAPI void sendCommandBlockUpdatePacket(::BlockPos const& pos);
380
381 MCAPI void sendMultiplayerSettingsPacket(::MultiplayerSettingsPacketType type);
382
383 MCAPI void sendRespawnRequest() const;
384
385 MCAPI void sendStructureBlockUpdatePacket(
386 ::BlockPos const& pos,
387 ::StructureEditorData const& structureEditorData,
388 bool trigger
389 );
390
391 MCAPI void setClipboardToPosition(::Vec3 const& pos);
392
393 MCAPI void setClipboardToPosition(::BlockPos const& pos);
394
395 MCAPI void setControlTipsTimeElapsedStart();
396
397 MCAPI void setCoordinateCaptureType(::CoordinateCaptureType coordinateCaptureType);
398
399 MCAPI void setInteractActiveState(bool isInteractActive);
400
401 MCAPI void setMenuPointerPressed(bool pressed);
402
403 MCAPI void setMuteChat(bool isMuted);
404
405 MCAPI void setPauseIntent(bool intent);
406
407 MCAPI void setWYSIWYGState(::WYSIWYGState wysiwygState);
408
409 MCAPI bool shouldDisplayDaysPlayed() const;
410
411 MCAPI bool shouldDisplayPlayerPosition() const;
412
413 MCAPI bool shouldRequestThirdPartyDisplayPicture(::mce::UUID const& playerId) const;
414
415 MCAPI void splitVibrate(int milliSeconds);
416
417 MCAPI ::Bedrock::PubSub::Subscription subscribeToBossEvent(
418 ::std::function<void(::BossEventUpdateType, ::ActorUniqueID const&, ::BossEventPacket const&)> callback
419 );
420
421 MCAPI ::Bedrock::PubSub::Subscription subscribeToBossEvent(::std::function<void(::BossEventUpdateType)> callback);
422
423 MCAPI ::Bedrock::PubSub::Subscription subscribeToProfanityToggleEvent(::std::function<void(bool, bool)> callback);
424
425 MCAPI ::Bedrock::PubSub::Subscription subscribeToSoundEvent(
426 ::std::function<void(
427 ::std::string const&,
428 ::std::optional<::std::string>,
429 ::Vec3 const&,
430 float,
431 ::Vec3 const&,
432 ::Vec3 const&,
433 bool
434 )> callback
435 );
436
437 MCAPI bool thirdPartyGamerpicAllowed(::mce::UUID const& playerId) const;
438
439 MCAPI void toggleChatMute();
440
441 MCAPI void toggleEmoteChatMute();
442
443 MCAPI bool tryBroadcastGlobalPause(bool status);
444
445 MCAPI bool tryGetAgentPosition(::BlockPos& result) const;
446
447 MCAPI void unregisterBlockEventListener(::BlockEventListener& listener);
448
449 MCAPI void unregisterClientPlayerEventCoordinatorListener(::PlayerEventListener& listener);
450
451 MCAPI void unregisterContentChangeListener(::ContainerContentChangeListener& listener);
452
453 MCAPI void unregisterNpcEventListener(::NpcEventListener& listener);
454
455 MCAPI bool useMsaGamertagsOnly() const;
456 // NOLINTEND
457
458public:
459 // destructor thunk
460 // NOLINTBEGIN
461 MCAPI void $dtor();
462 // NOLINTEND
463
464public:
465 // vftables
466 // NOLINTBEGIN
467 MCNAPI static void** $vftableForIDlcBatcher();
468
469 MCNAPI static void** $vftableForIMinecraftScreenModel();
470 // NOLINTEND
471};
Definition Actor.h:125
Definition Subscription.h:10
Definition RedactableString.h:10
Definition BlockActor.h:30
Definition BlockEventListener.h:22
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition BookScreenManager.h:5
Definition BossEventPacket.h:23
Definition BoundingBox.h:13
Definition ClientInputHandler.h:5
Definition ClientInstanceScreenModel.h:5
static MCAPI void ** $vftableForIMinecraftScreenModel()
static MCAPI void ** $vftableForIDlcBatcher()
Definition CommandOrigin.h:32
Definition ContainerContentChangeListener.h:5
Definition Path.h:12
Definition GuiData.h:5
Definition GuiMessage.h:5
Definition HudContainerManagerController.h:14
Definition ItemStack.h:35
Definition MinecartCommandBlockManager.h:5
Definition MinecraftScreenModel.h:5
Definition MinecraftglTFExporter.h:5
Definition MobEffectInstance.h:20
Definition NpcEventListener.h:5
Definition Router.h:7
Definition PlayerEventListener.h:32
Definition PortfolioScreenManager.h:5
Definition RectangleArea.h:5
Definition ResourceLocation.h:15
Definition User.h:7
Definition StructureBlockActor.h:25
Definition StructureEditorData.h:23
Definition StructureSettings.h:18
Definition StructureTemplate.h:35
Definition TitleMessage.h:5
Definition Vec3.h:10
Definition Color.h:13
Definition UUID.h:7
Definition BossInfo.h:5
Definition PhotoRecord.h:5