LeviLamina
Loading...
Searching...
No Matches
PlayerDimensionTransferManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/core/utility/pub_sub/Subscription.h"
8#include "mc/deps/game_refs/StackRefResult.h"
9#include "mc/deps/game_refs/WeakRef.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
15class Dimension;
17class EntityContext;
18class EntityRegistry;
23class PacketSender;
24class Player;
26struct ActorUniqueID;
27// clang-format on
28
29class PlayerDimensionTransferManager {
30public:
31 // member variables
32 // NOLINTBEGIN
33 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PlayerLimboActorManager> const> mPlayerLimboActorManager;
34 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::IPlayerDimensionTransferer>> const>
35 mPlayerDimensionTransferer;
36 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> const> mGameplayUserManager;
37 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> const> mDimensionManager;
38 ::ll::TypedStorage<8, 16, ::WeakRef<::EntityRegistry> const> mEntityRegistry;
39 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::ILevelCrashDumpManager>> const> mLevelCrashDumpManager;
40 ::ll::TypedStorage<1, 1, bool> mLevelFinishedInitializing;
41 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnGameplayUserRemoved;
42 // NOLINTEND
43
44public:
45 // prevent constructor by default
46 PlayerDimensionTransferManager();
47
48public:
49 // member functions
50 // NOLINTBEGIN
51 MCAPI PlayerDimensionTransferManager(
52 ::std::unique_ptr<::PlayerLimboActorManager> playerLimboActorManager,
53 ::std::unique_ptr<::IPlayerDimensionTransferer> playerDimensionTransferer,
54 ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> dimensionManager,
55 ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager,
56 ::gsl::not_null<::StackRefResult<::EntityRegistry>> const& entityRegistry,
57 ::std::unique_ptr<::ILevelCrashDumpManager> levelCrashDumpManager
58 );
59
60 MCAPI bool _isPlayerSuspended(::Player const& player) const;
61
62 MCAPI void _onGameplayUserRemoved(::EntityContext& entity);
63
64 MCAPI bool _playerChangeDimension(::Player& player, ::ChangeDimensionRequest& changeRequest);
65
66 MCAPI void _playerChangeDimensionPrepareRegion(
67 ::Player& player,
68 ::ChangeDimensionRequest& changeRequest,
69 ::Dimension& toDimension
70 );
71
72 MCAPI bool _playerChangeDimensionWaitingForChunks(
73 ::Player& player,
74 ::ChangeDimensionRequest& changeRequest,
75 ::Dimension& toDimension
76 );
77
78 MCFOLD ::IPlayerDimensionTransferConnector& getPlayerDimensionTransferConnector();
79
80 MCAPI void handleChangeDimensionRequests();
81
82 MCAPI void loadAllOwnedLimboActors();
83
84 MCAPI void requestPlayerChangeDimension(::Player const& player, ::ChangeDimensionRequest&& changeRequest);
85
86 MCFOLD void setLevelFinishedInitializing();
87
88 MCFOLD void setPacketSender(::PacketSender& packetSender);
89
90 MCAPI void transferActorToOwnedEntityLimbo(::ActorUniqueID playerId, ::Actor& actor);
91
92 MCAPI ~PlayerDimensionTransferManager();
93 // NOLINTEND
94
95public:
96 // constructor thunks
97 // NOLINTBEGIN
98 MCAPI void* $ctor(
99 ::std::unique_ptr<::PlayerLimboActorManager> playerLimboActorManager,
100 ::std::unique_ptr<::IPlayerDimensionTransferer> playerDimensionTransferer,
101 ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> dimensionManager,
102 ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager,
103 ::gsl::not_null<::StackRefResult<::EntityRegistry>> const& entityRegistry,
104 ::std::unique_ptr<::ILevelCrashDumpManager> levelCrashDumpManager
105 );
106 // NOLINTEND
107
108public:
109 // destructor thunk
110 // NOLINTBEGIN
111 MCAPI void $dtor();
112 // NOLINTEND
113};
Definition Actor.h:125
Definition ChangeDimensionRequest.h:14
Definition DimensionManager.h:30
Definition Dimension.h:89
Definition EntityContext.h:17
Definition EntityRegistry.h:11
Definition GameplayUserManager.h:22
Definition ILevelCrashDumpManager.h:8
Definition IPlayerDimensionTransferConnector.h:13
Definition IPlayerDimensionTransferer.h:21
Definition PacketSender.h:17
Definition PlayerLimboActorManager.h:21
Definition Player.h:137
Definition StackRefResult.h:7
Definition ActorUniqueID.h:10