LeviLamina
Loading...
Searching...
No Matches
LevelEventManager.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/Connector.h"
8#include "mc/deps/core/utility/pub_sub/Publisher.h"
9#include "mc/deps/shared_types/legacy/LevelEvent.h"
10#include "mc/world/level/ILevelEventManagerCoordinator.h"
11
12// auto generated forward declare list
13// clang-format off
14class CompoundTag;
15class IDimension;
17class PacketSender;
19class Vec3;
20namespace Bedrock::PubSub::ThreadModel { struct MultiThreaded; }
21// clang-format on
22
23class LevelEventManager : public ::ILevelEventManagerCoordinator {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<1, 1, bool const> mIsClientSide;
28 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::LevelEventCoordinator> const> mLevelEventCoordinator;
29 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::PacketSender>> mPacketSender;
30 ::ll::TypedStorage<
31 8,
32 128,
34 void(::SharedTypes::Legacy::LevelEvent, ::Vec3 const&, int),
36 0>>
37 mLevelEventDataPublisher;
38 ::ll::TypedStorage<
39 8,
40 128,
42 void(::SharedTypes::Legacy::LevelEvent, ::CompoundTag const&),
44 0>>
45 mLevelEventCompoundTagPublisher;
46 // NOLINTEND
47
48public:
49 // prevent constructor by default
50 LevelEventManager();
51
52public:
53 // virtual functions
54 // NOLINTBEGIN
55 virtual ~LevelEventManager() /*override*/;
56
57 virtual ::Bedrock::PubSub::Connector<void(::SharedTypes::Legacy::LevelEvent, ::Vec3 const&, int)>&
58 getLevelEventDataConnector() /*override*/;
59
60 virtual ::Bedrock::PubSub::Connector<void(::SharedTypes::Legacy::LevelEvent, ::CompoundTag const&)>&
61 getLevelEventCompoundTagConnector() /*override*/;
62 // NOLINTEND
63
64public:
65 // member functions
66 // NOLINTBEGIN
67 MCAPI
68 LevelEventManager(bool isClientSide, ::Bedrock::NotNullNonOwnerPtr<::LevelEventCoordinator> levelEventCoordinator);
69
70 MCAPI void broadcastLevelEvent(
71 ::SharedTypes::Legacy::LevelEvent type,
72 ::CompoundTag const& tag,
73 ::UserEntityIdentifierComponent const* userIdentifierToExclude
74 );
75
76 MCAPI void broadcastLevelEvent(
77 ::SharedTypes::Legacy::LevelEvent type,
78 ::Vec3 const& pos,
79 int data,
80 ::UserEntityIdentifierComponent const* userIdentifierToExclude
81 );
82
83 MCAPI void
84 broadcastLocalEvent(::IDimension& dimension, ::SharedTypes::Legacy::LevelEvent type, ::Vec3 const& pos, int data);
85 // NOLINTEND
86
87public:
88 // constructor thunks
89 // NOLINTBEGIN
90 MCAPI void* $ctor(bool isClientSide, ::Bedrock::NotNullNonOwnerPtr<::LevelEventCoordinator> levelEventCoordinator);
91 // NOLINTEND
92
93public:
94 // destructor thunk
95 // NOLINTBEGIN
96 MCAPI void $dtor();
97 // NOLINTEND
98
99public:
100 // virtual function thunks
101 // NOLINTBEGIN
102 MCFOLD ::Bedrock::PubSub::Connector<void(::SharedTypes::Legacy::LevelEvent, ::Vec3 const&, int)>&
103 $getLevelEventDataConnector();
104
105 MCFOLD ::Bedrock::PubSub::Connector<void(::SharedTypes::Legacy::LevelEvent, ::CompoundTag const&)>&
106 $getLevelEventCompoundTagConnector();
107
108
109 // NOLINTEND
110
111public:
112 // vftables
113 // NOLINTBEGIN
114 MCNAPI static void** $vftable();
115 // NOLINTEND
116};
Definition Publisher.h:8
Definition CompoundTag.h:23
Definition IDimension.h:25
Definition ILevelEventManagerCoordinator.h:15
Definition LevelEventCoordinator.h:25
static MCAPI void ** $vftable()
Definition PacketSender.h:17
Definition UserEntityIdentifierComponent.h:12
Definition Vec3.h:10