LeviLamina
Loading...
Searching...
No Matches
ScriptBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/script_core/lifetime_registry/scripting/StrongTypedObjectHandle.h"
7#include "mc/deps/script_core/lifetime_registry/scripting/WeakLifetimeScope.h"
8#include "mc/deps/script_core/runtime/scripting/Result.h"
9#include "mc/deps/shared_types/v1_26_0/block/LiquidType.h"
10#include "mc/world/level/BlockPos.h"
11
12// auto generated forward declare list
13// clang-format off
14class BlockSource;
15class Vec3;
16namespace ScriptModuleMinecraft { class BaseScriptBlockComponent; }
17namespace ScriptModuleMinecraft { class ScriptBlockComponents; }
18namespace ScriptModuleMinecraft { class ScriptBlockPermutation; }
19namespace ScriptModuleMinecraft { class ScriptBlockType; }
20namespace ScriptModuleMinecraft { struct ScriptLocationInUnloadedChunkError; }
21namespace ScriptModuleMinecraft { struct ScriptLocationOutOfWorldBoundsError; }
22namespace Scripting { struct ClassBinding; }
23namespace Scripting { struct Error; }
24namespace Scripting { struct InvalidArgumentError; }
25// clang-format on
26
27namespace ScriptModuleMinecraft {
28
30public:
31 // member variables
32 // NOLINTBEGIN
33 ::ll::TypedStorage<8, 16, ::Scripting::WeakLifetimeScope> mScope;
34 ::ll::TypedStorage<8, 8, ::BlockSource*> mBlockSource;
35 ::ll::TypedStorage<4, 12, ::BlockPos> mPosition;
36 // NOLINTEND
37
38public:
39 // member functions
40 // NOLINTBEGIN
41 MCAPI ::Scripting::Result<
42 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
45 above(int steps) const;
46
47 MCAPI ::Scripting::Result<
48 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
51 below(int steps) const;
52
53 MCAPI ::Scripting::Result<
54 bool,
58 canBeDestroyedByLiquidSpread(::SharedTypes::v1_26_0::LiquidType liquidType) const;
59
60 MCAPI ::Scripting::Result<
61 bool,
65 canContainLiquid(::SharedTypes::v1_26_0::LiquidType liquidType) const;
66
67 MCAPI ::Scripting::Result<
68 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
71 east(int steps) const;
72
73 MCAPI ::Scripting::Result<
74 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::BaseScriptBlockComponent>>,
77 getComponent_V2(::ScriptModuleMinecraft::ScriptBlockComponents const& components, ::std::string_view componentName);
78
79 MCAPI ::Scripting::
80 Result<int, ::Scripting::InvalidArgumentError, ::ScriptModuleMinecraft::ScriptLocationInUnloadedChunkError>
81 getLightLevel() const;
82
83 MCAPI ::Scripting::Result<
84 ::std::string,
87 getLocalizationKey() const;
88
89 MCAPI ::Scripting::
90 Result<int, ::Scripting::InvalidArgumentError, ::ScriptModuleMinecraft::ScriptLocationInUnloadedChunkError>
91 getSkyLightLevel() const;
92
93 MCAPI ::Scripting::Result<
94 ::std::string,
97 getTypeId() const;
98
99 MCAPI ::Scripting::Result<
100 bool,
103 getWaterlogged() const;
104
105 MCAPI ::Scripting::Result<
106 bool,
109 isAir() const;
110
111 MCAPI ::Scripting::Result<
112 bool,
115 isLiquid() const;
116
117 MCAPI ::Scripting::Result<
118 bool,
122 isLiquidBlocking(::SharedTypes::v1_26_0::LiquidType liquidType) const;
123
124 MCAPI ::Scripting::Result<
125 bool,
128 isSolid() const;
129
130 MCAPI ::Scripting::Result<
131 bool,
135 liquidSpreadCausesSpawn(::SharedTypes::v1_26_0::LiquidType liquidType) const;
136
137 MCAPI ::Scripting::Result<
138 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
141 north(int steps) const;
142
143 MCAPI ::Scripting::Result<
144 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
147 offset(::Vec3 const& offset) const;
148
149 MCAPI ::Scripting::Result<
150 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
153 south(int steps) const;
154
155 MCAPI ::Scripting::Result<
156 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
159 west(int steps) const;
160 // NOLINTEND
161
162public:
163 // static functions
164 // NOLINTBEGIN
165 MCAPI static ::Scripting::ClassBinding
166 bind(::std::shared_ptr<::ScriptModuleMinecraft::ScriptBlockComponents> const& blockComponents);
167
168 MCAPI static ::Scripting::Result<
169 void,
172 setPermutationStatic(
173 ::BlockSource& region,
174 ::BlockPos const& location,
176 );
177
178 MCAPI static ::Scripting::Result<
179 void,
183 setTypeStatic(
184 ::BlockSource& region,
185 ::BlockPos const& location,
186 ::std::variant<
188 ::std::string> const& blockTypeOrBlockTypeName
189 );
190 // NOLINTEND
191};
192
193} // namespace ScriptModuleMinecraft
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition BaseScriptBlockComponent.h:18
Definition ScriptBlockComponents.h:25
Definition ScriptBlockPermutation.h:22
Definition ScriptBlockType.h:18
Definition ScriptBlock.h:29
Definition StrongTypedObjectHandle.h:8
Definition Vec3.h:10
Definition ScriptLocationInUnloadedChunkError.h:16
Definition ScriptLocationOutOfWorldBoundsError.h:16
Definition ClassBinding.h:10
Definition Error.h:10
Definition InvalidArgumentError.h:11