LeviLamina
Loading...
Searching...
No Matches
PoolElementStructurePiece.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/Rotation.h"
7#include "mc/world/level/levelgen/structure/StructurePiece.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 BoundingBox;
17class ChunkPos;
18class Dimension;
19class Random;
22struct JigsawJunction;
23// clang-format on
24
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<4, 24, ::BoundingBox> mCachedPieceBounds;
30 ::ll::TypedStorage<4, 4, int> mCachedPieceBaseY;
31 ::ll::TypedStorage<4, 4, int> mCachedXCenter;
32 ::ll::TypedStorage<4, 4, int> mCachedZCenter;
33 ::ll::TypedStorage<4, 4, float> mCachedMaxRadius;
34 ::ll::TypedStorage<8, 8, ::StructurePoolElement const&> mElement;
35 ::ll::TypedStorage<4, 12, ::BlockPos> mPosition;
36 ::ll::TypedStorage<1, 1, ::Rotation> mRotation;
37 ::ll::TypedStorage<4, 24, ::JigsawJunction> mJigsawJunction;
38 ::ll::TypedStorage<8, 64, ::std::unordered_map<::BlockPos, ::std::optional<::ActorDefinitionIdentifier>>>
39 mEntitiesToPlace;
40 ::ll::TypedStorage<4, 12, ::BlockPos> mRefPos;
41 // NOLINTEND
42
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 // vIndex: 4
47 virtual bool postProcess(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB) /*override*/;
48
49 // vIndex: 5
50 virtual void postProcessMobsAt(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB) /*override*/;
51
52 // vIndex: 1
53 virtual void moveBoundingBox(int dx, int dy, int dz) /*override*/;
54
55 // vIndex: 13
56 virtual int
57 generateHeightAtPosition(::BlockPos const&, ::Dimension&, ::BlockVolume&, ::std::unordered_map<::ChunkPos, ::std::unique_ptr<::std::vector<short>>>&)
58 const = 0;
59
60 // vIndex: 14
61 virtual ::Block const* getSupportBlock(::BlockSource&, ::BlockPos const&, ::Block const&) const = 0;
62
63 // vIndex: 15
64 virtual ::Block const& getBeardStabilizeBlock(::Block const&) const = 0;
65
66 // vIndex: 16
67 virtual ::AdjustmentEffect getTerrainAdjustmentEffect() const = 0;
68
69 // vIndex: 17
70 virtual bool _needsPostProcessing(::BlockSource& region);
71
72 // vIndex: 0
73 virtual ~PoolElementStructurePiece() /*override*/ = default;
74 // NOLINTEND
75
76public:
77 // destructor thunk
78 // NOLINTBEGIN
79
80 // NOLINTEND
81
82public:
83 // virtual function thunks
84 // NOLINTBEGIN
85 MCAPI bool $postProcess(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB);
86
87 MCAPI void $postProcessMobsAt(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB);
88
89 MCAPI void $moveBoundingBox(int dx, int dy, int dz);
90
91 MCFOLD bool $_needsPostProcessing(::BlockSource& region);
92 // NOLINTEND
93
94public:
95 // vftables
96 // NOLINTBEGIN
97 MCAPI static void** $vftable();
98 // NOLINTEND
99};
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition BlockVolume.h:11
Definition Block.h:36
Definition BoundingBox.h:18
Definition ChunkPos.h:11
Definition Dimension.h:83
Definition PoolElementStructurePiece.h:25
Definition Random.h:16
Definition StructurePiece.h:18
Definition StructurePoolElement.h:35
Definition ActorDefinitionIdentifier.h:13
Definition JigsawJunction.h:5