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 {
29MCAPI
void _addCommonEngineMetadata(::Json::Value& root,
char const* type);
31MCAPI
void _addCommonVanillaMetadata(::Json::Value& jsonRoot,
char const* type);
33MCAPI
void _addPrivilegeToArray(::Json::Value& arr, ::Scripting::Privilege privilege);
35MCAPI
void _generateAfterEventsOrderingDocumentation(
36 ::Scripting::ScriptEngine
const& scriptEngine,
37 ::Core::Path
const& docsFolder
40MCAPI ::Json::Value _generateBiomeMetadataJson(::BiomeRegistry
const& biomes);
42MCAPI ::Json::Value _generateBlocksMetadataJson();
44MCAPI ::Json::Value _generateCameraMetadataJson(::CameraPresets
const& presets);
46MCAPI ::Json::Value _generateCooldownCategoriesMetadataJson(::ItemRegistryRef itemRegistry);
48MCAPI ::Json::Value _generateDimensionsMetadataJson();
50MCAPI ::Json::Value _generateEffectsMetadataJson();
52MCAPI ::Json::Value _generateEnchantmentsMetadataJson();
54MCAPI ::Json::Value _generateEntitiesMetadataJson(
55 ::std::unordered_map<::std::string, ::std::unique_ptr<::ActorDefinition>>
const& actorDefinitionList
58MCAPI ::Json::Value _generateItemsMetadataJson(::ItemRegistryRef itemRegistry);
60MCAPI ::Json::Value _generateMolangMathFunctionsMetadataJson();
62MCAPI ::Json::Value _generateMolangQueriesArrayJson();
64MCAPI ::Json::Value _generateMolangQueriesMetadataJson();
66MCAPI ::Json::Value _generatePotionDeliveryTypesMetadataJson();
68MCAPI ::Json::Value _generatePotionEffectsMetadataJson();
70MCAPI ::Json::Value _generateScriptingModuleMetadataJson(
71 ::Scripting::ModuleBinding
const& moduleToBind,
72 ::Scripting::SupportedBindingModule
const& moduleDescriptor,
73 ::Scripting::ModuleBindingBundle
const& loadedModules
76MCAPI ::Json::Value _generateStructureFeatureMetadataJson();
78MCAPI ::std::unordered_map<::std::string, ::std::string> _getPropertyToEntityNameMap(
79 ::std::unordered_map<::std::string, ::std::unique_ptr<::ActorDefinition>>
const& actorDefinitionList
82MCAPI ::std::optional<::Scripting::Privilege> _tryGetPrivilegeTypeOfClosureTemplateType(::entt::meta_type
const& type);
84MCAPI
void generateCommandsDocumentation(::CommandRegistry& commandRegistry, ::Core::Path
const& docsFolder);
86MCAPI
void generateCooldownCategoriesDocumentation(::Core::Path
const& docsFolder, ::ItemRegistryRef itemRegistry);
88MCAPI
void generateItemsDocumentation(::Core::Path
const& docsFolder, ::ItemRegistryRef itemRegistry);
90MCAPI
void generateSchemaDataDocumentation(::Core::Path
const& schemaDataFolder);
92MCAPI
void generateScriptingDocumentation(::Scripting::ScriptEngine& scriptEngine, ::Core::Path
const& docsFolder);
94MCAPI
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
103MCAPI ::std::string getGameSemVersionAsString();
106MCAPI ::std::initializer_list<::AllExperiments> getRequiredExperimentsForMetadata();
108MCAPI ::std::string scriptingVersionToString(::Scripting::Version
const& version);
110MCAPI
bool validateVariantResolution(
111 ::Scripting::ModuleBinding
const& moduleToBind,
112 ::entt::meta_type
const& variantType,
113 ::Scripting::ModuleBindingBundle
const& loadedModules,
114 ::std::string
const& bindingName
117MCAPI
bool writeJsonMetadataToFile(::Json::Value
const& json, ::Core::Path
const& filepath);
Definition ActorDefinition.h:81
Definition BiomeRegistry.h:38
Definition CameraPresets.h:20
Definition CommandRegistry.h:50
Definition ItemRegistryRef.h:36
Definition ScriptEngine.h:21
Definition ModuleBindingBundle.h:15
Definition ModuleBinding.h:23
Definition SupportedBindingModule.h:7