LeviLamina
Loading...
Searching...
No Matches
RandomSpreadTreeCanopy.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/ITreeCanopy.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockPos;
14class Random;
15class RenderParams;
16namespace TreeHelper { struct TreeParams; }
17// clang-format on
18
19class RandomSpreadTreeCanopy : public ::ITreeCanopy {
20public:
21 // RandomSpreadTreeCanopy inner types declare
22 // clang-format off
24 // clang-format on
25
26 // RandomSpreadTreeCanopy inner types define
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 176, ::BlockDescriptor> mBlockDescriptor;
32 ::ll::TypedStorage<4, 4, float> mWeight;
33 // NOLINTEND
34 };
35
36public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<4, 8, ::IntRange> mCanopyHeight;
40 ::ll::TypedStorage<4, 8, ::IntRange> mCanopyRadius;
41 ::ll::TypedStorage<4, 4, int> mLeafPlacementAttempts;
42 ::ll::TypedStorage<8, 24, ::std::vector<::RandomSpreadTreeCanopy::WeightedBlockReference>> mLeavesBlockDescriptors;
43 // NOLINTEND
44
45public:
46 // virtual functions
47 // NOLINTBEGIN
48 virtual ~RandomSpreadTreeCanopy() /*override*/ = default;
49
50 virtual ::std::optional<::BlockPos> placeCanopy(
51 ::IBlockWorldGenAPI& target,
52 ::BlockPos const& random,
53 ::ITreeCanopy::BranchSize const& treeParams,
54 ::Random& attachmentPositions,
57 ::std::vector<::BlockPos> const&,
58 ::std::vector<::ITreeCanopy::BranchSize> const&
59 ) const /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI RandomSpreadTreeCanopy();
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void* $ctor();
72 // NOLINTEND
73
74public:
75 // virtual function thunks
76 // NOLINTBEGIN
77 MCAPI ::std::optional<::BlockPos> $placeCanopy(
78 ::IBlockWorldGenAPI& target,
79 ::BlockPos const& random,
80 ::ITreeCanopy::BranchSize const& treeParams,
81 ::Random& attachmentPositions,
84 ::std::vector<::BlockPos> const&,
85 ::std::vector<::ITreeCanopy::BranchSize> const&
86 ) const;
87
88
89 // NOLINTEND
90
91public:
92 // vftables
93 // NOLINTBEGIN
94 MCNAPI static void** $vftable();
95 // NOLINTEND
96};
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 RandomSpreadTreeCanopy.h:27
Definition TreeParams.h:17