LeviLamina
Loading...
Searching...
No Matches
ScriptBlockVolumeBase.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/world/level/block/BlockVolumeBase.h"
5
6// auto generated inclusion list
7#include "mc/deps/script_core/lifetime_registry/scripting/StrongTypedObjectHandle.h"
8#include "mc/deps/script_core/lifetime_registry/scripting/WeakHandleFromThis.h"
9#include "mc/deps/script_core/runtime/scripting/Result.h"
10#include "mc/deps/script_core/runtime/scripting/Result_deprecated.h"
11#include "mc/scripting/modules/minecraft/ScriptBlockVolumeIterable.h"
12
13// auto generated forward declare list
14// clang-format off
16class BlockSource;
17class BlockVolumeBase;
18class BoundingBox;
19class Vec3;
20namespace ScriptModuleMinecraft { class ScriptBlockFilter; }
21namespace ScriptModuleMinecraft { class ScriptBlockLocationIterator; }
22namespace ScriptModuleMinecraft { class ScriptChunkValidator; }
23namespace Scripting { class WeakLifetimeScope; }
24namespace Scripting { struct ArgumentOutOfBoundsError; }
25namespace Scripting { struct ClassBinding; }
26// clang-format on
27
28namespace ScriptModuleMinecraft {
29
31 public ::Scripting::WeakHandleFromThis<::ScriptModuleMinecraft::ScriptBlockVolumeBase> {
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::BlockVolumeBase>>> mBlockVolumeBase;
36 // NOLINTEND
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~ScriptBlockVolumeBase() /*override*/ = default;
42
43 virtual ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlockLocationIterator>
44 getBlockLocationIterator(::Scripting::WeakLifetimeScope scope) = 0;
45
46 virtual ::std::unique_ptr<::BaseBlockLocationIterator> createBlockLocationIterator() = 0;
47
48 virtual ::std::vector<::Vec3> getFoundBlocks(
50 ::BlockSource const& region,
52 ) const;
53
54 virtual bool containsBlock(
56 ::BlockSource const& region,
58 ) const;
59 // NOLINTEND
60
61public:
62 // member functions
63 // NOLINTBEGIN
64 MCAPI ::Scripting::Result_deprecated<::BoundingBox> getBoundingBox() const;
65
66 MCAPI ::Scripting::Result<::std::vector<::Vec3>, ::Scripting::ArgumentOutOfBoundsError>
67 getClosest(uint count, ::Vec3 const& location) const;
68
69 MCAPI ::Scripting::Result<::std::vector<::Vec3>, ::Scripting::ArgumentOutOfBoundsError>
70 getFarthest(uint count, ::Vec3 const& location) const;
71
72 MCAPI ::Scripting::Result_deprecated<::Vec3> getMax() const;
73
74 MCAPI ::Scripting::Result_deprecated<::Vec3> getMin() const;
75 // NOLINTEND
76
77public:
78 // static functions
79 // NOLINTBEGIN
80 MCAPI static ::Scripting::ClassBinding bind();
81 // NOLINTEND
82
83public:
84 // virtual function thunks
85 // NOLINTBEGIN
86 MCAPI ::std::vector<::Vec3> $getFoundBlocks(
88 ::BlockSource const& region,
90 ) const;
91
92 MCAPI bool $containsBlock(
94 ::BlockSource const& region,
96 ) const;
97
98
99 // NOLINTEND
100
101public:
102 // vftables
103 // NOLINTBEGIN
104 MCNAPI static void** $vftable();
105 // NOLINTEND
106};
107
108} // namespace ScriptModuleMinecraft
Definition BaseBlockLocationIterator.h:8
Definition BlockSource.h:71
Definition BlockVolumeBase.h:16
Definition BoundingBox.h:13
Definition ScriptBlockFilter.h:22
Definition ScriptBlockLocationIterator.h:19
Definition ScriptBlockVolumeBase.h:31
Definition ScriptBlockVolumeIterable.h:7
Definition ScriptChunkValidator.h:15
Definition WeakHandleFromThis.h:8
Definition WeakLifetimeScope.h:7
Definition Vec3.h:10
Definition ArgumentOutOfBoundsError.h:10
Definition ClassBinding.h:10