LeviLamina
Loading...
Searching...
No Matches
OreVeinifier.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/MultidimensionalArray.h"
7#include "mc/world/level/levelgen/v1/NoiseCellInterpolator.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
13class Vec3;
14// clang-format on
15
17public:
18 // OreVeinifier inner types declare
19 // clang-format off
20 struct OreVein;
21 // clang-format on
22
23 // OreVeinifier inner types define
24 using InterpolatorArray = ::std::array<::NoiseCellInterpolator*, 3>;
25
26 struct OreVein {
27 public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 8, ::Block const*> oreBlock;
31 ::ll::TypedStorage<8, 8, ::Block const*> rawOreBlock;
32 ::ll::TypedStorage<8, 8, ::Block const*> fillerBlock;
33 ::ll::TypedStorage<4, 4, int const> minY;
34 ::ll::TypedStorage<4, 4, int const> maxY;
35 // NOLINTEND
36 };
37
38public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<4, 4100, ::Util::MultidimensionalArray<float, 5, 5, 41>> mVeininessNoise;
42 ::ll::TypedStorage<4, 4100, ::Util::MultidimensionalArray<float, 5, 5, 41>> mVeinNoiseA;
43 ::ll::TypedStorage<4, 4100, ::Util::MultidimensionalArray<float, 5, 5, 41>> mVeinNoiseB;
44 ::ll::TypedStorage<8, 88, ::NoiseCellInterpolator> mVeininessNoiseInterpolator;
45 ::ll::TypedStorage<8, 88, ::NoiseCellInterpolator> mVeinNoiseInterpolatorA;
46 ::ll::TypedStorage<8, 88, ::NoiseCellInterpolator> mVeinNoiseInterpolatorB;
47 ::ll::TypedStorage<8, 8, ::OreVeinifierNoises const&> mNoiseSource;
48 ::ll::TypedStorage<8, 32, ::OreVeinifier::OreVein const> mCopperVein;
49 ::ll::TypedStorage<8, 32, ::OreVeinifier::OreVein const> mIronVein;
50 // NOLINTEND
51
52public:
53 // prevent constructor by default
54 OreVeinifier& operator=(OreVeinifier const&);
57
58public:
59 // member functions
60 // NOLINTBEGIN
61 MCAPI explicit OreVeinifier(::OreVeinifierNoises const& noiseSource);
62
63 MCAPI void fillNoiseAtPos(::Vec3 const& worldPos, int bufferIndex, float noiseValue);
64
65 MCAPI ::Block const* getVeinBlockOrFallback(::Vec3 worldPos, ::Block const* defaultBlock) const;
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void* $ctor(::OreVeinifierNoises const& noiseSource);
72 // NOLINTEND
73};
Definition Block.h:38
Definition OreVeinifierNoises.h:10
Definition OreVeinifier.h:16
Definition Vec3.h:10
Definition OreVeinifier.h:26