Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
ActorDefinition.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/debug/log/LogArea.h"
7#include "mc/deps/shared_types/v1_21_100/actor/TickWorldDefinition.h"
8#include "mc/deps/shared_types/v1_26_40/actor/BucketableComponentDefinition.h"
9#include "mc/deps/shared_types/v1_26_40/actor/DynamicJumpControlComponentDefinition.h"
10#include "mc/deps/shared_types/v1_26_40/actor/HideComponentDefinition.h"
11#include "mc/deps/shared_types/v1_26_40/actor/JumpControlComponentDefinition.h"
12#include "mc/deps/shared_types/v1_26_40/actor/ManagedWanderingTraderComponentDefinition.h"
13#include "mc/deps/shared_types/v1_26_40/actor/OpenDoorAnnotationComponentDefinition.h"
14#include "mc/deps/shared_types/v1_26_40/actor/PersistentComponentDefinition.h"
15#include "mc/deps/shared_types/v1_26_40/actor/TradeResupplyComponentDefinition.h"
16#include "mc/deps/shared_types/v1_26_40/actor/TrustComponentDefinition.h"
17#include "mc/deps/shared_types/v1_26_50/actor/PreferredPathComponentDefinition.h"
18#include "mc/deps/shared_types/v1_26_50/actor/ProjectileComponentDefinition.h"
19#include "mc/deps/shared_types/v1_26_60/actor/AmphibiousMoveControlComponentDefinition.h"
20#include "mc/deps/shared_types/v1_26_60/actor/EconomyTradeableComponentDefinition.h"
21#include "mc/deps/shared_types/v1_26_60/actor/GenericMoveControlComponentDefinition.h"
22#include "mc/deps/shared_types/v1_26_60/actor/GlideMoveControlComponentDefinition.h"
23#include "mc/deps/shared_types/v1_26_60/actor/MoveControlBasicComponentDefinition.h"
24#include "mc/deps/shared_types/v1_26_60/actor/MoveControlDolphinComponentDefinition.h"
25#include "mc/deps/shared_types/v1_26_60/actor/MoveControlFlyComponentDefinition.h"
26#include "mc/deps/shared_types/v1_26_60/actor/MoveControlHoverComponentDefinition.h"
27#include "mc/deps/shared_types/v1_26_60/actor/MoveControlSkipComponentDefinition.h"
28#include "mc/deps/shared_types/v1_26_60/actor/MoveControlSwayComponentDefinition.h"
29#include "mc/deps/shared_types/v1_26_60/actor/SlimeMoveControlComponentDefinition.h"
30#include "mc/deps/shared_types/v1_26_60/actor/StrengthComponentDefinition.h"
31#include "mc/deps/shared_types/v1_26_60/actor/TeleportComponentDefinition.h"
32#include "mc/deps/shared_types/v1_26_60/actor/TrailComponentDefinition.h"
33#include "mc/deps/shared_types/v1_26_60/actor/TransformationComponentDefinition.h"
34#include "mc/entity/components/BehaviorTreeDescription.h"
35#include "mc/entity/components/BreakDoorAnnotationDescription.h"
36#include "mc/entity/components/CommandBlockDescription.h"
37#include "mc/entity/components_json_legacy/BreakBlocksDescription.h"
38#include "mc/entity/components_json_legacy/ContainerDescription.h"
39#include "mc/entity/components_json_legacy/DwellerDescription.h"
40#include "mc/entity/components_json_legacy/IllagerBeastBlockedDescription.h"
41#include "mc/entity/definitions/AttackDescription.h"
42#include "mc/entity/definitions/MobEffectChangeDescription.h"
43#include "mc/entity/definitions/NavigationClimbDescription.h"
44#include "mc/entity/definitions/NavigationFloatDescription.h"
45#include "mc/entity/definitions/NavigationFlyDescription.h"
46#include "mc/entity/definitions/NavigationGenericDescription.h"
47#include "mc/entity/definitions/NavigationHoverDescription.h"
48#include "mc/entity/definitions/NavigationSwimDescription.h"
49#include "mc/entity/definitions/NavigationWalkDescription.h"
50#include "mc/server/commands/CurrentCmdVersion.h"
51#include "mc/world/actor/ActorAliasDescription.h"
52#include "mc/world/actor/ActorDefinitionDescriptor.h"
53#include "mc/world/actor/ActorDefinitionParseStatus.h"
54#include "mc/world/actor/ActorPropertiesDescription.h"
55#include "mc/world/actor/ActorVersionDescription.h"
56#include "mc/world/actor/AnimationScriptsDescription.h"
57#include "mc/world/actor/AnimationsDescription.h"
58#include "mc/world/actor/IdentifierDescription.h"
59#include "mc/world/actor/IsSpawnableDescription.h"
60#include "mc/world/actor/IsSummonableDescription.h"
61#include "mc/world/actor/RuntimeIdentifierDescription.h"
62#include "mc/world/actor/SpawnCategoryDescription.h"
63#include "mc/world/persistence/DynamicPropertiesDefinition.h"
64
65// auto generated forward declare list
66// clang-format off
69class ActorFactory;
71class Experiments;
73class PackLoadContext;
74class SemVersion;
77namespace cereal { class DynamicValue; }
78// clang-format on
79
80class ActorDefinition {
81public:
82 // member variables
83 // NOLINTBEGIN
84 ::ll::TypedStorage<8, 1024, ::ActorDefinitionDescriptor> mDescription;
85 ::ll::TypedStorage<8, 40, ::IdentifierDescription> mIdentifier;
86 ::ll::TypedStorage<8, 40, ::RuntimeIdentifierDescription> mRuntimeIdentifier;
87 ::ll::TypedStorage<8, 16, ::IsSpawnableDescription> mIsSpawnable;
88 ::ll::TypedStorage<8, 16, ::IsSummonableDescription> mIsSummonable;
89 ::ll::TypedStorage<8, 72, ::AnimationsDescription> mAnimationsDescription;
90 ::ll::TypedStorage<8, 32, ::AnimationScriptsDescription> mAnimationScriptsDescription;
91 ::ll::TypedStorage<8, 24, ::ActorPropertiesDescription> mActorPropertiesDescription;
92 ::ll::TypedStorage<8, 32, ::ActorAliasDescription> mActorAliasDescription;
93 ::ll::TypedStorage<8, 16, ::SpawnCategoryDescription> mSpawnCategoryDescription;
94 ::ll::TypedStorage<8, 32, ::ActorVersionDescription> mActorVersionDescription;
95 ::ll::TypedStorage<1, 1, bool> mAttemptOffhandInteractions;
96 ::ll::TypedStorage<8, 24, ::std::vector<::ActorDefinitionAttribute>> mAttributes;
97 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::ActorDefinitionEvent>> mEventHandlers;
98 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::ActorDefinitionEvent>> mUpgradeHandlers;
99 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::CommonResourceDefinitionMap>> mCommonResourceDefinitionMap;
100 ::ll::TypedStorage<8, 32, ::std::string> mRelativeResourceFilepath;
101 ::ll::TypedStorage<4, 4, ::CurrentCmdVersion> mCommandVersion;
102 ::ll::TypedStorage<8, 72, ::DynamicPropertiesDefinition> mDynamicPropertiesDefinition;
103 ::ll::TypedStorage<8, 56, ::AttackDescription> mAttack;
104 ::ll::TypedStorage<8, 56, ::MobEffectChangeDescription> mMobEffects;
105 ::ll::TypedStorage<4, 4, ::SharedTypes::v1_26_60::AmphibiousMoveControlComponentDefinition> mAmphibiousMoveControl;
106 ::ll::TypedStorage<8, 40, ::BehaviorTreeDescription> mBehavior;
107 ::ll::TypedStorage<8, 72, ::BreakBlocksDescription> mBreakBlocks;
108 ::ll::TypedStorage<8, 16, ::BreakDoorAnnotationDescription> mBreakDoorAnnotation;
109 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_40::BucketableComponentDefinition> mBucketable;
110 ::ll::TypedStorage<8, 24, ::CommandBlockDescription> mCommandBlock;
111 ::ll::TypedStorage<8, 24, ::ContainerDescription> mContainer;
112 ::ll::TypedStorage<8, 128, ::DwellerDescription> mDweller;
113 ::ll::TypedStorage<4, 4, ::SharedTypes::v1_26_60::GenericMoveControlComponentDefinition> mGenericMoveControl;
114 ::ll::TypedStorage<4, 12, ::SharedTypes::v1_26_60::GlideMoveControlComponentDefinition> mGlideMoveControl;
115 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_40::HideComponentDefinition> mHide;
116 ::ll::TypedStorage<8, 40, ::IllagerBeastBlockedDescription> mIllagerBeastBlocked;
117 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_40::ManagedWanderingTraderComponentDefinition>
118 mManagedWanderingTrader;
119 ::ll::TypedStorage<4, 4, ::SharedTypes::v1_26_60::MoveControlBasicComponentDefinition> mMoveControl;
120 ::ll::TypedStorage<4, 4, ::SharedTypes::v1_26_60::MoveControlDolphinComponentDefinition> mDolphinSwimControl;
121 ::ll::TypedStorage<4, 4, ::SharedTypes::v1_26_60::MoveControlFlyComponentDefinition> mFlyControl;
122 ::ll::TypedStorage<4, 4, ::SharedTypes::v1_26_60::MoveControlSkipComponentDefinition> mHopControl;
123 ::ll::TypedStorage<4, 4, ::SharedTypes::v1_26_60::MoveControlHoverComponentDefinition> mHoverControl;
124 ::ll::TypedStorage<4, 12, ::SharedTypes::v1_26_60::MoveControlSwayComponentDefinition> mSwimControl;
125 ::ll::TypedStorage<8, 88, ::NavigationClimbDescription> mWallClimberNavigation;
126 ::ll::TypedStorage<8, 88, ::NavigationFloatDescription> mFloatNavigation;
127 ::ll::TypedStorage<8, 88, ::NavigationFlyDescription> mFlyingNavigation;
128 ::ll::TypedStorage<8, 88, ::NavigationHoverDescription> mHoverNavigation;
129 ::ll::TypedStorage<8, 88, ::NavigationGenericDescription> mGenericNavigation;
130 ::ll::TypedStorage<8, 120, ::NavigationSwimDescription> mWaterboundNavigation;
131 ::ll::TypedStorage<8, 88, ::NavigationWalkDescription> mNavigation;
132 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_40::PersistentComponentDefinition> mPersistent;
133 ::ll::TypedStorage<8, 40, ::SharedTypes::v1_26_50::PreferredPathComponentDefinition> mPreferredPath;
134 ::ll::TypedStorage<8, 536, ::SharedTypes::v1_26_50::ProjectileComponentDefinition> mProjectile;
135 ::ll::TypedStorage<4, 12, ::SharedTypes::v1_26_60::SlimeMoveControlComponentDefinition> mSlimeMoveControl;
136 ::ll::TypedStorage<4, 8, ::SharedTypes::v1_26_60::StrengthComponentDefinition> mStrength;
137 ::ll::TypedStorage<8, 312, ::SharedTypes::v1_26_60::TrailComponentDefinition> mTrail;
138 ::ll::TypedStorage<8, 120, ::SharedTypes::v1_26_60::TeleportComponentDefinition> mTeleport;
139 ::ll::TypedStorage<4, 12, ::SharedTypes::v1_21_100::TickWorldDefinition> mTickWorld;
140 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_40::TradeResupplyComponentDefinition> mTradeResupply;
141 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_40::TrustComponentDefinition> mTrust;
142 ::ll::TypedStorage<8, 104, ::SharedTypes::v1_26_60::EconomyTradeableComponentDefinition> mEconomyTradeable;
143 ::ll::TypedStorage<8, 168, ::SharedTypes::v1_26_60::TransformationComponentDefinition> mTransformation;
144 ::ll::TypedStorage<4, 36, ::SharedTypes::v1_26_40::DynamicJumpControlComponentDefinition> mDynamicJumpControl;
145 ::ll::TypedStorage<4, 36, ::SharedTypes::v1_26_40::JumpControlComponentDefinition> mJumpControl;
146 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_40::OpenDoorAnnotationComponentDefinition> mOpenDoorAnnotation;
147 // NOLINTEND
148
149public:
150 // prevent constructor by default
151 ActorDefinition();
152
153public:
154 // member functions
155 // NOLINTBEGIN
156 MCNAPI explicit ActorDefinition(::std::string const& id);
157
158 MCNAPI ::ActorDefinitionParseStatus parse(
159 ::ActorDocumentDataParams deserializeDataParams,
161 ::ActorFactory& actorFactory,
162 ::Experiments const& experiments,
163 ::LogArea logArea
164 );
165
167 ::cereal::DynamicValue const& description,
168 ::SemVersion const& formatVersion,
169 ::PackLoadContext const& packLoadContext
170 );
171 // NOLINTEND
172
173public:
174 // static functions
175 // NOLINTBEGIN
176 MCNAPI static void parseEvents(
177 ::std::unordered_map<::std::string, ::ActorDefinitionEvent>& eventHandlers,
178 ::cereal::DynamicValue const& root,
179 ::MinEngineVersion const& minEngineVersion,
180 ::SemVersion const& formatVersion,
181 ::ActorEventResponseFactory* responseFactory,
182 ::Experiments const& experiments
183 );
184 // NOLINTEND
185
186public:
187 // constructor thunks
188 // NOLINTBEGIN
189 MCNAPI void* $ctor(::std::string const& id);
190 // NOLINTEND
191};
Definition ActorDefinitionDescriptor.h:72
Definition ActorDefinitionEvent.h:18
MCAPI::ActorDefinitionParseStatus parse(::ActorDocumentDataParams deserializeDataParams, ::ActorDefinitionDescriptor &desc, ::ActorFactory &actorFactory, ::Experiments const &experiments, ::LogArea logArea)
MCAPI ActorDefinition(::std::string const &id)
static MCAPI void parseEvents(::std::unordered_map<::std::string, ::ActorDefinitionEvent > &eventHandlers, ::cereal::DynamicValue const &root, ::MinEngineVersion const &minEngineVersion, ::SemVersion const &formatVersion, ::ActorEventResponseFactory *responseFactory, ::Experiments const &experiments)
MCAPI bool parseEntityDescription(::cereal::DynamicValue const &description, ::SemVersion const &formatVersion, ::PackLoadContext const &packLoadContext)
MCAPI void * $ctor(::std::string const &id)
Definition ActorEventResponseFactory.h:18
Definition ActorFactory.h:33
Definition CommonResourceDefinitionMap.h:16
Definition Experiments.h:14
Definition MinEngineVersion.h:15
Definition PackLoadContext.h:20
Definition SemVersion.h:15
Definition DynamicValue.h:14
Definition ActorDefinitionAttribute.h:8
Definition ActorDocumentDataParams.h:16