LeviLamina
Loading...
Searching...
No Matches
StructureUtils.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/Rotation.h"
7
8// auto generated forward declare list
9// clang-format off
10class AABB;
11class BlockPos;
12class BlockSource;
13class BoundingBox;
14class Level;
18// clang-format on
19
20namespace gametest::StructureUtils {
21// functions
22// NOLINTBEGIN
23MCAPI void AddCommandBlockAndButtonToStartTest(
24 ::BlockPos const& structureBlockPos,
25 ::Rotation,
26 ::BlockPos const& commandBlockPosRelativeToTestPos,
27 ::std::string const& testName,
28 ::BlockSource& region
29);
30
31MCAPI void ClearSpaceForStructure(::BoundingBox const& structureBoundingBox, int structureYPos, ::BlockSource& region);
32
33MCAPI void CreateNewEmptyStructureBlock(
34 ::std::string const& testName,
35 ::BlockPos const& structurePos,
36 ::BlockPos const& size,
37 ::Rotation rotation,
38 ::BlockSource& region
39);
40
41MCAPI ::std::optional<::BlockPos>
42FindStructureBlockContainingPos(::BlockPos const& pos, int searchRadius, ::BlockSource& region);
43
44MCAPI ::std::vector<::BlockPos>
45FindStructureBlocks(::BlockPos const& centerPos, int searchRadius, ::BlockSource& region);
46
47MCAPI ::AABB GetStructureBounds(::StructureBlockActor const& structureBlockActor);
48
49MCAPI ::StructureEditorData GetStructureEditorData(::StructureTemplate const& structure, ::Rotation const& rotation);
50
51MCAPI ::StructureTemplate* GetStructureTemplate(::std::string const& structureName, ::Level& level);
52
53MCAPI ::StructureBlockActor* SpawnStructure(
54 ::std::string const& structureName,
55 ::BlockPos const& northWestCorner,
56 ::Rotation rotation,
57 int,
58 ::BlockSource& region
59);
60// NOLINTEND
61
62} // namespace gametest::StructureUtils
Definition AABB.h:18
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition BoundingBox.h:13
Definition Level.h:249
Definition StructureBlockActor.h:25
Definition StructureEditorData.h:18
Definition StructureTemplate.h:35