LeviLamina
Loading...
Searching...
No Matches
MangroveTreeCanopy.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/ITreeCanopy.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 Random;
17class RenderParams;
18namespace TreeHelper { struct TreeParams; }
19// clang-format on
20
21class MangroveTreeCanopy : public ::ITreeCanopy {
22public:
23 // MangroveTreeCanopy inner types declare
24 // clang-format off
26 // clang-format on
27
28 // MangroveTreeCanopy inner types define
30 public:
31 // member variables
32 // NOLINTBEGIN
33 ::ll::TypedStorage<8, 176, ::BlockDescriptor> mBlockDescriptor;
34 ::ll::TypedStorage<4, 4, float> mWeight;
35 // NOLINTEND
36 };
37
38public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<4, 4, int> mMinOffset;
42 ::ll::TypedStorage<4, 4, int> mMaxOffset;
43 ::ll::TypedStorage<4, 4, int> mMinWidth;
44 ::ll::TypedStorage<4, 4, float> mRiseInv;
45 ::ll::TypedStorage<4, 4, int> mRun;
46 ::ll::TypedStorage<4, 8, ::IntRange> mCanopyHeight;
47 ::ll::TypedStorage<4, 8, ::IntRange> mCanopyRadius;
48 ::ll::TypedStorage<4, 4, int> mLeafPlacementAttempts;
49 ::ll::TypedStorage<8, 24, ::std::vector<::MangroveTreeCanopy::WeightedBlockReference>> mLeavesBlockDescriptors;
50 ::ll::TypedStorage<8, 224, ::TreeHelper::AttachableDecoration> mCanopyDecoration;
51 ::ll::TypedStorage<8, 176, ::BlockDescriptor> mHangingBlockDescriptor;
52 ::ll::TypedStorage<4, 12, ::ChanceInformation> mHangingBlockPlacementChance;
53 ::ll::TypedStorage<4, 4, int> mRequiredEmptyBlocks;
54 ::ll::TypedStorage<4, 4, int> mExclusionRadiusXZ;
55 ::ll::TypedStorage<4, 4, int> mExclusionRadiusY;
56 // NOLINTEND
57
58public:
59 // virtual functions
60 // NOLINTBEGIN
61 virtual ~MangroveTreeCanopy() /*override*/;
62
63 virtual ::std::optional<::BlockPos> placeCanopy(
64 ::IBlockWorldGenAPI& target,
65 ::BlockPos const& random,
66 ::ITreeCanopy::BranchSize const& treeParams,
67 ::Random& attachmentPositions,
70 ::std::vector<::BlockPos> const&,
71 ::std::vector<::ITreeCanopy::BranchSize> const&
72 ) const /*override*/;
73 // NOLINTEND
74
75public:
76 // member functions
77 // NOLINTBEGIN
78 MCAPI MangroveTreeCanopy();
79 // NOLINTEND
80
81public:
82 // constructor thunks
83 // NOLINTBEGIN
84 MCAPI void* $ctor();
85 // NOLINTEND
86
87public:
88 // destructor thunk
89 // NOLINTBEGIN
90 MCAPI void $dtor();
91 // NOLINTEND
92
93public:
94 // virtual function thunks
95 // NOLINTBEGIN
96 MCAPI ::std::optional<::BlockPos> $placeCanopy(
97 ::IBlockWorldGenAPI& target,
98 ::BlockPos const& random,
99 ::ITreeCanopy::BranchSize const& treeParams,
100 ::Random& attachmentPositions,
103 ::std::vector<::BlockPos> const&,
104 ::std::vector<::ITreeCanopy::BranchSize> const&
105 ) const;
106
107
108 // NOLINTEND
109
110public:
111 // vftables
112 // NOLINTBEGIN
113 MCNAPI static void** $vftable();
114 // NOLINTEND
115};
Definition BlockPos.h:21
Definition IBlockWorldGenAPI.h:25
Definition ITreeCanopy.h:14
static MCAPI void ** $vftable()
Definition Random.h:10
Definition RenderParams.h:30
Definition ITreeCanopy.h:22
Definition MangroveTreeCanopy.h:29
Definition TreeParams.h:17