LeviLamina
Loading...
Searching...
No Matches
MultifaceFeature.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/feature/IFeature.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockPos;
11class BlockSource;
12class Random;
13// clang-format on
14
16public:
17 // member variables
18 // NOLINTBEGIN
27 // NOLINTEND
28
29public:
30 // prevent constructor by default
31 MultifaceFeature& operator=(MultifaceFeature const&);
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 // vIndex: 1
39 virtual ::std::optional<::BlockPos> place(::IFeature::PlacementContext const& context) const /*override*/;
40
41 // vIndex: 0
42 virtual ~MultifaceFeature() /*override*/ = default;
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI ::std::optional<::BlockPos> _placeBlockIfPossible(
49 ::BlockSource& region,
50 ::BlockPos const& pos,
51 ::Random& random,
52 ::std::vector<uchar> const& placementDirections
53 ) const;
54 // NOLINTEND
55
56public:
57 // static functions
58 // NOLINTBEGIN
59 MCAPI static ::std::vector<uchar> _getShuffledDirections(::std::vector<uchar> faces);
60
61 MCAPI static ::std::vector<uchar> _getShuffledDirectionsExcept(uchar exclude, ::std::vector<uchar> const& faces);
62 // NOLINTEND
63
64public:
65 // destructor thunk
66 // NOLINTBEGIN
67
68 // NOLINTEND
69
70public:
71 // virtual function thunks
72 // NOLINTBEGIN
73 MCAPI ::std::optional<::BlockPos> $place(::IFeature::PlacementContext const& context) const;
74 // NOLINTEND
75
76public:
77 // vftables
78 // NOLINTBEGIN
79 MCAPI static void** $vftable();
80 // NOLINTEND
81};
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition IFeature.h:13
Definition MultifaceFeature.h:15
Definition Random.h:16
Definition IFeature.h:21
Definition context.h:5
Definition Alias.h:14