LeviLamina
Loading...
Searching...
No Matches
ActorEventCoordinator.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/entity/components/ReplayCorrectionResult.h"
8#include "mc/events/MinecraftEventing.h"
9#include "mc/gameplayhandlers/CoordinatorResult.h"
10#include "mc/world/actor/ActorType.h"
11#include "mc/world/events/ActorGameplayEvent.h"
12#include "mc/world/events/EventCoordinator.h"
13#include "mc/world/events/EventRef.h"
14#include "mc/world/events/MutableActorGameplayEvent.h"
15
16// auto generated forward declare list
17// clang-format off
18class Actor;
23class Player;
24// clang-format on
25
26class ActorEventCoordinator : public ::EventCoordinator<::ActorEventListener> {
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ActorGameplayHandler>> mActorGameplayHandler;
31 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnGameplayUserAddedSubscription;
32 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mPostReloadActorAddedSubscription;
33 // NOLINTEND
34
35public:
36 // member functions
37 // NOLINTBEGIN
38 MCFOLD ::ActorGameplayHandler& getActorGameplayHandler();
39
40 MCFOLD void registerActorGameplayHandler(::std::unique_ptr<::ActorGameplayHandler>&& handler);
41
42 MCAPI void registerWithActorManagerEvents(::IActorManagerConnector& actorManagerConnector);
43
44 MCAPI void registerWithGameplayUserManagerEvents(::IGameplayUserManagerConnector& gameplayUserManagerConnector);
45
46 MCAPI void sendActorCreationAttemptFailed(::Actor& actor, ::std::string_view reason);
47
48#ifdef LL_PLAT_C
49 MCAPI void sendActorInteractedWithMob(
50 ::Actor& actor,
51 ::MinecraftEventing::InteractionType interactionType,
52 ::ActorType interactedActorType
53 );
54
55 MCAPI void sendActorMovementRewindCorrected(::Actor& actor, uint64 tick, ::ReplayCorrectionResult result);
56#endif
57
58 MCAPI void sendActorSneakChanged(::Actor& actor, bool isSneaking);
59
60 MCAPI void sendActorStartRiding(::Actor& actor, ::Actor& vehicle);
61
62 MCAPI void
63 sendActorStopRiding(::Actor& actor, bool exitFromPassenger, bool actorIsBeingDestroyed, bool switchingVehicles);
64
65 MCAPI void sendActorTargetAcquired(::Actor& actor, ::Actor& target);
66
67 MCAPI void sendActorTeleported(::Actor& actor);
68
69 MCAPI void sendActorTick(::Actor& actor);
70
71#ifdef LL_PLAT_C
72 MCAPI void sendClientPlayerAIStepBegin(::Player& player);
73#endif
74
75 MCAPI ::CoordinatorResult sendEvent(::EventRef<::ActorGameplayEvent<::CoordinatorResult>> const& event);
76
77 MCAPI ::CoordinatorResult sendEvent(::EventRef<::MutableActorGameplayEvent<::CoordinatorResult>> event);
78
79 MCAPI void sendEvent(::EventRef<::ActorGameplayEvent<void>> const& event);
80
81 MCAPI void sendEvent(::EventRef<::MutableActorGameplayEvent<void>> event);
82
83 MCAPI void sendServerPlayerAuthInputApplied(::Player& player);
84
85 MCAPI void sendServerPlayerAuthInputReceived(::Player& player);
86 // NOLINTEND
87
88public:
89 // vftables
90 // NOLINTBEGIN
91 MCNAPI static void** $vftable();
92 // NOLINTEND
93};
Definition ActorEventCoordinator.h:26
static MCAPI void ** $vftable()
Definition ActorEventListener.h:20
Definition ActorGameplayHandler.h:13
Definition Actor.h:123
Definition EventCoordinator.h:6
Definition EventRef.h:6
Definition IActorManagerConnector.h:14
Definition IGameplayUserManagerConnector.h:14
Definition Player.h:136
Definition ActorGameplayEvent.h:31
Definition MutableActorGameplayEvent.h:10