Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
MegaTreeTrunk.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/world/level/block/BlockDescriptor.h"
8#include "mc/world/level/levelgen/feature/helpers/ITreeCanopyWrapper.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 BlockPos;
16class ITreeCanopy;
17class Random;
18class RenderParams;
19namespace TreeHelper { struct TreeParams; }
20// clang-format on
21
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 8, ::IntRange> mTrunkWidth;
27 ::ll::TypedStorage<4, 4, int> mBaseHeight;
28 ::ll::TypedStorage<4, 4, int> mBranchLength;
29 ::ll::TypedStorage<4, 8, ::IntRange> mBranchInterval;
30 ::ll::TypedStorage<4, 4, float> mBranchSlope;
31 ::ll::TypedStorage<4, 4, float> mMinBranchAltitudeFactor;
32 ::ll::TypedStorage<4, 4, float> mMaxBranchAltitudeFactor;
33 ::ll::TypedStorage<8, 176, ::BlockDescriptor> mTrunkBlockDescriptor;
34 ::ll::TypedStorage<8, 8, ::ITreeCanopyWrapper> mBranchCanopy;
35 ::ll::TypedStorage<8, 224, ::TreeHelper::AttachableDecoration> mDecoration;
36 ::ll::TypedStorage<8, 24, ::std::vector<int>> mHeightIntervals;
37 // NOLINTEND
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 virtual ~MegaTreeTrunk() /*override*/ = default;
43
44 virtual int getTreeHeight(::Random& random) const /*override*/;
45
46 virtual ::std::optional<::BlockPos> placeTrunk(
47 ::IBlockWorldGenAPI& target,
48 ::BlockPos const& pos,
49 ::Random& random,
50 int treeHeight,
51 ::RenderParams& renderParams,
52 ::TreeHelper::TreeParams const& treeParams,
53 ::ITreeCanopy const* canopy
54 ) const /*override*/;
55 // NOLINTEND
56
57public:
58 // virtual function thunks
59 // NOLINTBEGIN
60 MCNAPI int $getTreeHeight(::Random& random) const;
61
62 MCNAPI ::std::optional<::BlockPos> $placeTrunk(
63 ::IBlockWorldGenAPI& target,
64 ::BlockPos const& pos,
65 ::Random& random,
66 int treeHeight,
67 ::RenderParams& renderParams,
68 ::TreeHelper::TreeParams const& treeParams,
69 ::ITreeCanopy const* canopy
70 ) const;
71
72
73 // NOLINTEND
74};
Definition BlockPos.h:14
Definition IBlockWorldGenAPI.h:25
Definition ITreeCanopy.h:16
Definition ITreeTrunk.h:15
Definition MegaTreeTrunk.h:22
MCAPI int $getTreeHeight(::Random &random) const
MCAPI ::std::optional<::BlockPos > $placeTrunk(::IBlockWorldGenAPI &target, ::BlockPos const &pos, ::Random &random, int treeHeight, ::RenderParams &renderParams, ::TreeHelper::TreeParams const &treeParams, ::ITreeCanopy const *canopy) const
Definition Random.h:10
Definition RenderParams.h:29
Definition TreeParams.h:17