LeviLamina
Loading...
Searching...
No Matches
CherryTreeTrunk.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/IntRange.h"
7#include "mc/util/WeightedRandom.h"
8#include "mc/world/level/block/BlockDescriptor.h"
9#include "mc/world/level/levelgen/feature/helpers/ITreeCanopyWrapper.h"
10#include "mc/world/level/levelgen/feature/helpers/ITreeTrunk.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<8, 184, ::BlockDescriptor> mTrunkBlockDescriptor;
28 ::ll::TypedStorage<4, 4, int> mBaseHeight;
29 ::ll::TypedStorage<8, 24, ::std::vector<int>> mHeightIntervals;
30 ::ll::TypedStorage<8, 24, ::std::vector<::WeightedRandom::WeighedRandomItem>> mTreeTypeWeights;
31 ::ll::TypedStorage<4, 8, ::IntRange> mBranchHorizontalLength;
32 ::ll::TypedStorage<4, 8, ::IntRange> mBranchStartOffsetFromTop;
33 ::ll::TypedStorage<4, 8, ::IntRange> mBranchEndOffsetFromTop;
34 ::ll::TypedStorage<8, 8, ::ITreeCanopyWrapper> mBranchCanopy;
35 // NOLINTEND
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 // vIndex: 0
41 virtual ~CherryTreeTrunk() /*override*/ = default;
42
43 // vIndex: 2
44 virtual int getTreeHeight(::Random& random) const /*override*/;
45
46 // vIndex: 1
47 virtual ::std::optional<::BlockPos> placeTrunk(
48 ::IBlockWorldGenAPI& target,
49 ::BlockPos const& pos,
50 ::Random& random,
51 int treeHeight,
52 ::RenderParams& renderParams,
53 ::TreeHelper::TreeParams const& treeParams,
54 ::ITreeCanopy const* canopy
55 ) const /*override*/;
56 // NOLINTEND
57
58public:
59 // member functions
60 // NOLINTBEGIN
61 MCAPI ::BlockPos _generateBranch(
62 ::IBlockWorldGenAPI& target,
63 ::Block const& trunkBlock,
64 ::Block const& sidewaysTrunkBlock,
65 ::Random& random,
66 int treeHeight,
67 ::BlockPos origin,
68 ::TreeHelper::TreeParams const& treeParams,
69 ::BlockPos branchDirection,
70 int offsetFromOrigin,
71 bool middleContinuesUpwards
72 ) const;
73 // NOLINTEND
74
75public:
76 // virtual function thunks
77 // NOLINTBEGIN
78 MCAPI int $getTreeHeight(::Random& random) const;
79
80 MCAPI ::std::optional<::BlockPos> $placeTrunk(
81 ::IBlockWorldGenAPI& target,
82 ::BlockPos const& pos,
83 ::Random& random,
84 int treeHeight,
85 ::RenderParams& renderParams,
86 ::TreeHelper::TreeParams const& treeParams,
87 ::ITreeCanopy const* canopy
88 ) const;
89 // NOLINTEND
90
91public:
92 // vftables
93 // NOLINTBEGIN
94 MCNAPI static void** $vftable();
95 // NOLINTEND
96};
Definition BlockPos.h:17
Definition Block.h:37
Definition CherryTreeTrunk.h:23
static MCAPI void ** $vftable()
Definition IBlockWorldGenAPI.h:25
Definition ITreeCanopy.h:14
Definition ITreeTrunk.h:15
Definition Random.h:10
Definition RenderParams.h:30
Definition TreeParams.h:14