LeviLamina
Loading...
Searching...
No Matches
AutomaticFeatureRules.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/ServiceReference.h"
7#include "mc/deps/puv/LoadResult.h"
8#include "mc/world/level/BiomeFilterGroup.h"
9#include "mc/world/level/biome/components/BiomeDecorationFeature.h"
10
11// auto generated forward declare list
12// clang-format off
13class AppPlatform;
15class FeatureRegistry;
16class HashedString;
22namespace SharedTypes::v1_21_20 { struct AutomaticFeatureRulesData; }
23namespace cereal { struct ReflectionCtx; }
24// clang-format on
25
26class AutomaticFeatureRules {
27public:
28 // AutomaticFeatureRules inner types declare
29 // clang-format off
31 // clang-format on
32
33 // AutomaticFeatureRules inner types define
34 struct AutomaticFeatureRule {
35 public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<8, 328, ::BiomeDecorationFeature> mAutoFeature;
39 ::ll::TypedStorage<8, 64, ::BiomeFilterGroup> mBiomeFilter;
40 // NOLINTEND
41
42 public:
43 // prevent constructor by default
44 AutomaticFeatureRule& operator=(AutomaticFeatureRule const&);
45 AutomaticFeatureRule(AutomaticFeatureRule const&);
46 AutomaticFeatureRule();
47
48 public:
49 // member functions
50 // NOLINTBEGIN
51 MCAPI AutomaticFeatureRule(::AutomaticFeatureRules::AutomaticFeatureRule&&);
52 // NOLINTEND
53
54 public:
55 // constructor thunks
56 // NOLINTBEGIN
58 // NOLINTEND
59 };
60
61 using AutomaticFeaturePriorityList = ::std::unordered_map<
62 ::std::string,
63 ::std::unordered_map<::HashedString, ::AutomaticFeatureRules::AutomaticFeatureRule>>;
64
65public:
66 // member variables
67 // NOLINTBEGIN
68 ::ll::TypedStorage<
69 8,
70 256,
74 nullptr_t,
76 mLoader;
77 ::ll::TypedStorage<8, 8, ::IMinecraftEventing&> mEventing;
78 // NOLINTEND
79
80public:
81 // prevent constructor by default
82 AutomaticFeatureRules& operator=(AutomaticFeatureRules const&);
83 AutomaticFeatureRules(AutomaticFeatureRules const&);
84 AutomaticFeatureRules();
85
86public:
87 // member functions
88 // NOLINTBEGIN
89 MCAPI AutomaticFeatureRules(::cereal::ReflectionCtx const& ctx, ::IMinecraftEventing& eventing);
90
91 MCAPI void _applyAutomaticFeatureRuleDefinition(
93 ::SharedTypes::v1_21_20::AutomaticFeatureRulesData const& automaticFeatureRulesData,
94 ::MinEngineVersion const& minEngineVersion,
95 ::FeatureRegistry& featureRegistry
96 ) const;
97
98 MCAPI ::Puv::LoadResult<::SharedTypes::v1_21_20::AutomaticFeatureRulesData> _parseAndInsertUnsorted(
99 ::std::string const& filename,
100 ::std::string&& data,
101 ::MinEngineVersion const& minEngineVersion,
102 ::IWorldRegistriesProvider& worldRegistries,
103 ::std::unordered_map<
104 ::std::string,
105 ::std::unordered_map<::HashedString, ::AutomaticFeatureRules::AutomaticFeatureRule>>& bucketedFeatures,
106 bool isBasePack
107 ) const;
108
109 MCAPI void attachAutomaticFeatures(
110 ::ResourcePackManager& resourcePackManager,
111 ::IWorldRegistriesProvider& worldRegistries,
112 ::std::unordered_map<::HashedString, ::BiomeDecorationFeature>& biomeDecorationFeatureMap
113 ) const;
114
115 MCAPI ::std::unordered_map<
116 ::std::string,
117 ::std::unordered_map<::HashedString, ::AutomaticFeatureRules::AutomaticFeatureRule>>
118 parseAutomaticFeatures(
120 ::ResourcePackManager& resourcePackManager,
121 ::IWorldRegistriesProvider& worldRegistries
122 ) const;
123 // NOLINTEND
124
125public:
126 // static variables
127 // NOLINTBEGIN
128 MCAPI static ::SemVersionConstant const& SCHEMA_VERSION_1();
129 // NOLINTEND
130
131public:
132 // constructor thunks
133 // NOLINTBEGIN
134 MCAPI void* $ctor(::cereal::ReflectionCtx const& ctx, ::IMinecraftEventing& eventing);
135 // NOLINTEND
136};
Definition AppPlatform.h:91
Definition BedrockLoadContext.h:15
Definition FeatureRegistry.h:22
Definition HashedString.h:5
Definition IMinecraftEventing.h:138
Definition IWorldRegistriesProvider.h:25
Definition MinEngineVersion.h:15
Definition _HeaderOutputPredefine.h:335
Definition ResourcePackManager.h:35
Definition SemVersionConstant.h:8
Definition ServiceReference.h:8
Definition AutomaticFeatureRules.h:34
Definition AutomaticFeatureRulesData.h:17
Definition ReflectionCtx.h:11
Definition ctx.h:5