LeviLamina
Loading...
Searching...
No Matches
ProjectRegion.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/game_refs/EnableGetWeakRef.h"
7#include "mc/deps/script_core/runtime/scripting/Result_deprecated.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
12class BlockPos;
13class BoundingBox;
14class ChunkSource;
15class Dimension;
16class LevelChunk;
17struct Bounds;
18namespace Editor { class RelativeVolumeListBlockVolume; }
19namespace Editor { struct ProjectRegionConfig; }
20namespace mce { class UUID; }
21// clang-format on
22
23namespace Editor {
24
25class ProjectRegion : public ::EnableGetWeakRef<::Editor::ProjectRegion> {
26public:
27 // ProjectRegion inner types declare
28 // clang-format off
31 // clang-format on
32
33 // ProjectRegion inner types define
34 struct AvailabilityRequest {
35 public:
36 // member variables
37 // NOLINTBEGIN
42 // NOLINTEND
43
44 public:
45 // prevent constructor by default
46 AvailabilityRequest& operator=(AvailabilityRequest const&);
47 AvailabilityRequest(AvailabilityRequest const&);
48 AvailabilityRequest();
49 };
50
51 struct BlockOperationAreaRequest {
52 public:
53 // member variables
54 // NOLINTBEGIN
61 // NOLINTEND
62
63 public:
64 // prevent constructor by default
65 BlockOperationAreaRequest& operator=(BlockOperationAreaRequest const&);
66 BlockOperationAreaRequest(BlockOperationAreaRequest const&);
67 BlockOperationAreaRequest();
68 };
69
70public:
71 // member variables
72 // NOLINTBEGIN
90 // NOLINTEND
91
92public:
93 // prevent constructor by default
94 ProjectRegion& operator=(ProjectRegion const&);
95 ProjectRegion(ProjectRegion const&);
96 ProjectRegion();
97
98public:
99 // member functions
100 // NOLINTBEGIN
101 MCNAPI
102 ProjectRegion(::Dimension& dimension, ::Editor::ProjectRegionConfig const& config, ::std::optional<uint64> ownerId);
103
104 MCNAPI void _destroy();
105
106 MCNAPI void _initialize(::Dimension& dimension);
107
108 MCNAPI bool _isBoundsAvailable(::Bounds const& bounds) const;
109
110 MCNAPI void _onChunkLoaded(::ChunkSource&, ::LevelChunk& levelChunk, int);
111
112 MCNAPI void _onChunkUnloaded(::LevelChunk& levelChunk);
113
114 MCNAPI void _processAvailability();
115
117
118 MCNAPI void _processBounds();
119
121
122 MCNAPI bool isAreaAvailable(::BoundingBox const& area);
123
124 MCNAPI bool isLocationAvailable(::BlockPos const& loc) const;
125
126 MCNAPI ::Scripting::Result_deprecated<::mce::UUID> requestAvailabilityCheck(
127 ::std::function<void(::Scripting::Result_deprecated<void>)> callback,
128 ::std::optional<::Bounds> bounds
129 );
130
131 MCNAPI ::Scripting::Result_deprecated<::mce::UUID> requestBlockOperationArea(
133 ::std::function<
135 callback
136 );
137
138 MCNAPI ::Scripting::Result_deprecated<void> requestBoundsUpdate(::Bounds const& bounds);
139
140 MCNAPI ::Scripting::Result_deprecated<void> requestExpandToInclude(::Bounds const& bounds);
141
142 MCNAPI ::Scripting::Result_deprecated<void> requestMove(::BlockPos const& center);
143
144 MCNAPI ::Scripting::Result_deprecated<void> setBlock(::BlockPos const& pos, ::Block const& block);
145
146 MCNAPI ::Scripting::Result_deprecated<void> tryDimensionTransfer(::Dimension& newDimension);
147
149 // NOLINTEND
150
151public:
152 // constructor thunks
153 // NOLINTBEGIN
154 MCNAPI void*
155 $ctor(::Dimension& dimension, ::Editor::ProjectRegionConfig const& config, ::std::optional<uint64> ownerId);
156 // NOLINTEND
157
158public:
159 // destructor thunk
160 // NOLINTBEGIN
161 MCNAPI void $dtor();
162 // NOLINTEND
163};
164
165} // namespace Editor
Definition BlockPos.h:17
Definition Block.h:41
Definition BoundingBox.h:13
Definition ChunkSource.h:36
Definition Dimension.h:86
MCAPI ::Scripting::Result_deprecated< void > requestExpandToInclude(::Bounds const &bounds)
MCAPI void _processBounds()
MCAPI void _destroy()
MCAPI ProjectRegion(::Dimension &dimension, ::Editor::ProjectRegionConfig const &config, ::std::optional< uint64 > ownerId)
MCAPI ::Scripting::Result_deprecated< void > tryDimensionTransfer(::Dimension &newDimension)
MCAPI ::Scripting::Result_deprecated<::mce::UUID > requestAvailabilityCheck(::std::function< void(::Scripting::Result_deprecated< void >)> callback, ::std::optional<::Bounds > bounds)
MCAPI void _onChunkLoaded(::ChunkSource &, ::LevelChunk &levelChunk, int)
MCAPI void _refreshChunksToProcess()
MCAPI void * $ctor(::Dimension &dimension, ::Editor::ProjectRegionConfig const &config, ::std::optional< uint64 > ownerId)
MCAPI void _initialize(::Dimension &dimension)
MCAPI bool _isBoundsAvailable(::Bounds const &bounds) const
MCAPI ::Scripting::Result_deprecated< void > requestBoundsUpdate(::Bounds const &bounds)
MCAPI ::Scripting::Result_deprecated<::mce::UUID > requestBlockOperationArea(::Editor::RelativeVolumeListBlockVolume volume, ::std::function< void(::Editor::RelativeVolumeListBlockVolume const &, ::std::optional<::Scripting::Result_deprecated< void > >)> callback)
MCAPI ::Scripting::Result_deprecated< void > requestMove(::BlockPos const &center)
MCAPI bool isAreaAvailable(::BoundingBox const &area)
MCAPI void _onChunkUnloaded(::LevelChunk &levelChunk)
MCAPI bool isLocationAvailable(::BlockPos const &loc) const
MCAPI ::Scripting::Result_deprecated< void > setBlock(::BlockPos const &pos, ::Block const &block)
MCAPI void _processBlockOperationAreas()
MCAPI void _processAvailability()
Definition RelativeVolumeListBlockVolume.h:24
Definition EnableGetWeakRef.h:6
Definition LevelChunk.h:77
Definition Result_deprecated.h:8
Definition UUID.h:8
Definition Bounds.h:8
Definition ProjectRegionConfig.h:7
Definition ProjectRegion.h:34
Definition Alias.h:14