LeviLamina
Loading...
Searching...
No Matches
ServerLevel.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/UniqueOwnerPointer.h"
8#include "mc/deps/game_refs/WeakRef.h"
9#include "mc/server/commands/CurrentCmdVersion.h"
10#include "mc/util/IDType.h"
11#include "mc/util/TagRegistry.h"
12#include "mc/world/level/CommandOriginSystem.h"
13#include "mc/world/level/Level.h"
14
15// auto generated forward declare list
16// clang-format off
17class Actor;
20class Command;
21class CommandOrigin;
22class EntityContext;
23class Experiments;
24class HashedString;
27class ItemRegistryRef;
29class LevelData;
30class LevelSettings;
31class LevelStorage;
32class MapDataManager;
34class PacketSender;
35class Player;
38class Random;
40class Scheduler;
44class TagCacheManager;
45class TradeTables;
46struct LevelTagIDType;
49namespace PositionTrackingDB { class PositionTrackingDBServer; }
50// clang-format on
51
52class ServerLevel : public ::Level {
53public:
54 // member variables
55 // NOLINTBEGIN
75 // NOLINTEND
76
77public:
78 // prevent constructor by default
79 ServerLevel& operator=(ServerLevel const&);
82
83public:
84 // virtual functions
85 // NOLINTBEGIN
86 // vIndex: 0
87 virtual ~ServerLevel() /*override*/;
88
89 // vIndex: 1
90 virtual bool initialize(
91 ::std::string const& levelName,
92 ::LevelSettings const& levelSettings,
93 ::Experiments const& experiments,
94 ::std::string const* levelId
95 ) /*override*/;
96
97 // vIndex: 384
98 virtual ::PlayerSleepManager const& getPlayerSleepManager() const /*override*/;
99
100 // vIndex: 383
101 virtual ::PlayerSleepManager& getPlayerSleepManager() /*override*/;
102
103 // vIndex: 154
104 virtual ::Bedrock::NonOwnerPointer<::ServerPlayerSleepManager> getServerPlayerSleepManager() /*override*/;
105
106 // vIndex: 153
107 virtual ::Bedrock::NonOwnerPointer<::ServerPlayerSleepManager const> getServerPlayerSleepManager() const
108 /*override*/;
109
110 // vIndex: 155
111 virtual void setCommandsEnabled(bool commandsEnabled) /*override*/;
112
113 // vIndex: 156
114 virtual void setWorldTemplateOptionsUnlocked() /*override*/;
115
116 // vIndex: 270
117 virtual ::ResourcePackManager* getClientResourcePackManager() const /*override*/;
118
119 // vIndex: 271
120 virtual ::ResourcePackManager* getServerResourcePackManager() const /*override*/;
121
122 // vIndex: 272
123 virtual ::TradeTables* getTradeTables() /*override*/;
124
125 // vIndex: 286
126 virtual void
127 runCommand(::HashedString const&, ::CommandOrigin&, ::CommandOriginSystem, ::CurrentCmdVersion const) /*override*/;
128
129 // vIndex: 285
130 virtual void runCommand(::Command&, ::CommandOrigin&, ::CommandOriginSystem) /*override*/;
131
132 // vIndex: 273
133 virtual void
134 decrementTagCache(::std::string const& tag, ::TagRegistry<::IDType<::LevelTagIDType>, ::IDType<::LevelTagSetIDType>>&) /*override*/
135 ;
136
137 // vIndex: 274
138 virtual void
139 incrementTagCache(::std::string const& tag, ::TagRegistry<::IDType<::LevelTagIDType>, ::IDType<::LevelTagSetIDType>>&) /*override*/
140 ;
141
142 // vIndex: 275
143 virtual ::Bedrock::NonOwnerPointer<::TagCacheManager> getTagCacheManager() /*override*/;
144
145 // vIndex: 227
146 virtual ::LevelChunkMetaDataManager* getLevelChunkMetaDataManager() /*override*/;
147
148 // vIndex: 234
149 virtual void loadFunctionManager() /*override*/;
150
151 // vIndex: 317
152 virtual ::Random& getThreadRandom() const /*override*/;
153
154 // vIndex: 296
155 virtual ::PositionTrackingDB::PositionTrackingDBServer* getPositionTrackerDBServer() const /*override*/;
156
157 // vIndex: 365
158 virtual ::Bedrock::NonOwnerPointer<::ChunkGenerationManager> getChunkGenerationManager() /*override*/;
159
160 // vIndex: 364
161 virtual ::Bedrock::NonOwnerPointer<::ChunkGenerationManager const> getChunkGenerationManager() const /*override*/;
162
163 // vIndex: 366
164 virtual ::Bedrock::NotNullNonOwnerPtr<::MapDataManager> getMapDataManager() /*override*/;
165
166 // vIndex: 385
167 virtual void _subTick() /*override*/;
168
169 // vIndex: 378
170 virtual ::PlayerDeathManager* _getPlayerDeathManager() /*override*/;
171
172 // vIndex: 379
173 virtual ::MapDataManager& _getMapDataManager() /*override*/;
174
175 // vIndex: 386
176 virtual void _initializeMapDataManager() /*override*/;
177 // NOLINTEND
178
179public:
180 // member functions
181 // NOLINTBEGIN
182 MCAPI ServerLevel(
183 ::Bedrock::NotNullNonOwnerPtr<::PacketSender> packetSender,
184 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> const& soundPlayer,
186 ::Bedrock::NotNullNonOwnerPtr<::LevelData> levelData,
187 ::IMinecraftEventing& eventing,
188 ::ResourcePackManager& serverResourcePackManager,
189 ::ResourcePackManager& clientResourcePackManager,
190 ::Bedrock::NotNullNonOwnerPtr<::StructureManager> structureManager,
191 ::MinecraftCommands& commands,
192 ::Scheduler& callbackContext,
193 ::Bedrock::NotNullNonOwnerPtr<::IEntityRegistryOwner> const& entityRegistryOwner,
194 ::WeakRef<::EntityContext> levelEntity,
195 ::ItemRegistryRef itemRegistry,
196 bool clientSideChunkGenerationEnabled,
197 bool blockNetworkIdsAreHashes,
198 ::NetworkPermissions const& networkPermissions,
199 ::std::weak_ptr<::BlockTypeRegistry> blockRegistry
200 );
201
202 MCAPI void _initializeActorManager();
203
204 MCAPI void _initializeMobEvents();
205
206 MCAPI void _initializePlayerSleepManager();
207
208 MCAPI void _initializeScoreboard();
209
210 MCAPI void _onActorEntityAdded(::Actor& actor);
211
212 MCAPI void _onPlayerWakeUp(::Player& player);
213 // NOLINTEND
214
215public:
216 // constructor thunks
217 // NOLINTBEGIN
218 MCAPI void* $ctor(
219 ::Bedrock::NotNullNonOwnerPtr<::PacketSender> packetSender,
220 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> const& soundPlayer,
222 ::Bedrock::NotNullNonOwnerPtr<::LevelData> levelData,
223 ::IMinecraftEventing& eventing,
224 ::ResourcePackManager& serverResourcePackManager,
225 ::ResourcePackManager& clientResourcePackManager,
226 ::Bedrock::NotNullNonOwnerPtr<::StructureManager> structureManager,
227 ::MinecraftCommands& commands,
228 ::Scheduler& callbackContext,
229 ::Bedrock::NotNullNonOwnerPtr<::IEntityRegistryOwner> const& entityRegistryOwner,
230 ::WeakRef<::EntityContext> levelEntity,
231 ::ItemRegistryRef itemRegistry,
232 bool clientSideChunkGenerationEnabled,
233 bool blockNetworkIdsAreHashes,
234 ::NetworkPermissions const& networkPermissions,
235 ::std::weak_ptr<::BlockTypeRegistry> blockRegistry
236 );
237 // NOLINTEND
238
239public:
240 // destructor thunk
241 // NOLINTBEGIN
242 MCAPI void $dtor();
243 // NOLINTEND
244
245public:
246 // virtual function thunks
247 // NOLINTBEGIN
248 MCAPI bool $initialize(
249 ::std::string const& levelName,
250 ::LevelSettings const& levelSettings,
251 ::Experiments const& experiments,
252 ::std::string const* levelId
253 );
254
255 MCFOLD ::PlayerSleepManager const& $getPlayerSleepManager() const;
256
257 MCFOLD ::PlayerSleepManager& $getPlayerSleepManager();
258
259 MCFOLD ::Bedrock::NonOwnerPointer<::ServerPlayerSleepManager> $getServerPlayerSleepManager();
260
261 MCFOLD ::Bedrock::NonOwnerPointer<::ServerPlayerSleepManager const> $getServerPlayerSleepManager() const;
262
263 MCAPI void $setCommandsEnabled(bool commandsEnabled);
264
265 MCAPI void $setWorldTemplateOptionsUnlocked();
266
267 MCAPI ::ResourcePackManager* $getClientResourcePackManager() const;
268
269 MCAPI ::ResourcePackManager* $getServerResourcePackManager() const;
270
271 MCAPI ::TradeTables* $getTradeTables();
272
273 MCAPI void
274 $decrementTagCache(::std::string const& tag, ::TagRegistry<::IDType<::LevelTagIDType>, ::IDType<::LevelTagSetIDType>>&);
275
276 MCAPI void
277 $incrementTagCache(::std::string const& tag, ::TagRegistry<::IDType<::LevelTagIDType>, ::IDType<::LevelTagSetIDType>>&);
278
279 MCAPI ::Bedrock::NonOwnerPointer<::TagCacheManager> $getTagCacheManager();
280
281 MCAPI ::LevelChunkMetaDataManager* $getLevelChunkMetaDataManager();
282
283 MCAPI void $loadFunctionManager();
284
285 MCFOLD ::Random& $getThreadRandom() const;
286
287 MCAPI ::PositionTrackingDB::PositionTrackingDBServer* $getPositionTrackerDBServer() const;
288
289 MCFOLD ::Bedrock::NonOwnerPointer<::ChunkGenerationManager> $getChunkGenerationManager();
290
291 MCFOLD ::Bedrock::NonOwnerPointer<::ChunkGenerationManager const> $getChunkGenerationManager() const;
292
293 MCAPI ::Bedrock::NotNullNonOwnerPtr<::MapDataManager> $getMapDataManager();
294
295 MCAPI void $_subTick();
296
297 MCAPI ::PlayerDeathManager* $_getPlayerDeathManager();
298
299 MCAPI ::MapDataManager& $_getMapDataManager();
300
301 MCAPI void $_initializeMapDataManager();
302 // NOLINTEND
303
304public:
305 // vftables
306 // NOLINTBEGIN
307 MCAPI static void** $vftableForBlockSourceListener();
308
309 MCAPI static void** $vftableForIWorldRegistriesProvider();
310
311 MCAPI static void** $vftableForILevel();
312 // NOLINTEND
313};
Definition Actor.h:104
Definition UniqueOwnerPointer.h:9
Definition BlockTypeRegistry.h:24
Definition ChunkGenerationManager.h:17
Definition CommandOrigin.h:32
Definition Command.h:17
Definition EntityContext.h:16
Definition Experiments.h:14
Definition HashedString.h:5
Definition IEntityRegistryOwner.h:14
Definition IMinecraftEventing.h:143
Definition ItemRegistryRef.h:29
Definition LevelChunkMetaDataManager.h:23
Definition LevelData.h:48
Definition LevelSettings.h:36
Definition LevelStorage.h:24
Definition Level.h:234
Definition MapDataManager.h:21
Definition MinecraftCommands.h:33
Definition PacketSender.h:17
Definition PlayerDeathManager.h:15
Definition PlayerSleepManager.h:5
Definition Player.h:119
Definition Random.h:16
Definition ResourcePackManager.h:24
Definition Scheduler.h:13
Definition ServerLevel.h:52
Definition ServerPlayerSleepManager.h:22
Definition SoundPlayerInterface.h:20
Definition StructureManager.h:40
Definition TagCacheManager.h:17
Definition TagRegistry.h:9
Definition TradeTables.h:13
Definition WeakRef.h:8
Definition IDType.h:6
Definition LevelTagIDType.h:5
Definition LevelTagSetIDType.h:5
Definition NetworkPermissions.h:5
Definition Alias.h:14