LeviLamina
Loading...
Searching...
No Matches
DelayActionList.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/container/MovePriorityQueue.h"
7#include "mc/world/level/chunk/QueueRequestResult.h"
8#include "mc/world/level/dimension/DimensionDataSerializer.h"
9
10// auto generated forward declare list
11// clang-format off
12class CompoundTag;
13class DelayRequest;
14class Dimension;
16class IRequestAction;
17class LevelStorage;
18class ServerLevel;
19// clang-format on
20
22public:
23 // DelayActionList inner types declare
24 // clang-format off
26 // clang-format on
27
28 // DelayActionList inner types define
29 class DelayRequestQueue : public ::MovePriorityQueue<::DelayRequest, ::std::greater<::DelayRequest>> {
30 public:
31 // member functions
32 // NOLINTBEGIN
34 ::DimensionDataSerializer dimensionDataSerializer,
35 ::LevelStorage& levelStorage,
36 ::gsl::not_null<::IRequestAction*> actionToRemove
37 );
38 // NOLINTEND
39 };
40
41public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<8, 24, ::DelayActionList::DelayRequestQueue> mDelayRequests;
45 ::ll::TypedStorage<4, 4, ::DimensionDataSerializer> mDimensionDataSerializer;
46 // NOLINTEND
47
48public:
49 // virtual functions
50 // NOLINTBEGIN
51 virtual ~DelayActionList() = default;
52 // NOLINTEND
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCNAPI void _loadRequest(
58 ::Dimension& dimension,
59 ::std::string const& key,
60 ::CompoundTag const& tag,
62 uint64 currentTick,
63 ::std::vector<::std::string>& invalidRequestsOut
64 );
65
66 MCNAPI void _loadRequests(
67 ::Dimension& dimension,
68 ::LevelStorage& levelStorage,
70 uint64 currentTick
71 );
72
73 MCNAPI ::QueueRequestResult _queueRequestOrExecuteAction(
74 ::DelayRequest request,
75 ::LevelStorage& levelStorage,
76 ::Dimension& dimension,
77 uint64 currentTick,
78 bool allowDuplicates
79 );
80
81 MCNAPI void
82 _saveRequest(::DelayRequest& request, ::std::string const& dimensionPrefix, ::LevelStorage& levelStorage);
83
84 MCNAPI void tick(::ServerLevel& level, ::Dimension& dimension, uint64 currentTick);
85 // NOLINTEND
86
87public:
88 // vftables
89 // NOLINTBEGIN
90 MCNAPI static void** $vftable();
91 // NOLINTEND
92};
Definition CompoundTag.h:23
Definition DelayActionList.h:29
MCAPI int removeRequestWithAction(::DimensionDataSerializer dimensionDataSerializer, ::LevelStorage &levelStorage, ::gsl::not_null<::IRequestAction * > actionToRemove)
Definition DelayActionList.h:21
MCAPI void _saveRequest(::DelayRequest &request, ::std::string const &dimensionPrefix, ::LevelStorage &levelStorage)
MCAPI::QueueRequestResult _queueRequestOrExecuteAction(::DelayRequest request, ::LevelStorage &levelStorage, ::Dimension &dimension, uint64 currentTick, bool allowDuplicates)
MCAPI void tick(::ServerLevel &level, ::Dimension &dimension, uint64 currentTick)
MCAPI void _loadRequests(::Dimension &dimension, ::LevelStorage &levelStorage, ::ICommandOriginLoader &loader, uint64 currentTick)
MCAPI void _loadRequest(::Dimension &dimension, ::std::string const &key, ::CompoundTag const &tag, ::ICommandOriginLoader &loader, uint64 currentTick, ::std::vector<::std::string > &invalidRequestsOut)
static MCAPI void ** $vftable()
Definition DelayRequest.h:10
Definition DimensionDataSerializer.h:11
Definition Dimension.h:85
Definition ICommandOriginLoader.h:11
Definition IRequestAction.h:12
Definition LevelStorage.h:25
Definition MovePriorityQueue.h:6
Definition ServerLevel.h:50