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 // vIndex: 0
54 virtual ~FancyTreeTrunk() /*override*/ = default;
55
56 // vIndex: 2
57 virtual int getTreeHeight(::Random& random) const /*override*/;
58
59 // vIndex: 1
60 virtual ::std::optional<::BlockPos> placeTrunk(
61 ::IBlockWorldGenAPI& target,
62 ::BlockPos const& pos,
63 ::Random& random,
64 int treeHeight,
65 ::RenderParams& renderParams,
66 ::TreeHelper::TreeParams const& treeParams,
67 ::ITreeCanopy const* canopy
68 ) const /*override*/;
69 // NOLINTEND
70
71public:
72 // member functions
73 // NOLINTBEGIN
74 MCAPI int _checkLine(
75 ::IBlockWorldGenAPI& target,
76 ::BlockPos const& startPos,
77 ::BlockPos const& endPos,
78 ::TreeHelper::TreeParams const& treeParams
79 ) const;
80
81 MCAPI void _placeLimb(::IBlockWorldGenAPI& target, ::BlockPos const& startPos, ::BlockPos const& endPos) const;
82 // NOLINTEND
83
84public:
85 // virtual function thunks
86 // NOLINTBEGIN
87 MCAPI int $getTreeHeight(::Random& random) const;
88
89 MCAPI ::std::optional<::BlockPos> $placeTrunk(
90 ::IBlockWorldGenAPI& target,
91 ::BlockPos const& pos,
92 ::Random& random,
93 int treeHeight,
94 ::RenderParams& renderParams,
95 ::TreeHelper::TreeParams const& treeParams,
96 ::ITreeCanopy const* canopy
97 ) const;
98 // NOLINTEND
99
100public:
101 // vftables
102 // NOLINTBEGIN
103 MCNAPI static void** $vftable();
104 // NOLINTEND
105};
Definition BlockPos.h:17
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