Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
LevelEventCoordinator.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/Subscription.h"
7#include "mc/world/actor/ActorInitializationMethod.h"
8#include "mc/world/events/EventCoordinator.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class EntityContext;
14class GameRules;
19class WorldClock;
20// clang-format on
21
22class LevelEventCoordinator : public ::EventCoordinator<::LevelEventListener> {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::LevelGameplayHandler>> mLevelGameplayHandler;
27 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mGameRuleChangeSubscription;
28 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnRemoveActorEntityReferencesSubscription;
29 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mPostReloadActorAddedSubscription;
30 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnGameplayUserAddedSubscription;
31 // NOLINTEND
32
33public:
34 // virtual functions
35 // NOLINTBEGIN
36 virtual ~LevelEventCoordinator() /*override*/;
37 // NOLINTEND
38
39public:
40 // member functions
41 // NOLINTBEGIN
43
44 MCNAPI void _postReloadActorAdded(::Actor& actor, ::ActorInitializationMethod);
45
46 MCNAPI void registerGameRules(::GameRules& gameRules);
47
48 MCNAPI void registerWithActorManagerEvents(::IActorManagerConnector& actorManagerConnector, bool isClientSide);
49
51
52 MCNAPI void sendLevelRemovedActor(::Actor& actor);
53
55 ::std::string const& dimension,
56 bool wasRaining,
57 bool wasLightning,
58 bool isRaining,
59 bool isLightning
60 );
61
62 MCNAPI void sendWorldClockTimeModified(::gsl::not_null<::WorldClock*> clock);
63 // NOLINTEND
64
65public:
66 // destructor thunk
67 // NOLINTBEGIN
68 MCNAPI void $dtor();
69 // NOLINTEND
70
71public:
72 // vftables
73 // NOLINTBEGIN
74 MCNAPI static void** $vftable();
75 // NOLINTEND
76};
Definition Actor.h:116
Definition EntityContext.h:15
Definition EventCoordinator.h:7
Definition GameRules.h:23
Definition IActorManagerConnector.h:14
Definition IGameplayUserManagerConnector.h:14
Definition LevelEventCoordinator.h:22
MCAPI void sendLevelWeatherChanged(::std::string const &dimension, bool wasRaining, bool wasLightning, bool isRaining, bool isLightning)
MCAPI void sendWorldClockTimeModified(::gsl::not_null<::WorldClock * > clock)
MCAPI void registerWithGameplayUserManagerEvents(::IGameplayUserManagerConnector &gameplayUserManagerConnector)
MCAPI void registerGameRules(::GameRules &gameRules)
MCAPI void sendLevelRemovedActor(::Actor &actor)
MCAPI void _onGameplayUserAdded(::EntityContext &entity)
static MCAPI void ** $vftable()
MCAPI void _postReloadActorAdded(::Actor &actor, ::ActorInitializationMethod)
MCAPI void registerWithActorManagerEvents(::IActorManagerConnector &actorManagerConnector, bool isClientSide)
Definition LevelEventListener.h:17
Definition LevelGameplayHandler.h:13
Definition WorldClock.h:23