LeviLamina
Loading...
Searching...
No Matches
SpawnerData.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/WeightedRandom.h"
7#include "mc/world/actor/ActorDefinitionIdentifier.h"
8#include "mc/world/actor/ActorType.h"
9#include "mc/world/level/levelgen/v2/OverrideState.h"
10
11// auto generated forward declare list
12// clang-format off
14// clang-format on
15
16namespace br::worldgen {
17
18struct SpawnerData : public ::WeightedRandom::WeighedRandomItem {
19public:
20 // SpawnerData inner types declare
21 // clang-format off
22 struct Brightness;
23 struct Population;
24 // clang-format on
25
26 // SpawnerData inner types define
27 struct Brightness {
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<2, 2, short> min;
32 ::ll::TypedStorage<2, 2, short> max;
33 ::ll::TypedStorage<1, 1, bool> raw;
34 // NOLINTEND
35 };
36
37 struct Population {
38 public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<2, 2, short> surface;
42 ::ll::TypedStorage<2, 2, short> underground;
43 // NOLINTEND
44 };
45
46public:
47 // member variables
48 // NOLINTBEGIN
49 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> entity;
50 ::ll::TypedStorage<2, 2, short> minCount;
51 ::ll::TypedStorage<2, 2, short> maxCount;
52 ::ll::TypedStorage<1, 1, ::br::worldgen::OverrideState> surface;
53 ::ll::TypedStorage<1, 1, ::br::worldgen::OverrideState> underground;
54 ::ll::TypedStorage<1, 1, ::br::worldgen::OverrideState> underwater;
55 ::ll::TypedStorage<2, 6, ::std::optional<::br::worldgen::SpawnerData::Population>> population;
56 ::ll::TypedStorage<2, 8, ::std::optional<::br::worldgen::SpawnerData::Brightness>> brightness;
57 // NOLINTEND
58
59public:
60 SpawnerData& operator=(SpawnerData&&) = default;
61 SpawnerData& operator=(SpawnerData const&) = default;
62
63public:
64 // prevent constructor by default
65 SpawnerData();
66
67public:
68 // member functions
69 // NOLINTBEGIN
70 MCAPI SpawnerData(::br::worldgen::SpawnerData&&);
71
72 MCAPI SpawnerData(::br::worldgen::SpawnerData const&);
73
74 MCAPI ::br::worldgen::SpawnerData inRawBrightness(short minBrightness, short maxBrightness) const;
75
76 MCAPI ::br::worldgen::SpawnerData spawnsOnSurface(::br::worldgen::OverrideState state) const;
77
78 MCAPI ::br::worldgen::SpawnerData spawnsUnderground(::br::worldgen::OverrideState state) const;
79
80 MCAPI ::br::worldgen::SpawnerData withPopulation(short surfacePop, short undergroundPop) const;
81
82 MCAPI ~SpawnerData();
83 // NOLINTEND
84
85public:
86 // static functions
87 // NOLINTBEGIN
88 MCAPI static ::br::worldgen::SpawnerData
89 make(::ActorType id, short probabilityWeight, short minCount, short maxCount);
90 // NOLINTEND
91
92public:
93 // constructor thunks
94 // NOLINTBEGIN
95 MCAPI void* $ctor(::br::worldgen::SpawnerData&&);
96
97 MCAPI void* $ctor(::br::worldgen::SpawnerData const&);
98 // NOLINTEND
99
100public:
101 // destructor thunk
102 // NOLINTBEGIN
103 MCFOLD void $dtor();
104 // NOLINTEND
105};
106
107} // namespace br::worldgen
Definition WeightedRandom.h:13
Definition ActorDefinitionIdentifier.h:15
Definition SpawnerData.h:27
Definition SpawnerData.h:37
Definition SpawnerData.h:18