LeviLamina
Loading...
Searching...
No Matches
EditorPlayerCommon.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/IEditorPlayer.h"
7#include "mc/deps/core/utility/optional_ref.h"
8#include "mc/deps/core/utility/pub_sub/Publisher.h"
9#include "mc/deps/scripting/runtime/Result_deprecated.h"
10#include "mc/editor/serviceproviders/EditorPlayerServiceProvider.h"
11#include "mc/editor/services/EditorServiceList.h"
12#include "mc/world/events/EventListenerDispatcher.h"
13#include "mc/world/events/EventResult.h"
14#include "mc/world/events/PlayerEventListener.h"
15
16// auto generated forward declare list
17// clang-format off
18class Player;
20struct DimensionType;
22namespace Bedrock::PubSub { class Subscription; }
23namespace Bedrock::PubSub::ThreadModel { struct SingleThreaded; }
24namespace Editor { class ServiceProviderCollection; }
25namespace Editor { struct EditorInitParams; }
26// clang-format on
27
28namespace Editor {
29
30class EditorPlayerCommon : public ::Editor::IEditorPlayer,
33 public ::EventListenerDispatcher<::PlayerEventListener> {
34public:
35 // EditorPlayerCommon inner types define
36 enum class InitializationState : int {
37 Uninitialized = 0,
38 Initializing = 1,
39 Initialized = 2,
40 Readying = 3,
41 Ready = 4,
42 Deinitializing = 5,
43 };
44
45public:
46 // member variables
47 // NOLINTBEGIN
54 // NOLINTEND
55
56public:
57 // prevent constructor by default
58 EditorPlayerCommon& operator=(EditorPlayerCommon const&);
59 EditorPlayerCommon(EditorPlayerCommon const&);
60 EditorPlayerCommon();
61
62public:
63 // virtual functions
64 // NOLINTBEGIN
65 virtual ~EditorPlayerCommon() /*override*/;
66
67 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
68
69 virtual ::Scripting::Result_deprecated<void> ready() /*override*/;
70
71 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
72
73 virtual ::Editor::ServiceProviderCollection& getServiceProviders() /*override*/;
74
75 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
76 registerTickSubscriber(::std::function<void(::Editor::ServiceProviderCollection&)> fnTick) /*override*/;
77
78 virtual ::Bedrock::PubSub::Subscription
79 registerDimensionChange(::std::function<void(::DimensionType, ::DimensionType)> fn) /*override*/;
80
81 virtual ::Player* getPlayer() const /*override*/;
82
83 virtual ::optional_ref<::PlayerEventCoordinator> getPlayerEventCoordinator() = 0;
84
85 virtual ::EventResult onPlayerTick(::Player& player) /*override*/;
86
87 virtual ::EventResult onEvent(::PlayerDimensionChangeAfterEvent const& evt) /*override*/;
88
89 virtual void _onTick() /*override*/;
90 // NOLINTEND
91
92public:
93 // member functions
94 // NOLINTBEGIN
95 MCNAPI EditorPlayerCommon(::Player& player, ::gsl::not_null<::Editor::EditorInitParams*> initParams);
96
97 MCNAPI ::Editor::EditorPlayerCommon::InitializationState _getInitializationState() const;
98
99 MCNAPI void _setInitializationState(::Editor::EditorPlayerCommon::InitializationState value);
100 // NOLINTEND
101
102public:
103 // constructor thunks
104 // NOLINTBEGIN
105 MCNAPI void* $ctor(::Player& player, ::gsl::not_null<::Editor::EditorInitParams*> initParams);
106 // NOLINTEND
107
108public:
109 // destructor thunk
110 // NOLINTBEGIN
111 MCNAPI void $dtor();
112 // NOLINTEND
113
114public:
115 // virtual function thunks
116 // NOLINTBEGIN
117 MCNAPI ::Scripting::Result_deprecated<void> $init();
118
119 MCNAPI ::Scripting::Result_deprecated<void> $ready();
120
121 MCNAPI ::Scripting::Result_deprecated<void> $quit();
122
123 MCNAPI ::Editor::ServiceProviderCollection& $getServiceProviders();
124
125 MCNAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
127
128 MCNAPI ::Bedrock::PubSub::Subscription
130
131 MCNAPI ::Player* $getPlayer() const;
132
133 MCNAPI ::EventResult $onPlayerTick(::Player& player);
134
135 MCNAPI ::EventResult $onEvent(::PlayerDimensionChangeAfterEvent const& evt);
136
137 MCNAPI void $_onTick();
138
139
140 // NOLINTEND
141
142public:
143 // vftables
144 // NOLINTBEGIN
145 MCNAPI static void** $vftableForEditorServiceList();
146
148
150
151 MCNAPI static void** $vftableForIEditorPlayer();
152 // NOLINTEND
153};
154
155} // namespace Editor
Definition Subscription.h:10
static MCAPI void ** $vftableForEventListenerDispatcher()
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI EditorPlayerCommon(::Player &player, ::gsl::not_null<::Editor::EditorInitParams * > initParams)
MCAPI ::Scripting::Result_deprecated< void > $init()
MCAPI::Bedrock::PubSub::Subscription $registerDimensionChange(::std::function< void(::DimensionType, ::DimensionType)> fn)
MCAPI::Editor::EditorPlayerCommon::InitializationState _getInitializationState() const
MCAPI::EventResult $onEvent(::PlayerDimensionChangeAfterEvent const &evt)
MCAPI void _setInitializationState(::Editor::EditorPlayerCommon::InitializationState value)
static MCAPI void ** $vftableForEditorServiceList()
MCAPI void * $ctor(::Player &player, ::gsl::not_null<::Editor::EditorInitParams * > initParams)
static MCAPI void ** $vftableForEditorPlayerServiceProvider()
MCAPI::EventResult $onPlayerTick(::Player &player)
MCAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription > $registerTickSubscriber(::std::function< void(::Editor::ServiceProviderCollection &)> fnTick)
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI::Editor::ServiceProviderCollection & $getServiceProviders()
MCAPI::Player * $getPlayer() const
static MCAPI void ** $vftableForIEditorPlayer()
Definition EditorPlayerServiceProvider.h:18
Definition IEditorPlayer.h:16
Definition ServiceProviderCollection.h:7
Definition EditorServiceList.h:16
Definition EventListenerDispatcher.h:6
Definition PlayerEventCoordinator.h:28
Definition Player.h:137
Definition DimensionType.h:5
Definition EditorInitParams.h:7
Definition PlayerDimensionChangeAfterEvent.h:15
Definition Alias.h:14