3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/debug/log/LogArea.h"
7#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/deps/puv/LoadResult.h"
10#include "mc/deps/puv/SlicedLoader.h"
11#include "mc/resources/JsonBetaState.h"
12#include "mc/world/actor/ActorDefinitionParseStatus.h"
29namespace Core {
class Path; }
30namespace Json {
class Value; }
31namespace Puv {
class Input; }
32namespace SharedTypes::v1_21_90 {
struct ActorDefinitions; }
33namespace SharedTypes::v1_21_90 {
struct ActorDocument; }
59 enum class LoadStatus :
int {
61 FailedToParseIdentifier = 1,
62 InvalidNamespaceInIdentifier = 2,
63 DefinitionAlreadyDefined = 3,
64 FailedToLoadFromJSON = 4,
65 InvalidIdentifier = 5,
141 ::std::string
const& relativeResourceFilepath,
142 ::JsonBetaState useBetaFeatures,
143 ::std::string
const& identifier,
151 ::std::string
const& relativeResourceFilepath,
153 ::std::unordered_set<::std::string>& definitions,
160 ::std::string
const& relativeResourceFilepath,
162 ::JsonBetaState useBetaFeatures,
163 ::std::string
const& identifier,
172 ::JsonBetaState useBetaFeatures,
178 ::std::string
const& base,
179 ::std::unordered_map<::std::string, ::SharedTypes::v1_21_90::ActorDefinitions>& componentsGroup,
182 ::JsonBetaState useBetaFeatures
201 ::std::string
const& componentName,
208 ::std::string& identifier
214 ::std::string& runtimeIdentifier
Definition ActorDefinitionGroup.h:36
MCAPI ActorDefinitionGroup(::Level &level, ::ResourcePackManager &resourcePackManager, ::IMinecraftEventing &eventing, ::Experiments const &experiments, ::Bedrock::NonOwnerPointer<::LinkedAssetValidator > linkedAssetValidator)
static MCAPI bool loadActorDefinitionRuntimeIdentifier(::Json::Value const &root, ::SemVersion const &formatVersion, ::std::string &runtimeIdentifier)
MCAPI void _removeRef(::ActorDefinitionPtr &ptr)
MCAPI void _setupPropertyGroups(::Level &level, ::ActorDefinition const &def)
MCAPI ::Puv::LoadResult<::SharedTypes::v1_21_90::ActorDocument > _loadEntityNode(::Puv::Input const &input, ::SemVersion const &formatVersion, ::IPackLoadContext &packLoadContext, ::JsonBetaState useBetaFeatures, ::ActorMigratedDefinitionFactory const &factory) const
MCAPI::ActorDefinitionParseStatus _loadTemplates(::Level &level, ::std::string const &base, ::std::unordered_map<::std::string, ::SharedTypes::v1_21_90::ActorDefinitions > &componentsGroup, ::SemVersion const &formatVersion, ::IPackLoadContext const &packLoadContext, ::JsonBetaState useBetaFeatures)
static MCAPI void ** $vftable()
MCAPI void _getResources(::Level &level)
static MCAPI bool loadActorDefinitionIdentifier(::Json::Value const &root, ::SemVersion const &formatVersion, ::std::string &identifier)
MCAPI::ActorDefinitionPtr tryGetDefinitionGroup(::std::string const &base, ::std::string const &definitionId)
static MCAPI void forEachComponentOf(::Json::Value &entityValue, ::std::string const &componentName, ::std::function< void(::Json::Value &, ::Json::Value &)> const &callback)
MCAPI void _setupCommonResourceDefinitionMap(::ActorDefinition &def, ::Level &level)
MCAPI void * $ctor(::Level &level, ::ResourcePackManager &resourcePackManager, ::IMinecraftEventing &eventing, ::Experiments const &experiments, ::Bedrock::NonOwnerPointer<::LinkedAssetValidator > linkedAssetValidator)
MCAPI::ActorDefinitionGroup::LoadActorResult _loadActorDefinition(::Level &level, ::IPackLoadContext &packLoadContext, ::std::string const &relativeResourceFilepath, ::Json::Value &root, ::std::unordered_set<::std::string > &definitions, ::LogArea logArea)
static MCAPI bool tryReadEntityResourceFile(::PackInstance &packInstance, ::Core::Path const &resource, ::Json::Value &outputRoot)
MCAPI bool _loadDefinitionFromJSON(::SemVersion const &formatVersion, ::IPackLoadContext &packLoadContext, ::std::string const &relativeResourceFilepath, ::Json::Value minecraftEntityNode, ::JsonBetaState useBetaFeatures, ::std::string const &identifier, ::Level &level, ::LogArea logArea)
MCAPI ::std::vector<::std::string > buildActorEventList() const
MCAPI bool _initActorDefinition(::Puv::Input const &input, ::SemVersion const &formatVersion, ::IPackLoadContext &packLoadContext, ::std::string const &relativeResourceFilepath, ::JsonBetaState useBetaFeatures, ::std::string const &identifier, ::Level &level, ::LogArea logArea)
Definition ActorDefinitionPtr.h:11
Definition ActorDefinition.h:21
Definition ActorMigratedDefinitionFactory.h:18
Definition BedrockLoadContext.h:14
Definition EnableNonOwnerReferences.h:7
Definition NonOwnerPointer.h:9
Definition Experiments.h:14
Definition IMinecraftEventing.h:144
Definition IPackLoadContext.h:20
Definition LinkedAssetValidator.h:8
Definition PackInstance.h:23
Definition ResourcePackManager.h:24
Definition SemVersion.h:16
Definition ActorDefinitionGroup.h:45
Definition ActorDefinitionGroup.h:68
Definition ActorMigratedDefinitionCustomData.h:5