3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/scripting/reflection/Privilege.h"
7#include "mc/world/level/storage/AllExperiments.h"
16namespace Core {
class Path; }
17namespace Json {
class Value; }
22namespace Scripting {
struct Version; }
25namespace CreatorMetadataUtils {
28MCAPI_S
void _addCommonEngineMetadata(::Json::Value& root,
char const* type);
30MCAPI_S
void _addCommonVanillaMetadata(::Json::Value& jsonRoot,
char const* type);
32MCAPI_S
void _addPrivilegeToArray(::Json::Value& arr, ::Scripting::Privilege privilege);
34MCAPI_S
void _generateAfterEventsOrderingDocumentation(
35 ::Scripting::ScriptEngine
const& scriptEngine,
36 ::Core::Path
const& docsFolder
39MCAPI_S ::Json::Value _generateBiomeMetadataJson(::BiomeRegistry
const& biomes);
41MCAPI_S ::Json::Value _generateBlocksMetadataJson();
43MCAPI_S ::Json::Value _generateCameraMetadataJson(::CameraPresets
const& presets);
45MCAPI_S ::Json::Value _generateCooldownCategoriesMetadataJson(::ItemRegistryRef itemRegistry);
47MCAPI_S ::Json::Value _generateDimensionsMetadataJson();
49MCAPI_S ::Json::Value _generateEffectsMetadataJson();
51MCAPI_S ::Json::Value _generateEnchantmentsMetadataJson();
53MCAPI_S ::Json::Value _generateEntitiesMetadataJson(
54 ::std::unordered_map<::std::string, ::std::unique_ptr<::ActorDefinition>>
const& actorDefinitionList
57MCAPI_S ::Json::Value _generateItemsMetadataJson(::ItemRegistryRef itemRegistry);
59MCAPI_S ::Json::Value _generatePotionDeliveryTypesMetadataJson();
61MCAPI_S ::Json::Value _generatePotionEffectsMetadataJson();
63MCAPI_S ::Json::Value _generateScriptingModuleMetadataJson(
64 ::Scripting::ModuleBinding
const& moduleToBind,
65 ::Scripting::SupportedBindingModule
const& moduleDescriptor,
66 ::Scripting::ModuleBindingBundle
const& loadedModules
69MCAPI_S ::Json::Value _generateStructureFeatureMetadataJson();
71MCAPI_S ::std::unordered_map<::std::string, ::std::string> _getPropertyToEntityNameMap(
72 ::std::unordered_map<::std::string, ::std::unique_ptr<::ActorDefinition>>
const& actorDefinitionList
75MCAPI_S
void generateBiomeDocumentation(::Core::Path
const& docsFolder, ::BiomeRegistry
const& biomes);
77MCAPI_S
void generateCameraPresetDocumentation(::Core::Path
const& docsFolder, ::CameraPresets
const& presets);
79MCAPI_S
void generateCommandsDocumentation(::CommandRegistry& commandRegistry, ::Core::Path
const& docsFolder);
81MCAPI_S
void generateCooldownCategoriesDocumentation(::Core::Path
const& docsFolder, ::ItemRegistryRef itemRegistry);
83MCAPI_S
void generateEntitiesDocumentation(
84 ::Core::Path
const& docsFolder,
85 ::std::unordered_map<::std::string, ::std::unique_ptr<::ActorDefinition>>
const& actorDefinitionList
88MCAPI_S
void generateItemsDocumentation(::Core::Path
const& docsFolder, ::ItemRegistryRef itemRegistry);
90MCAPI_S
void generateSchemaDataDocumentation(::Core::Path
const& schemaDataFolder);
92MCAPI_S
void generateScriptingDocumentation(::Scripting::ScriptEngine& scriptEngine, ::Core::Path
const& docsFolder);
94MCAPI_S
void generateVanillaDataDocumentation(
95 ::Core::Path
const& docsFolder,
96 ::ItemRegistryRef itemRegistry,
97 ::std::unordered_map<::std::string, ::std::unique_ptr<::ActorDefinition>>
const& actorDefinitionList,
98 ::CameraPresets
const& presets,
99 ::BiomeRegistry
const& biomes
102MCAPI ::std::string getGameSemVersionAsString();
104MCAPI_S ::std::initializer_list<::AllExperiments> getRequiredExperimentsForMetadata();
106MCAPI_S ::std::string scriptingVersionToString(::Scripting::Version
const& version);
108MCAPI_S
bool validateVariantResolution(
109 ::Scripting::ModuleBinding
const& moduleToBind,
110 ::entt::meta_type
const& variantType,
111 ::Scripting::ModuleBindingBundle
const& loadedModules,
112 ::std::string
const& bindingName
115MCAPI_S
bool writeJsonMetadataToFile(::Json::Value
const& json, ::Core::Path
const& filepath);
Definition ActorDefinition.h:80
Definition BiomeRegistry.h:37
Definition CameraPresets.h:22
Definition CommandRegistry.h:47
Definition ItemRegistryRef.h:36
Definition ScriptEngine.h:21
Definition ModuleBindingBundle.h:15
Definition ModuleBinding.h:23
Definition SupportedBindingModule.h:7