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