LeviLamina
Loading...
Searching...
No Matches
BrushShapeManagerServiceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/BrushElevationMode.h"
7#include "mc/common/editor/DirectionalPlacementMode.h"
8#include "mc/editor/services/native_brush/BrushFlattenMode.h"
9#include "mc/editor/services/native_brush/BrushPaintCompletionState.h"
10#include "mc/editor/services/native_brush/BrushPaintMode.h"
11
12// auto generated forward declare list
13// clang-format off
14class HashedString;
15class Vec3;
16namespace Editor { class RelativeVolumeListBlockVolume; }
17namespace Editor::BlockMask { class BlockMaskList; }
18// clang-format on
19
20namespace Editor::Services {
21
23public:
24 // virtual functions
25 // NOLINTBEGIN
26 virtual ~BrushShapeManagerServiceProvider() = default;
27
28 virtual ::Editor::RelativeVolumeListBlockVolume const& getCurrentBrushVolume() const = 0;
29
30 virtual void activateBrushTool() = 0;
31
32 virtual void switchBrushPaintMode(::Editor::Brush::BrushPaintMode mode) = 0;
33
34 virtual void setBrushShape(::std::vector<::Vec3> const&) = 0;
35
36 virtual void setBrushShape(::Editor::RelativeVolumeListBlockVolume const&) = 0;
37
38 virtual void setBrushMask(::Editor::BlockMask::BlockMaskList const&) = 0;
39
40 virtual void beginPainting(::std::function<void(::Editor::Brush::BrushPaintCompletionState)>) = 0;
41
42 virtual void endPainting(bool const) = 0;
43
44 virtual void singlePaint(::std::function<void(::Editor::Brush::BrushPaintCompletionState)>) = 0;
45
46 virtual void deactivateBrushTool() = 0;
47
48 virtual void setBrushShapeOffset(::Vec3 const&) = 0;
49
50 virtual ::Vec3 getBrushShapeOffset() const = 0;
51
52 virtual void setTerrainStrength(int const) = 0;
53
54 virtual void setFlattenMode(::Editor::Brush::BrushFlattenMode) = 0;
55
56 virtual void setFlattenSmoothing(int const) = 0;
57
58 virtual void setFloorBlockOverride(bool const) = 0;
59
60 virtual void setElevationMode(::Editor::Brush::BrushElevationMode) = 0;
61
62 virtual void setElevationFalloff(int const) = 0;
63
64 virtual void setElevationSampleLayers(int const) = 0;
65
66 virtual void setElevationBrushRadius(int const) = 0;
67
68 virtual void setBrushShapeVisible(bool const) = 0;
69
70 virtual bool isBusy() = 0;
71
72 virtual void setDirectionalPlacementMode(::Editor::Brush::DirectionalPlacementMode) = 0;
73
74 virtual ::Editor::Brush::DirectionalPlacementMode getDirectionalPlacementMode() const = 0;
75
76 virtual void setInverseEraseMode(bool const) = 0;
77
78 virtual bool getInverseEraseMode() const = 0;
79
80 virtual void setItemPlacement(::HashedString const&) = 0;
81
82 virtual ::HashedString const& getItemPlacement() const = 0;
83
84 virtual bool const isItemPlacementActive() const = 0;
85
86 virtual void pushBlockStateOverride(::HashedString const&, ::std::variant<int, ::std::string, bool> const&) = 0;
87
88 virtual void clearBlockStateOverrides() = 0;
89
90 virtual void setBlockFacePlacementBasedOnCamera(bool const) = 0;
91 // NOLINTEND
92
93public:
94 // virtual function thunks
95 // NOLINTBEGIN
96
97 // NOLINTEND
98
99public:
100 // vftables
101 // NOLINTBEGIN
102 MCNAPI static void** $vftable();
103 // NOLINTEND
104};
105
106} // namespace Editor::Services
Definition BlockMaskList.h:14
Definition RelativeVolumeListBlockVolume.h:21
Definition BrushShapeManagerServiceProvider.h:22
Definition HashedString.h:5
Definition Vec3.h:10