3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/util/Mirror.h"
7#include "mc/util/Rotation.h"
8#include "mc/world/level/levelgen/structure/Projection.h"
29namespace br::worldgen {
32MCAPI
int expansionHackCalc(
33 ::JigsawStructureUtils::MetadataCache& cache,
34 ::BlockPos
const& offset,
36 ::BoundingBox
const& box,
37 ::std::vector<::SharedTypes::v1_21_80::JigsawBlockMetadata>
const& targetJigsaws,
38 ::std::vector<uint64>
const& targetJigsawIndexes,
39 ::JigsawStructureRegistry
const& pools
42MCAPI
void expansionHackEval(
int expandTo, ::BoundingBox& box);
44MCAPI ::std::vector<uint64> getJigsawBlockIds(::StructureTemplatePool
const& pool);
46MCAPI ::std::vector<::gsl::not_null<::std::shared_ptr<::br::worldgen::StructureProcessor const>>>
const&
47getProjectionProcessors(::Projection projection);
50 ::JigsawStructureUtils::MetadataCache&,
54 ::std::vector<::SharedTypes::v1_21_80::JigsawBlockMetadata>
const&,
55 ::std::vector<uint64>
const&,
56 ::JigsawStructureRegistry
const&
59MCFOLD
void noopEval(
int, ::BoundingBox&);
61MCAPI
bool placeInWorld(
62 ::IStructureTemplate
const& tmpl,
63 ::BlockSource& region,
65 ::BlockPos structureOrigin,
66 ::br::worldgen::StructurePlaceSettings
const& settings,
70MCAPI ::std::vector<::br::worldgen::StructureBlockInfo> processBlockInfos(
71 ::BlockSource& region,
73 ::BlockPos structureOrigin,
74 ::br::worldgen::StructurePlaceSettings
const& settings,
75 ::br::worldgen::StructureTemplateBlockPalette sourceBlockInfos
78MCAPI ::std::optional<::BlockPos> randomNamedJigsawLocation(
79 ::StructurePoolElement
const& source,
80 ::std::string_view name,
86MCAPI ::std::vector<uint64>
87shuffledJigsawBlockIndexes(::SharedTypes::v1_21_80::JigsawStructureMetadata
const& metadata, ::IRandom& random);
89MCAPI ::BlockPos transform(::BlockPos pos, ::Mirror mirror, ::Rotation rotation, ::BlockPos pivot);
Definition BlockSource.h:73
Definition BoundingBox.h:13
Definition IStructureTemplate.h:15
Definition JigsawStructureRegistry.h:22
Definition StructurePoolElement.h:40
Definition StructureTemplatePool.h:16
Definition StructureBlockInfo.h:16
Definition StructurePlaceSettings.h:18
Definition StructureProcessor.h:23
Definition StructureTemplateBlockPalette.h:18