LeviLamina
Loading...
Searching...
No Matches
PlayerLimboActorManager.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/legacy/ActorUniqueID.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class ActorFactory;
13class ActorManager;
14class CompoundTag;
17class LevelStorage;
18class Vec3;
19// clang-format on
20
21class PlayerLimboActorManager {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ActorUniqueID, ::std::vector<::std::unique_ptr<::CompoundTag>>>>
26 mOwnedActorsDimensionTransferLimbo;
27 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::LevelStorage> const> mLevelStorage;
28 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::ActorManager>> mActorManager;
29 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::ActorFactory> const> mActorFactory;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 PlayerLimboActorManager();
35
36public:
37 // member functions
38 // NOLINTBEGIN
39 MCAPI PlayerLimboActorManager(
40 ::Bedrock::NotNullNonOwnerPtr<::LevelStorage> levelStorage,
41 ::Bedrock::NotNullNonOwnerPtr<::ActorManager> actorManager,
42 ::Bedrock::NotNullNonOwnerPtr<::ActorFactory> actorFactory
43 );
44
45 MCAPI void clearOwnedEntityLimboForPlayer(::ActorUniqueID playerId);
46
47 MCAPI void loadAllOwnedLimboActors();
48
49 MCAPI ::Actor* processOwnedAgentForPlayer(
50 ::CompoundTag& agentCompoundTag,
51 ::IAddActorEntityProxy& addActorEntityProxy,
52 ::DimensionHeightRange const& heightRange,
53 ::Vec3 const& spawnPosition
54 );
55
56 MCAPI void transferActorToOwnedEntityLimbo(::ActorUniqueID playerUniqueID, ::Actor& actor);
57
58 MCAPI ~PlayerLimboActorManager();
59 // NOLINTEND
60
61public:
62 // static functions
63 // NOLINTBEGIN
64 MCAPI static ::std::string getOwnedEntityLimboStorageKeyForPlayer(::ActorUniqueID playerId);
65 // NOLINTEND
66
67public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCAPI void* $ctor(
71 ::Bedrock::NotNullNonOwnerPtr<::LevelStorage> levelStorage,
72 ::Bedrock::NotNullNonOwnerPtr<::ActorManager> actorManager,
73 ::Bedrock::NotNullNonOwnerPtr<::ActorFactory> actorFactory
74 );
75 // NOLINTEND
76
77public:
78 // destructor thunk
79 // NOLINTBEGIN
80 MCAPI void $dtor();
81 // NOLINTEND
82};
Definition ActorFactory.h:33
Definition ActorManager.h:30
Definition Actor.h:114
Definition CompoundTag.h:18
Definition DimensionHeightRange.h:5
Definition IAddActorEntityProxy.h:10
Definition LevelStorage.h:25
Definition Vec3.h:10
Definition ActorUniqueID.h:5