LeviLamina
Loading...
Searching...
No Matches
VillagePiece.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/shared_types/VillageType.h"
7#include "mc/world/level/levelgen/structure/PoolElementStructurePiece.h"
8#include "mc/world/level/levelgen/v1/AdjustmentEffect.h"
9
10// auto generated forward declare list
11// clang-format off
12class Block;
13class BlockPos;
14class BlockSource;
15class BlockVolume;
16class ChunkPos;
17class Dimension;
19class Random;
20class StructurePiece;
21// clang-format on
22
23class VillagePiece : public ::PoolElementStructurePiece {
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 virtual int generateHeightAtPosition(
28 ::BlockPos const& pos,
29 ::Dimension& dim,
30 ::BlockVolume& box,
31 ::std::unordered_map<::ChunkPos, ::std::unique_ptr<::std::vector<short>>>& chunkHeightCache
32 ) const /*override*/;
33
34 virtual ::Block const*
35 getSupportBlock(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const /*override*/;
36
37 virtual ::Block const& getBeardStabilizeBlock(::Block const& foundationBlock) const /*override*/;
38
39 virtual ::AdjustmentEffect getTerrainAdjustmentEffect() const /*override*/;
40
41 virtual bool _needsPostProcessing(::BlockSource& region) /*override*/;
42 // NOLINTEND
43
44public:
45 // static functions
46 // NOLINTBEGIN
47 MCAPI static void addPieces(
48 ::BlockPos position,
49 ::std::vector<::std::unique_ptr<::StructurePiece>>& pieces,
50 ::Random& random,
52 ::SharedTypes::VillageType villageType,
53 ::Dimension& dimension
54 );
55 // NOLINTEND
56
57public:
58 // virtual function thunks
59 // NOLINTBEGIN
60 MCAPI int $generateHeightAtPosition(
61 ::BlockPos const& pos,
62 ::Dimension& dim,
63 ::BlockVolume& box,
64 ::std::unordered_map<::ChunkPos, ::std::unique_ptr<::std::vector<short>>>& chunkHeightCache
65 ) const;
66
67 MCAPI ::Block const*
68 $getSupportBlock(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const;
69
70 MCAPI ::Block const& $getBeardStabilizeBlock(::Block const& foundationBlock) const;
71
72 MCFOLD ::AdjustmentEffect $getTerrainAdjustmentEffect() const;
73
74 MCAPI bool $_needsPostProcessing(::BlockSource& region);
75
76
77 // NOLINTEND
78
79public:
80 // vftables
81 // NOLINTBEGIN
82 MCNAPI static void** $vftable();
83 // NOLINTEND
84};
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition BlockVolume.h:14
Definition Block.h:69
Definition ChunkPos.h:11
Definition Dimension.h:89
Definition JigsawStructureRegistry.h:22
Definition Random.h:10
Definition StructurePiece.h:21
Definition VillagePiece.h:23
static MCAPI void ** $vftable()