Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
StructurePoolBlockPredicateBlockMatchRandom.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/structure/structurepools/IStructurePoolBlockPredicate.h"
7#include "mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateType.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
12class BlockPos;
13class IRandom;
14namespace Util { class XXHash; }
15// clang-format on
16
17class StructurePoolBlockPredicateBlockMatchRandom : public ::IStructurePoolBlockPredicate {
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 8, ::Block const&> mBlock;
22 ::ll::TypedStorage<4, 4, float const> mProbability;
23 // NOLINTEND
24
25public:
26 StructurePoolBlockPredicateBlockMatchRandom(::Block const& block, float const probability)
27 : mBlock(block),
28 mProbability(probability) {}
29
30public:
31 // prevent constructor by default
32 StructurePoolBlockPredicateBlockMatchRandom& operator=(StructurePoolBlockPredicateBlockMatchRandom const&);
33 StructurePoolBlockPredicateBlockMatchRandom(StructurePoolBlockPredicateBlockMatchRandom const&);
34 StructurePoolBlockPredicateBlockMatchRandom();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual bool test(::Block const& block, ::IRandom& random) const /*override*/;
40
41 virtual bool test(::BlockPos const& worldPos, ::BlockPos const& refPos, ::IRandom& random) const /*override*/;
42
43 virtual ::StructurePoolBlockPredicateType getType() const /*override*/;
44
45 virtual void appendMetadataKey(::Util::XXHash& hash) const /*override*/;
46 // NOLINTEND
47
48public:
49 // virtual function thunks
50 // NOLINTBEGIN
51 MCNAPI bool $test(::Block const& block, ::IRandom& random) const;
52
53 MCNAPI bool $test(::BlockPos const& worldPos, ::BlockPos const& refPos, ::IRandom& random) const;
54
55 MCNAPI ::StructurePoolBlockPredicateType $getType() const;
56
57 MCNAPI void $appendMetadataKey(::Util::XXHash& hash) const;
58
59
60 // NOLINTEND
61
62public:
63 // vftables
64 // NOLINTBEGIN
65 MCNAPI static void** $vftable();
66 // NOLINTEND
67};
Definition BlockPos.h:14
Definition Block.h:42
Definition IRandom.h:10
Definition IStructurePoolBlockPredicate.h:17
MCAPI bool $test(::Block const &block, ::IRandom &random) const
MCAPI bool $test(::BlockPos const &worldPos, ::BlockPos const &refPos, ::IRandom &random) const
MCAPI void $appendMetadataKey(::Util::XXHash &hash) const
MCAPI::StructurePoolBlockPredicateType $getType() const
Definition XXHash.h:7