LeviLamina
Loading...
Searching...
No Matches
MangroveTreeTrunk.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/ChanceInformation.h"
7#include "mc/util/IntRange.h"
8#include "mc/world/level/block/BlockDescriptor.h"
9#include "mc/world/level/levelgen/feature/helpers/ITreeTrunk.h"
10#include "mc/world/level/levelgen/feature/helpers/tree_helper/AttachableDecoration.h"
11
12// auto generated forward declare list
13// clang-format off
14class Block;
15class BlockPos;
17class ITreeCanopy;
18class Random;
19class RenderParams;
20namespace TreeHelper { struct TreeParams; }
21// clang-format on
22
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<4, 4, int> mBaseHeight;
28 ::ll::TypedStorage<4, 4, int> mTrunkWidth;
29 ::ll::TypedStorage<4, 4, int> mHeightRandA;
30 ::ll::TypedStorage<4, 4, int> mHeightRandB;
31 ::ll::TypedStorage<4, 8, ::IntRange> mBranchLength;
32 ::ll::TypedStorage<4, 8, ::IntRange> mBranchSteps;
33 ::ll::TypedStorage<4, 12, ::ChanceInformation> mBranchChance;
34 ::ll::TypedStorage<8, 184, ::BlockDescriptor> mTrunkBlockDescriptor;
35 ::ll::TypedStorage<8, 208, ::TreeHelper::AttachableDecoration> mDecoration;
36 ::ll::TypedStorage<8, 24, ::std::vector<int>> mHeightIntervals;
37 // NOLINTEND
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 // vIndex: 0
43 virtual ~MangroveTreeTrunk() /*override*/ = default;
44
45 // vIndex: 2
46 virtual int getTreeHeight(::Random& random) const /*override*/;
47
48 // vIndex: 1
49 virtual ::std::optional<::BlockPos> placeTrunk(
50 ::IBlockWorldGenAPI& target,
51 ::BlockPos const& pos,
52 ::Random& random,
53 int treeHeight,
54 ::RenderParams& renderParams,
55 ::TreeHelper::TreeParams const& treeParams,
56 ::ITreeCanopy const* canopy
57 ) const /*override*/;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI void _placeBranch(
64 ::IBlockWorldGenAPI& target,
65 ::std::vector<::BlockPos>* canopyAttachmentPositions,
66 ::Random& random,
67 int treeHeight,
69 ::TreeHelper::TreeParams const& treeParams,
70 ::BlockPos& logPos,
71 int currentHeight,
72 uchar branchDir,
73 int branchPos,
74 int branchSteps,
75 ::Block const* trunkBlock
76 ) const;
77 // NOLINTEND
78
79public:
80 // virtual function thunks
81 // NOLINTBEGIN
82 MCAPI int $getTreeHeight(::Random& random) const;
83
84 MCAPI ::std::optional<::BlockPos> $placeTrunk(
85 ::IBlockWorldGenAPI& target,
86 ::BlockPos const& pos,
87 ::Random& random,
88 int treeHeight,
89 ::RenderParams& renderParams,
90 ::TreeHelper::TreeParams const& treeParams,
91 ::ITreeCanopy const* canopy
92 ) const;
93 // NOLINTEND
94
95public:
96 // vftables
97 // NOLINTBEGIN
98 MCNAPI static void** $vftable();
99 // NOLINTEND
100};
Definition BlockPos.h:17
Definition Block.h:38
Definition IBlockWorldGenAPI.h:25
Definition ITreeCanopy.h:14
Definition ITreeTrunk.h:15
Definition MangroveTreeTrunk.h:23
static MCAPI void ** $vftable()
Definition Random.h:10
Definition RenderParams.h:30
Definition TreeParams.h:14