LeviLamina
Loading...
Searching...
No Matches
PlayerAbilitiesManager.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/Publisher.h"
8#include "mc/legacy/ActorUniqueID.h"
9
10// auto generated forward declare list
11// clang-format off
14class PacketSender;
15class Player;
16namespace Bedrock::PubSub::ThreadModel { struct SingleThreaded; }
17// clang-format on
18
19class PlayerAbilitiesManager {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ActorUniqueID, ::LayeredAbilities>> mAbilitiesData;
24 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> const> mGameplayUserManager;
25 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::PacketSender>> mPacketSender;
26 ::ll::TypedStorage<
27 8,
28 48,
30 mPlayerAbilitiesChanged;
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 PlayerAbilitiesManager();
36
37public:
38 // member functions
39 // NOLINTBEGIN
40 MCAPI explicit PlayerAbilitiesManager(::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager);
41
42 MCAPI ::LayeredAbilities* getPlayerAbilities(::ActorUniqueID const& playerId);
43
44#ifdef LL_PLAT_C
45 MCFOLD ::Bedrock::PubSub::
47 getPlayerAbilitiesChangedPublisher();
48#endif
49
50 MCAPI void sendAllPlayerAbilities(::Player const& playerReference);
51
52 MCAPI void setPacketSender(::PacketSender& packetSender);
53
54 MCAPI void setPlayerAbilities(::ActorUniqueID const& playerId, ::LayeredAbilities const& abilities);
55
56 MCAPI ~PlayerAbilitiesManager();
57 // NOLINTEND
58
59public:
60 // constructor thunks
61 // NOLINTBEGIN
62 MCAPI void* $ctor(::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager);
63 // NOLINTEND
64
65public:
66 // destructor thunk
67 // NOLINTBEGIN
68 MCAPI void $dtor();
69 // NOLINTEND
70};
Definition Publisher.h:8
Definition GameplayUserManager.h:22
Definition LayeredAbilities.h:21
Definition PacketSender.h:17
Definition Player.h:137
Definition ActorUniqueID.h:10