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/game_refs/WeakRef.h"
7#include "mc/deps/scripting/lifetime_registry/StrongTypedObjectHandle.h"
8#include "mc/deps/scripting/lifetime_registry/WeakLifetimeScope.h"
9#include "mc/deps/scripting/runtime/Result.h"
10#include "mc/deps/scripting/runtime/Result_deprecated.h"
11#include "mc/scripting/modules/minecraft/ScriptFacing.h"
12#include "mc/world/level/BlockPos.h"
13#include "mc/world/level/block/LiquidType.h"
14
15// auto generated forward declare list
16// clang-format off
17class BlockSource;
18class Vec3;
19namespace ScriptModuleMinecraft { class BaseScriptBlockComponent; }
20namespace ScriptModuleMinecraft { class IScriptBlockCustomComponentReader; }
21namespace ScriptModuleMinecraft { class ScriptBlockComponents; }
22namespace ScriptModuleMinecraft { class ScriptBlockPermutation; }
23namespace ScriptModuleMinecraft { class ScriptBlockType; }
24namespace ScriptModuleMinecraft { class ScriptDimension; }
25namespace ScriptModuleMinecraft { class ScriptItemStack; }
26namespace ScriptModuleMinecraft { class ScriptRGBA; }
27namespace ScriptModuleMinecraft { struct ScriptLocationInUnloadedChunkError; }
28namespace ScriptModuleMinecraft { struct ScriptLocationOutOfWorldBoundsError; }
29namespace Scripting { struct ClassBinding; }
30namespace Scripting { struct Error; }
31namespace Scripting { struct InvalidArgumentError; }
32// clang-format on
33
34namespace ScriptModuleMinecraft {
35
37public:
38 // member variables
39 // NOLINTBEGIN
40 ::ll::TypedStorage<8, 16, ::Scripting::WeakLifetimeScope> mScope;
41 ::ll::TypedStorage<8, 8, ::BlockSource*> mBlockSource;
42 ::ll::TypedStorage<4, 12, ::BlockPos> mPosition;
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI bool _isValid() const;
49
50 MCAPI ::Scripting::Result<
51 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
54 above(int steps) const;
55
56 MCAPI ::Scripting::Result<
57 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
60 below(int steps) const;
61
62 MCAPI ::Scripting::Result<
63 bool,
67 canBeDestroyedByLiquidSpread(::LiquidType liquidType) const;
68
69 MCAPI ::Scripting::Result<
70 bool,
74 canContainLiquid(::LiquidType liquidType) const;
75
76 MCAPI ::Scripting::Result<
77 bool,
81 canPlace(
82 ::std::variant<
83 ::std::string,
86 ::std::optional<::ScriptModuleMinecraft::ScriptFacing> faceToPlaceOn
87 ) const;
88
89 MCAPI ::Scripting::Result<
90 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
93 east(int steps) const;
94
95 MCAPI ::Scripting::Result_deprecated<
96 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::BaseScriptBlockComponent>>>
97 getComponent_010(
99 ::std::string const& componentName
100 );
101
102 MCAPI ::Scripting::Result<
103 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::BaseScriptBlockComponent>>,
106 getComponent_V1(
108 ::std::string const& componentName
109 );
110
111 MCAPI ::Scripting::Result<
112 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::BaseScriptBlockComponent>>,
115 getComponent_V2(
117 ::std::string const& componentName
118 );
119
120 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptDimension> getDimension() const;
121
122 MCAPI ::std::string getId_010() const;
123
124 MCAPI ::Scripting::Result<
125 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptItemStack>>,
128 getItemStack(int amount, bool withData) const;
129
130 MCAPI ::Scripting::
131 Result<int, ::Scripting::InvalidArgumentError, ::ScriptModuleMinecraft::ScriptLocationInUnloadedChunkError>
132 getLightLevel() const;
133
134 MCAPI ::Scripting::Result<
135 ::std::string,
138 getLocalizationKey() const;
139
140 MCAPI ::Scripting::Result_deprecated<::Vec3> getLocation() const;
141
142 MCAPI ::Scripting::StrongTypedObjectHandle<::BlockPos> getLocation_010() const;
143
144 MCAPI ::Scripting::Result<
148 getMapColor() const;
149
150 MCAPI ::Scripting::Result<
154 getPermutation() const;
155
156 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlockPermutation>
157 getPermutation_010() const;
158
159 MCAPI ::Scripting::Result<
160 ::std::optional<int>,
163 getRedstonePower() const;
164
165 MCAPI ::Scripting::
166 Result<int, ::Scripting::InvalidArgumentError, ::ScriptModuleMinecraft::ScriptLocationInUnloadedChunkError>
167 getSkyLightLevel() const;
168
169 MCAPI ::Scripting::Result<
170 ::std::vector<::std::string>,
173 getTags() const;
174
175 MCAPI ::std::vector<::std::string> getTags_010() const;
176
177 MCAPI ::Scripting::Result<
181 getType() const;
182
183 MCAPI ::Scripting::Result<
184 ::std::string,
187 getTypeId() const;
188
189 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlockType> getType_010() const;
190
191 MCAPI ::Scripting::Result<
192 bool,
195 getWaterlogged() const;
196
197 MCAPI ::Scripting::Result<
198 bool,
201 hasTag(::std::string const& tag) const;
202
203 MCAPI bool hasTag_010(::std::string const& tag) const;
204
205 MCAPI ::Scripting::Result<
206 bool,
209 isAir() const;
210
211 MCAPI ::Scripting::Result<
212 bool,
215 isLiquid() const;
216
217 MCAPI ::Scripting::Result<
218 bool,
222 isLiquidBlocking(::LiquidType liquidType) const;
223
224 MCAPI ::Scripting::Result<
225 bool,
228 isSolid() const;
229
230 MCAPI ::Scripting::Result<
231 bool,
235 liquidCanFlowFromDirection(::LiquidType liquidType, ::ScriptModuleMinecraft::ScriptFacing flowDirection) const;
236
237 MCAPI ::Scripting::Result<
238 bool,
242 liquidSpreadCausesSpawn(::LiquidType liquidType) const;
243
244 MCAPI ::Scripting::Result<
245 bool,
248 matches(
249 ::std::string blockName,
250 ::std::optional<::std::unordered_map<::std::string, ::std::variant<int, ::std::string, bool>>> properties
251 ) const;
252
253 MCAPI ::Scripting::Result<
254 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
257 north(int steps) const;
258
259 MCAPI ::Scripting::Result<
260 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
263 offset(::Vec3 const& offset) const;
264
265 MCAPI ::Scripting::Result<
266 void,
269 setPermutation(::ScriptModuleMinecraft::ScriptBlockPermutation const& blockData);
270
271 MCAPI ::Scripting::Result<
272 void,
276 setType(
277 ::std::variant<
279 ::std::string> const& blockType
280 );
281
282 MCAPI ::Scripting::Result<
283 void,
287 setWaterlogged(bool setWaterlogged);
288
289 MCAPI ::Scripting::Result<
290 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
293 south(int steps) const;
294
295 MCAPI ::Scripting::Result<
296 bool,
299 trySetPermutation(::ScriptModuleMinecraft::ScriptBlockPermutation const& blockData) const;
300
301 MCAPI ::Scripting::Result<
302 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlock>>,
305 west(int steps) const;
306 // NOLINTEND
307
308public:
309 // static functions
310 // NOLINTBEGIN
311 MCAPI static ::Scripting::ClassBinding
313
314 MCAPI static ::Scripting::Result<
315 void,
318 setPermutationStatic(
319 ::BlockSource& region,
320 ::BlockPos const& location,
322 );
323
324 MCAPI static ::Scripting::Result<
325 void,
329 setTypeStatic(
330 ::BlockSource& region,
331 ::BlockPos const& location,
332 ::std::variant<
334 ::std::string> const& blockTypeOrBlockTypeName
335 );
336 // NOLINTEND
337};
338
339} // namespace ScriptModuleMinecraft
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition BaseScriptBlockComponent.h:19
Definition IScriptBlockCustomComponentReader.h:18
Definition ScriptBlockComponents.h:22
Definition ScriptBlockPermutation.h:23
Definition ScriptBlockType.h:20
Definition ScriptBlock.h:36
Definition ScriptDimension.h:71
Definition ScriptItemStack.h:35
Definition ScriptRGBA.h:15
Definition StrongTypedObjectHandle.h:8
Definition Vec3.h:10
Definition WeakRef.h:8
Definition ScriptLocationInUnloadedChunkError.h:16
Definition ScriptLocationOutOfWorldBoundsError.h:10
Definition ClassBinding.h:19
Definition Error.h:10
Definition InvalidArgumentError.h:17