LeviLamina
Loading...
Searching...
No Matches
IStructurePoolBlockPredicate.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateType.h"
7
8// auto generated forward declare list
9// clang-format off
10class Block;
11class BlockPos;
12class BlockSource;
13class IRandom;
14class Randomize;
15namespace Util { class XXHash; }
16// clang-format on
17
19public:
20 // virtual functions
21 // NOLINTBEGIN
22 // vIndex: 0
23 virtual ~IStructurePoolBlockPredicate() = default;
24
25 // vIndex: 2
26 virtual bool test(::Block const&, ::Randomize&) const = 0;
27
28 // vIndex: 1
29 virtual bool test(::BlockPos const&, ::BlockPos const&, ::Randomize&) const = 0;
30
31 // vIndex: 3
32 virtual bool finalize(::BlockSource&, ::IRandom&);
33
34 // vIndex: 4
35 virtual ::std::string validate() const;
36
37 // vIndex: 5
38 virtual ::StructurePoolBlockPredicateType getType() const = 0;
39
40 // vIndex: 6
41 virtual void appendMetadataKey(::Util::XXHash&) const = 0;
42 // NOLINTEND
43
44public:
45 // virtual function thunks
46 // NOLINTBEGIN
47 MCFOLD bool $finalize(::BlockSource&, ::IRandom&);
48
49 MCFOLD ::std::string $validate() const;
50 // NOLINTEND
51};
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition IRandom.h:10
Definition IStructurePoolBlockPredicate.h:18
Definition Randomize.h:13
Definition XXHash.h:7