LeviLamina
Loading...
Searching...
No Matches
ActorDefinitionDescriptor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/entity/factory/DefinitionInstanceGroup.h"
8#include "mc/entity/factory/GoalDefinitionInstanceGroup.h"
9#include "mc/world/actor/ActorAliasDescription.h"
10#include "mc/world/actor/ActorPropertiesDescription.h"
11#include "mc/world/actor/AnimationScriptsDescription.h"
12#include "mc/world/actor/AnimationsDescription.h"
13#include "mc/world/actor/IdentifierDescription.h"
14#include "mc/world/actor/IsSpawnableDescription.h"
15#include "mc/world/actor/IsSummonableDescription.h"
16#include "mc/world/actor/RuntimeIdentifierDescription.h"
17#include "mc/world/actor/SpawnCategoryDescription.h"
18
19// auto generated forward declare list
20// clang-format off
21class Actor;
55struct TrailDescription;
58namespace SharedTypes::v1_21_100 { struct TickWorldDefinition; }
59namespace SharedTypes::v1_26_40 { struct BucketableComponentDefinition; }
60namespace SharedTypes::v1_26_40 { struct DynamicJumpControlComponentDefinition; }
61namespace SharedTypes::v1_26_40 { struct HideComponentDefinition; }
62namespace SharedTypes::v1_26_40 { struct JumpControlComponentDefinition; }
63namespace SharedTypes::v1_26_40 { struct ManagedWanderingTraderComponentDefinition; }
64namespace SharedTypes::v1_26_40 { struct OpenDoorAnnotationComponentDefinition; }
65namespace SharedTypes::v1_26_40 { struct PersistentComponentDefinition; }
66namespace SharedTypes::v1_26_40 { struct TradeResupplyComponentDefinition; }
67namespace SharedTypes::v1_26_40 { struct TrustComponentDefinition; }
68namespace SharedTypes::v1_26_50 { struct PreferredPathComponentDefinition; }
69namespace SharedTypes::v1_26_50 { struct ProjectileComponentDefinition; }
70// clang-format on
71
72class ActorDefinitionDescriptor {
73public:
74 // member variables
75 // NOLINTBEGIN
76 ::ll::TypedStorage<8, 64, ::std::unordered_set<::HashedString>> mComponentNames;
77 ::ll::TypedStorage<8, 40, ::IdentifierDescription> mIdentifier;
78 ::ll::TypedStorage<8, 40, ::RuntimeIdentifierDescription> mRuntimeIdentifier;
79 ::ll::TypedStorage<8, 16, ::IsSpawnableDescription> mIsSpawnable;
80 ::ll::TypedStorage<8, 16, ::IsSummonableDescription> mIsSummonable;
81 ::ll::TypedStorage<8, 72, ::AnimationsDescription> mAnimationsDescription;
82 ::ll::TypedStorage<8, 32, ::AnimationScriptsDescription> mAnimationScriptsDescription;
83 ::ll::TypedStorage<8, 24, ::ActorPropertiesDescription> mActorPropertiesDescription;
84 ::ll::TypedStorage<8, 32, ::ActorAliasDescription> mActorAliasDescription;
85 ::ll::TypedStorage<8, 16, ::SpawnCategoryDescription> mSpawnCategoryDescription;
86 ::ll::TypedStorage<8, 24, ::std::vector<::LegacyGoalDefinition>> mGoalDefinitions;
87 ::ll::TypedStorage<8, 24, ::std::vector<::ActorDefinitionAttribute>> mAttributes;
88 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::ActorDefinitionEvent>> mEventHandlers;
89 ::ll::TypedStorage<8, 72, ::DefinitionInstanceGroup> mDefinitionGroup;
90 ::ll::TypedStorage<8, 144, ::GoalDefinitionInstanceGroup> mGoalDefinitionGroup;
91 ::ll::TypedStorage<8, 8, ::AttackDescription const*> mAttack;
92 ::ll::TypedStorage<8, 8, ::MobEffectChangeDescription const*> mMobEffects;
93 ::ll::TypedStorage<8, 8, ::AmphibiousMoveControlDescription const*> mAmphibiousMoveControl;
94 ::ll::TypedStorage<8, 8, ::BehaviorTreeDescription const*> mBehavior;
95 ::ll::TypedStorage<8, 8, ::BreakBlocksDescription const*> mBreakBlocks;
96 ::ll::TypedStorage<8, 8, ::BreakDoorAnnotationDescription const*> mBreakDoorAnnotation;
97 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::BucketableComponentDefinition const*> mBucketable;
98 ::ll::TypedStorage<8, 8, ::CommandBlockDescription const*> mCommandBlock;
99 ::ll::TypedStorage<8, 8, ::ContainerDescription const*> mContainer;
100 ::ll::TypedStorage<8, 8, ::DwellerDescription const*> mDweller;
101 ::ll::TypedStorage<8, 8, ::GenericMoveControlDescription const*> mGenericMoveControl;
102 ::ll::TypedStorage<8, 8, ::GlideMoveControlDescription const*> mGlideMoveControl;
103 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::HideComponentDefinition const*> mHide;
104 ::ll::TypedStorage<8, 8, ::IllagerBeastBlockedDescription const*> mIllagerBeastBlocked;
105 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::ManagedWanderingTraderComponentDefinition const*>
106 mManagedWanderingTrader;
107 ::ll::TypedStorage<8, 8, ::MoveControlBasicDescription const*> mMoveControl;
108 ::ll::TypedStorage<8, 8, ::MoveControlDolphinDescription const*> mDolphinSwimControl;
109 ::ll::TypedStorage<8, 8, ::MoveControlFlyDescription const*> mFlyControl;
110 ::ll::TypedStorage<8, 8, ::MoveControlSkipDescription const*> mHopControl;
111 ::ll::TypedStorage<8, 8, ::MoveControlHoverDescription const*> mHoverControl;
112 ::ll::TypedStorage<8, 8, ::MoveControlSwayDescription const*> mSwimControl;
113 ::ll::TypedStorage<8, 8, ::NavigationClimbDescription const*> mWallClimberNavigation;
114 ::ll::TypedStorage<8, 8, ::NavigationFloatDescription const*> mFloatNavigation;
115 ::ll::TypedStorage<8, 8, ::NavigationFlyDescription const*> mFlyingNavigation;
116 ::ll::TypedStorage<8, 8, ::NavigationHoverDescription const*> mHoverNavigation;
117 ::ll::TypedStorage<8, 8, ::NavigationGenericDescription const*> mGenericNavigation;
118 ::ll::TypedStorage<8, 8, ::NavigationSwimDescription const*> mWaterboundNavigation;
119 ::ll::TypedStorage<8, 8, ::NavigationWalkDescription const*> mNavigation;
120 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::PersistentComponentDefinition const*> mPersistent;
121 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_50::PreferredPathComponentDefinition const*> mPreferredPath;
122 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_50::ProjectileComponentDefinition const*> mProjectile;
123 ::ll::TypedStorage<8, 8, ::SlimeMoveControlDescription const*> mSlimeMoveControl;
124 ::ll::TypedStorage<8, 8, ::StrengthDescription const*> mStrength;
125 ::ll::TypedStorage<8, 8, ::TrailDescription const*> mTrail;
126 ::ll::TypedStorage<8, 8, ::TeleportDescription const*> mTeleport;
127 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_21_100::TickWorldDefinition const*> mTickWorld;
128 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::TradeResupplyComponentDefinition const*> mTradeResupply;
129 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::TrustComponentDefinition const*> mTrust;
130 ::ll::TypedStorage<8, 8, ::EconomyTradeableDescription const*> mEconomyTradeable;
131 ::ll::TypedStorage<8, 8, ::TransformationDescription const*> mTransformation;
132 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::DynamicJumpControlComponentDefinition const*> mDynamicJumpControl;
133 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::JumpControlComponentDefinition const*> mJumpControl;
134 ::ll::TypedStorage<8, 8, ::SharedTypes::v1_26_40::OpenDoorAnnotationComponentDefinition const*> mOpenDoorAnnotation;
135 // NOLINTEND
136
137public:
138 // prevent constructor by default
139 ActorDefinitionDescriptor& operator=(ActorDefinitionDescriptor const&);
140 ActorDefinitionDescriptor(ActorDefinitionDescriptor const&);
141
142public:
143 // member functions
144 // NOLINTBEGIN
145 MCAPI ActorDefinitionDescriptor();
146
147 MCAPI ActorDefinitionDescriptor(::ActorDefinitionDescriptor&&);
148
149 MCAPI ::ActorDefinitionDescriptor& combine(::ActorDefinitionDescriptor const& rhs);
150
151 MCAPI ::std::optional<::ActorDefinitionAttribute> findAttributeByName(::std::string const& attributeName) const;
152
153 MCAPI ::ActorDefinitionDescriptor& subtract(::ActorDefinitionDescriptor const& rhs);
154
155 MCAPI ~ActorDefinitionDescriptor();
156 // NOLINTEND
157
158public:
159 // static functions
160 // NOLINTBEGIN
161 MCAPI static bool executeEvent(::Actor& entity, ::std::string const& name, ::VariantParameterList const& list);
162
163 MCAPI static bool
164 executeTrigger(::Actor& entity, ::ActorDefinitionTrigger const& trigger, ::VariantParameterList const& list);
165
166 MCAPI static void
167 forceExecuteTrigger(::Actor& entity, ::ActorDefinitionTrigger const& trigger, ::VariantParameterList const& list);
168 // NOLINTEND
169
170public:
171 // constructor thunks
172 // NOLINTBEGIN
173 MCAPI void* $ctor();
174
175 MCAPI void* $ctor(::ActorDefinitionDescriptor&&);
176 // NOLINTEND
177
178public:
179 // destructor thunk
180 // NOLINTBEGIN
181 MCAPI void $dtor();
182 // NOLINTEND
183};
Definition ActorDefinitionEvent.h:18
Definition ActorDefinitionTrigger.h:14
Definition Actor.h:113
Definition ActorDefinitionAttribute.h:8
Definition AmphibiousMoveControlDescription.h:8
Definition AttackDescription.h:15
Definition BehaviorTreeDescription.h:8
Definition BreakBlocksDescription.h:14
Definition BreakDoorAnnotationDescription.h:14
Definition CommandBlockDescription.h:13
Definition ContainerDescription.h:14
Definition DwellerDescription.h:13
Definition EconomyTradeableDescription.h:14
Definition GenericMoveControlDescription.h:8
Definition GlideMoveControlDescription.h:13
Definition IllagerBeastBlockedDescription.h:15
Definition LegacyGoalDefinition.h:32
Definition MobEffectChangeDescription.h:14
Definition MoveControlBasicDescription.h:8
Definition MoveControlDolphinDescription.h:8
Definition MoveControlFlyDescription.h:8
Definition MoveControlHoverDescription.h:8
Definition MoveControlSkipDescription.h:8
Definition MoveControlSwayDescription.h:13
Definition NavigationClimbDescription.h:8
Definition NavigationFloatDescription.h:8
Definition NavigationFlyDescription.h:8
Definition NavigationGenericDescription.h:8
Definition NavigationHoverDescription.h:8
Definition NavigationSwimDescription.h:8
Definition NavigationWalkDescription.h:8
Definition TickWorldDefinition.h:7
Definition BucketableComponentDefinition.h:7
Definition DynamicJumpControlComponentDefinition.h:10
Definition HideComponentDefinition.h:7
Definition JumpControlComponentDefinition.h:10
Definition ManagedWanderingTraderComponentDefinition.h:7
Definition OpenDoorAnnotationComponentDefinition.h:7
Definition PersistentComponentDefinition.h:7
Definition TradeResupplyComponentDefinition.h:7
Definition TrustComponentDefinition.h:7
Definition PreferredPathComponentDefinition.h:15
Definition ProjectileComponentDefinition.h:19
Definition SlimeMoveControlDescription.h:14
Definition StrengthDescription.h:13
Definition TeleportDescription.h:15
Definition TrailDescription.h:16
Definition TransformationDescription.h:15
Definition VariantParameterList.h:14