LeviLamina
Loading...
Searching...
No Matches
FancyTreeTrunk.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/BlockPos.h"
7#include "mc/world/level/block/BlockDescriptor.h"
8#include "mc/world/level/levelgen/feature/helpers/ITreeTrunk.h"
9
10// auto generated forward declare list
11// clang-format off
13class ITreeCanopy;
14class Random;
15class RenderParams;
16namespace TreeHelper { struct TreeParams; }
17// clang-format on
18
20public:
21 // FancyTreeTrunk inner types declare
22 // clang-format off
23 class FoliageCoords;
24 // clang-format on
25
26 // FancyTreeTrunk inner types define
27 class FoliageCoords : public ::BlockPos {
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<4, 4, int> mBranchBase;
32 // NOLINTEND
33 };
34
35public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<4, 4, int> mBaseHeight;
39 ::ll::TypedStorage<4, 4, int> mHeightVariance;
40 ::ll::TypedStorage<4, 4, int> mTrunkWidth;
41 ::ll::TypedStorage<4, 4, float> mHeightScale;
42 ::ll::TypedStorage<4, 4, float> mBranchSlope;
43 ::ll::TypedStorage<4, 4, float> mBranchDensity;
44 ::ll::TypedStorage<4, 4, float> mBranchAltitudeFactor;
45 ::ll::TypedStorage<4, 4, float> mFoliageAltitudeFactor;
46 ::ll::TypedStorage<8, 184, ::BlockDescriptor> mTrunkBlockDescriptor;
47 ::ll::TypedStorage<4, 4, float> mWidthScale;
48 // NOLINTEND
49
50public:
51 // virtual functions
52 // NOLINTBEGIN
53 virtual ~FancyTreeTrunk() /*override*/ = default;
54
55 virtual int getTreeHeight(::Random& random) const /*override*/;
56
57 virtual ::std::optional<::BlockPos> placeTrunk(
58 ::IBlockWorldGenAPI& target,
59 ::BlockPos const& pos,
60 ::Random& random,
61 int treeHeight,
62 ::RenderParams& renderParams,
63 ::TreeHelper::TreeParams const& treeParams,
64 ::ITreeCanopy const* canopy
65 ) const /*override*/;
66 // NOLINTEND
67
68public:
69 // member functions
70 // NOLINTBEGIN
71 MCAPI int _checkLine(
72 ::IBlockWorldGenAPI& target,
73 ::BlockPos const& startPos,
74 ::BlockPos const& endPos,
75 ::TreeHelper::TreeParams const& treeParams
76 ) const;
77
78 MCAPI void _placeLimb(::IBlockWorldGenAPI& target, ::BlockPos const& startPos, ::BlockPos const& endPos) const;
79 // NOLINTEND
80
81public:
82 // virtual function thunks
83 // NOLINTBEGIN
84 MCAPI int $getTreeHeight(::Random& random) const;
85
86 MCAPI ::std::optional<::BlockPos> $placeTrunk(
87 ::IBlockWorldGenAPI& target,
88 ::BlockPos const& pos,
89 ::Random& random,
90 int treeHeight,
91 ::RenderParams& renderParams,
92 ::TreeHelper::TreeParams const& treeParams,
93 ::ITreeCanopy const* canopy
94 ) const;
95
96
97 // NOLINTEND
98
99public:
100 // vftables
101 // NOLINTBEGIN
102 MCNAPI static void** $vftable();
103 // NOLINTEND
104};
Definition BlockPos.h:19
Definition FancyTreeTrunk.h:27
Definition FancyTreeTrunk.h:19
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