LeviLamina
Loading...
Searching...
No Matches
StructurePoolBlockPredicateCappedRandomBlockReplacement.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/world/level/levelgen/structure/structurepools/IStructurePoolBlockPredicate.h"
8#include "mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateType.h"
9
10// auto generated forward declare list
11// clang-format off
12class Block;
13class BlockPos;
14class BlockSource;
15class IRandom;
16class Randomize;
17namespace Bedrock::Threading { class Mutex; }
18namespace Util { class XXHash; }
19// clang-format on
20
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<4, 4, uint const> mMaximumAmount;
26 ::ll::TypedStorage<8, 16, ::std::map<::HashedString, ::HashedString> const> mBlockMappings;
27 ::ll::TypedStorage<8, 24, ::std::vector<::BlockPos>> mCandidatePositions;
28 ::ll::TypedStorage<8, 80, ::std::mutex> mCandidatePositionsLock;
29 // NOLINTEND
30
31public:
32 // virtual functions
33 // NOLINTBEGIN
34 virtual bool test(::Block const& block, ::IRandom&) const /*override*/;
35
36 virtual bool test(::BlockPos const& worldPos, ::BlockPos const&, ::IRandom&) const /*override*/;
37
38 virtual bool finalize(::BlockSource& region, ::IRandom& random) /*override*/;
39
40 virtual ::StructurePoolBlockPredicateType getType() const /*override*/;
41
42 virtual void appendMetadataKey(::Util::XXHash& hash) const /*override*/;
43
44 virtual bool operator==(::StructurePoolBlockPredicateCappedRandomBlockReplacement const& other) const;
45
46 virtual bool operator!=(::StructurePoolBlockPredicateCappedRandomBlockReplacement const& other) const;
47
49 // NOLINTEND
50
51public:
52 // member functions
53 // NOLINTBEGIN
54 MCAPI bool _finalize(::BlockSource& region, ::IRandom& random, ::std::function<void(::BlockPos&)> applyToBlocks);
55 // NOLINTEND
56
57public:
58 // destructor thunk
59 // NOLINTBEGIN
60 MCAPI void $dtor();
61 // NOLINTEND
62
63public:
64 // virtual function thunks
65 // NOLINTBEGIN
66 MCAPI bool $test(::Block const& block, ::IRandom&) const;
67
68 MCAPI bool $test(::BlockPos const& worldPos, ::BlockPos const&, ::IRandom&) const;
69
70 MCAPI bool $finalize(::BlockSource& region, ::IRandom& random);
71
72 MCFOLD ::StructurePoolBlockPredicateType $getType() const;
73
74 MCAPI void $appendMetadataKey(::Util::XXHash& hash) const;
75
76
77 // NOLINTEND
78
79public:
80 // vftables
81 // NOLINTBEGIN
82 MCNAPI static void** $vftable();
83 // NOLINTEND
84};
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition Block.h:41
Definition IRandom.h:10
Definition IStructurePoolBlockPredicate.h:17
Definition StructurePoolBlockPredicateCappedRandomBlockReplacement.h:21
Definition XXHash.h:7