3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/game_refs/WeakRef.h"
8#include "mc/util/Rotation.h"
9#include "mc/world/level/levelgen/structure/structurepools/JigsawReplacement.h"
10#include "mc/world/level/levelgen/structure/structurepools/StructurePoolElement.h"
11#include "mc/world/level/levelgen/structure/structurepools/StructurePoolElementType.h"
12#include "mc/world/level/levelgen/v2/LiquidSettings.h"
30class FeaturePoolElement :
public ::StructurePoolElement {
34 ::ll::TypedStorage<8, 24, ::WeakRef<::IFeature>> mFeature;
44 virtual ::BlockPos getSize(::Rotation rotation)
const ;
46 virtual ::std::vector<::JigsawBlockInfo>
56 ::std::unordered_map<
::BlockPos, ::std::optional<::ActorDefinitionIdentifier>>& entitiesToPlace,
67 ::br::worldgen::JigsawReplacement jigsaw,
68 ::br::worldgen::LiquidSettings liquidSettings
78 virtual ::StructurePoolElementType type()
const ;
80 virtual ::std::shared_ptr<::SharedTypes::v1_21_80::JigsawStructureMetadata> createMetadata()
const ;
88 ::Bedrock::NotNullNonOwnerPtr<::IStructureTemplateManager> structureManager,
89 ::std::string
const& name
98 ::Bedrock::NotNullNonOwnerPtr<::IStructureTemplateManager> structureManager,
99 ::std::string
const& name
106 MCNAPI ::BlockPos
$getSize(::Rotation rotation)
const;
108 MCNAPI ::std::vector<::JigsawBlockInfo>
117 ::std::unordered_map<
::BlockPos, ::std::optional<::ActorDefinitionIdentifier>>& entitiesToPlace,
128 ::br::worldgen::JigsawReplacement jigsaw,
129 ::br::worldgen::LiquidSettings liquidSettings
137 MCNAPI ::StructurePoolElementType
$type()
const;
139 MCNAPI ::std::shared_ptr<::SharedTypes::v1_21_80::JigsawStructureMetadata>
$createMetadata()
const;
Definition BlockSource.h:72
Definition BoundingBox.h:13
MCAPI::StructurePoolElementType $type() const
MCAPI::BlockPos $getSize(::Rotation rotation) const
MCAPI bool $place(::BlockSource ®ion, ::BlockPos position, ::BlockPos sectionOrigin, ::BoundingBox chunkBB, ::Rotation rotation, ::IRandom &random, ::br::worldgen::JigsawReplacement jigsaw, ::br::worldgen::LiquidSettings liquidSettings) const
MCAPI void * $ctor(::FeatureRegistry &featureRegistry, ::Bedrock::NotNullNonOwnerPtr<::IStructureTemplateManager > structureManager, ::std::string const &name)
MCAPI bool $place(::BlockSource ®ion, ::BlockPos position, ::Rotation rotation, ::BoundingBox chunkBB, ::Random &random, ::std::unordered_map<::BlockPos, ::std::optional<::ActorDefinitionIdentifier > > &entitiesToPlace, ::BlockPos refPos) const
MCAPI ::std::vector<::JigsawBlockInfo > $getJigsawMarkers(::BlockPos position, ::LegacyStructureSettings &settings, ::BlockSource *region) const
MCAPI void $placeActors(::BlockSource ®ion, ::BlockPos position, ::Rotation rotation, ::Random &random) const
MCAPI FeaturePoolElement(::FeatureRegistry &featureRegistry, ::Bedrock::NotNullNonOwnerPtr<::IStructureTemplateManager > structureManager, ::std::string const &name)
static MCAPI void ** $vftable()
MCAPI ::std::shared_ptr<::SharedTypes::v1_21_80::JigsawStructureMetadata > $createMetadata() const
MCAPI void $placeEntities(::BlockSource ®ion, ::BlockPos position, ::Rotation rotation, ::BoundingBox overlapBB) const
Definition FeatureRegistry.h:21
Definition IStructureTemplateManager.h:16
Definition JigsawBlockInfo.h:14
Definition LegacyStructureSettings.h:21
Definition ActorDefinitionIdentifier.h:15