106 using EntityBlockCollisionCallback =
113 LLAPI
void refresh();
117 LLNDAPI std::string
const& getTypeName()
const;
119 LLNDAPI
class Vec3 getFeetPos() const;
121 LLNDAPI
class Vec3 getHeadPos() const;
123 LLNDAPI
class BlockPos getFeetBlockPos() const;
125 LLNDAPI
bool isSimulatedPlayer()
const;
127 LLNDAPI
bool isOnGround()
const;
129 LLAPI
void setOnFire(
int time,
bool isEffect =
true);
130 LLAPI
void stopFire();
132 LLNDAPI
Vec3 getVelocity()
const;
133 LLNDAPI
float getPosDeltaPerSecLength()
const;
135 LLAPI
bool hurtByCause(
137 ::SharedTypes::Legacy::ActorDamageCause cause = ::SharedTypes::Legacy::ActorDamageCause::Override,
143 bool includeActor =
true,
144 bool includeBlock =
true,
145 std::function<bool(
class BlockSource const&,
class Block const&,
bool)>
const& blockCheckFunction =
146 [](
auto&&...) ->
bool {
return true; }
152 LLAPI
void setName(std::string
const& name);
154 LLNDAPI
float evalMolang(std::string
const& expression);
156 LLNDAPI
const AABB& getAABB()
const;
158 LLAPI static ::Actor* tryGetFromEntity(
::EntityContext& entity,
bool includeRemoved);
160 [[nodiscard]]
Level& getLevel()
const {
return *
reinterpret_cast<Level*
>(mLevel); }
165 ::ll::TypedStorage<8, 24, ::EntityContext> mEntityContext;
166 ::ll::TypedStorage<8, 72, ::VariantParameterList> mInitParams;
167 ::ll::TypedStorage<8, 32, ::std::string> mCustomInitEventName;
168 ::ll::TypedStorage<1, 1, ::ActorInitializationMethod> mInitMethod;
169 ::ll::TypedStorage<1, 1, bool> mForceInitMethodToSpawnOnReload;
170 ::ll::TypedStorage<1, 1, bool> mAdded;
171 ::ll::TypedStorage<8, 8, ::ActorDefinitionGroup*> mDefinitions;
172 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ActorDefinitionDescriptor>> mCurrentDescription;
173 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::RopeSystem>> mLeashRopeSystem;
174 ::ll::TypedStorage<8, 32, ::std::string> mAlias;
175 ::ll::TypedStorage<4, 68, ::std::optional<::glm::mat4x4>> mPreviousRenderTransform;
176 ::ll::TypedStorage<4, 4, int> mLastHurtByPlayerTime;
177 ::ll::TypedStorage<8, 16, ::std::map<::HashedString, ::std::vector<::std::vector<::glm::mat4x4>>>>
178 mPreviousBoneMatrices;
179 ::ll::TypedStorage<8, 48, ::SynchedActorDataEntityWrapper> mEntityData;
180 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SpatialActorNetworkData>> mNetworkData;
181 ::ll::TypedStorage<4, 12, ::Vec3> mSentDelta;
182 ::ll::TypedStorage<4, 4, float> mScale;
183 ::ll::TypedStorage<4, 4, float> mScalePrev;
184 ::ll::TypedStorage<1, 1, bool> mIgnoreLighting;
185 ::ll::TypedStorage<1, 1, bool> mFilterLighting;
186 ::ll::TypedStorage<4, 4, float> mStepSoundVolume;
187 ::ll::TypedStorage<4, 4, float> mStepSoundPitch;
188 ::ll::TypedStorage<8, 8, ::AABB*> mLastHitBB;
189 ::ll::TypedStorage<8, 8, uint64> mNameTagHash;
190 ::ll::TypedStorage<4, 4, float> mShadowOffset;
191 ::ll::TypedStorage<4, 4, float> mPushthrough;
192 ::ll::TypedStorage<4, 4, int> mTickCount;
193 ::ll::TypedStorage<4, 4, int> mInvulnerableTime;
194 ::ll::TypedStorage<4, 4, int> mLastHealth;
195 ::ll::TypedStorage<1, 1, bool> mHurtMarked;
196 ::ll::TypedStorage<1, 1, bool> mWasHurtLastFrame;
197 ::ll::TypedStorage<1, 1, bool> mInvulnerable;
198 ::ll::TypedStorage<4, 4, int> mFlameTexFrameIndex;
199 ::ll::TypedStorage<4, 4, float> mFlameFrameIncrementTime;
200 ::ll::TypedStorage<1, 1, bool> mAlwaysFireImmune;
201 ::ll::TypedStorage<1, 1, bool> mInheritRotationWhenRiding;
202 ::ll::TypedStorage<1, 1, bool> mForcedLoading;
203 ::ll::TypedStorage<1, 1, bool> mForceSendMotionPacket;
204 ::ll::TypedStorage<1, 1, bool> mHighlightedThisFrame;
205 ::ll::TypedStorage<1, 1, bool> mInitialized;
206 ::ll::TypedStorage<1, 1, bool> mProcessedOnChunkDiscard;
207 ::ll::TypedStorage<4, 4, float> mSoundVolume;
208 ::ll::TypedStorage<4, 4, int> mShakeTime;
209 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mLegacyUniqueID;
210 ::ll::TypedStorage<8, 16, ::WeakRef<::Dimension>> mDimension;
211 ::ll::TypedStorage<8, 8, ::ILevel*> mLevel;
212 ::ll::TypedStorage<8, 48, ::HashedString> mActorRendererId;
213 ::ll::TypedStorage<4, 4, ::ActorCategory> mCategories;
214 ::ll::TypedStorage<8, 32, ::BuiltInActorComponents> mBuiltInComponents;
215 ::ll::TypedStorage<8, 48, ::HashedString> mActorRendererIdThatAnimationComponentWasInitializedWith;
216 ::ll::TypedStorage<1, 1, bool> mChanged;
217 ::ll::TypedStorage<1, 1, bool> mRemoved;
218 ::ll::TypedStorage<1, 1, bool> mMovedToLimbo;
219 ::ll::TypedStorage<1, 1, bool> mMovedToUnloadedChunk;
220 ::ll::TypedStorage<1, 1, bool> mBlocksBuilding;
221 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::AnimationComponent>> mAnimationComponent;
222 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::AnimationComponent>> mUIAnimationComponent;
223 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mTargetId;
224 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mInLovePartner;
225 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CompoundTag>> mPersistingTradeOffers;
226 ::ll::TypedStorage<4, 4, int> mPersistingTradeRiches;
227 ::ll::TypedStorage<1, 1, bool> mPersistingTrade;
228 ::ll::TypedStorage<1, 1, bool> mEffectsDirty;
229 ::ll::TypedStorage<1, 1, bool> mLootDropped;
230 ::ll::TypedStorage<1, 1, bool> mLoadedFromNBTThisFrame;
231 ::ll::TypedStorage<4, 16, ::mce::Color> mHurtColor;
232 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ActorDefinitionDiffList>> mDefinitionList;
233 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CompoundTag>> mLoadedActorPropertyTag;
234 ::ll::TypedStorage<8, 16, ::ActorDefinitionPtr> mActorDefinitionPtr;
235 ::ll::TypedStorage<8, 32, ::std::string> mFilteredNameTag;
236 ::ll::TypedStorage<8, 24, ::ActorTerrainInterlockData> mTerrainInterlockData;
237 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mLastHurtMobId;
238 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mLastHurtByMobId;
239 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mLastHurtByPlayerId;
240 ::ll::TypedStorage<8, 8, uint64> mLastHurtTimestamp;
241 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::ActorDamageCause> mLastHurtCause;
242 ::ll::TypedStorage<4, 4, float> mLastHurt;
243 ::ll::TypedStorage<4, 4, int> mLastHurtMobTimestamp;
244 ::ll::TypedStorage<4, 4, int> mLastHurtByMobTime;
245 ::ll::TypedStorage<4, 4, int> mLastHurtByMobTimestamp;
246 ::ll::TypedStorage<1, 1, bool> mIsPredictableProjectile;
247 ::ll::TypedStorage<1, 1, bool> mIsRenderingInUI;
248 ::ll::TypedStorage<1, 1, bool> mUpdateEffects;
249 ::ll::TypedStorage<1, 1, bool> mCanPickupItems;
250 ::ll::TypedStorage<1, 1, bool> mHasSetCanPickupItems;
251 ::ll::TypedStorage<1, 1, bool> mChainedDamageEffects;
252 ::ll::TypedStorage<4, 4, int> mAffectedByWaterBottleTicksToEffect;
253 ::ll::TypedStorage<4, 4, ::SpawnRuleEnum> mSpawnRulesEnum;
254 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ActionQueue>> mActionQueue;
255 ::ll::TypedStorage<8, 56, ::MolangVariableMap> mMolangVariables;
256 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mFishingHookID;
270 virtual void outOfWorld();
276 virtual void reloadHardcodedClient(::ActorInitializationMethod);
285 virtual void _serverInitItemStackIds();
288 virtual void _doInitialMove();
294 virtual void resetUserPos(::ActorResetRule);
297 virtual ::ActorType getOwnerEntityType();
300 virtual void remove();
303 virtual ::Vec3 getFiringPos()
const;
306 virtual float getInterpolatedBodyRot(
float a = 0.0f)
const;
309 virtual float getInterpolatedHeadRot(
float = 0.0f)
const;
312 virtual float getInterpolatedBodyYaw(
float = 0.0f)
const;
315 virtual float getYawSpeedInDegreesPerSecond()
const;
318 virtual ::Vec3 getInterpolatedRidingOffset(
float,
int const)
const;
321 virtual bool isFireImmune()
const;
327 virtual bool canDisableShield();
330 virtual void teleportTo(
::Vec3 const& pos,
bool shouldStopRiding,
int,
int,
bool keepVelocity);
333 virtual void lerpMotion(
::Vec3 const& delta);
336 virtual ::std::unique_ptr<::AddActorBasePacket> tryCreateAddActorPacket();
339 virtual void normalTick();
342 virtual void baseTick();
345 virtual void passengerTick();
348 virtual bool startRiding(
::Actor& vehicle,
bool forceRiding);
351 virtual void addPassenger(
::Actor& passenger);
354 virtual ::std::string getExitTip(::std::string
const& kind, ::InputMode mode, ::NewInteractionModel scheme)
const;
357 virtual ::std::string getEntityLocNameString()
const;
360 virtual bool isInvisible()
const;
363 virtual bool canShowNameTag()
const;
366 virtual ::std::string getFormattedNameTag()
const;
369 virtual ::mce::Color getNameTagTextColor()
const;
372 virtual float getShadowRadius()
const;
375 virtual ::Vec3 getHeadLookVector(
float a = 0.0f)
const;
378 virtual bool canInteractWithOtherEntitiesInGame()
const;
384 virtual void playerTouch(
::Player&);
387 virtual bool isImmobile()
const;
390 virtual bool isSilentObserver()
const;
393 virtual bool isSleeping()
const;
396 virtual void setSleeping(
bool);
399 virtual void setSneaking(
bool value);
402 virtual bool isBlocking()
const;
408 virtual bool isAlive()
const;
411 virtual bool isOnFire()
const;
414 virtual bool isSurfaceMob()
const;
417 virtual bool isTargetable()
const;
420 virtual void setTarget(
::Actor* entity);
423 virtual bool isValidTarget(
::Actor*)
const;
426 virtual bool attack(
::Actor&, ::SharedTypes::Legacy::ActorDamageCause
const&);
429 virtual void performRangedAttack(
::Actor& target,
float);
435 virtual void setSitting(
bool value);
438 virtual void onTame();
441 virtual void onFailedTame();
444 virtual void setStanding(
bool value);
447 virtual bool canPowerJump()
const;
450 virtual bool isEnchanted()
const;
453 virtual void playAmbientSound();
456 virtual ::SharedTypes::Legacy::LevelSoundEvent getAmbientSound()
const;
462 virtual ::SharedTypes::Legacy::ActorDamageCause getBlockDamageCause(
::Block const&)
const;
465 virtual bool doFireHurt(
int amount);
468 virtual void onLightningHit();
471 virtual void feed(
int itemId);
474 virtual void handleEntityEvent(::ActorEvent eventId,
int data);
477 virtual ::HashedString
const& getActorRendererId()
const;
480 virtual void despawn();
483 virtual void setArmor(::SharedTypes::Legacy::ArmorSlot slot,
::ItemStack const& item);
486 virtual ::ArmorMaterialType getArmorMaterialTypeInSlot(::SharedTypes::Legacy::ArmorSlot)
const;
489 virtual int getArmorTextureIndexInSlot(::SharedTypes::Legacy::ArmorSlot)
const;
492 virtual float getArmorColorInSlot(::SharedTypes::Legacy::ArmorSlot,
int)
const;
495 virtual void setEquippedSlot(::SharedTypes::Legacy::EquipmentSlot,
::ItemStack const&);
498 virtual void setCarriedItem(
::ItemStack const& item);
501 virtual ::ItemStack
const& getCarriedItem()
const;
504 virtual void setOffhandSlot(
::ItemStack const& item);
507 virtual ::ItemStack
const& getEquippedTotem()
const;
510 virtual bool consumeTotem();
516 virtual ::HashedString
const& queryEntityRenderer()
const;
519 virtual ::ActorUniqueID getSourceUniqueID()
const;
522 virtual bool canFreeze()
const;
525 virtual ::AABB getLiquidAABB(::MaterialType
const)
const;
528 virtual void handleInsidePortal(
::BlockPos const& portalPos);
531 virtual bool canChangeDimensionsUsingPortal()
const;
540 virtual ::ActorUniqueID getControllingPlayer()
const;
546 virtual void onSynchedDataUpdate(
int dataId);
549 virtual bool canAddPassenger(
::Actor& passenger)
const;
552 virtual bool canPickupItem(
::ItemStack const&)
const;
555 virtual bool canBePulledIntoVehicle()
const;
558 virtual bool inCaravan()
const;
561 virtual void sendMotionPacketIfNeeded();
564 virtual bool canSynchronizeNewEntity()
const;
567 virtual void startSwimming();
570 virtual void stopSwimming();
573 virtual void buildDebugInfo(::std::string&)
const;
576 virtual ::CommandPermissionLevel getCommandPermissionLevel()
const;
579 virtual int getDeathTime()
const;
582 virtual bool canBeAffected(uint
id)
const;
591 virtual bool canObstructSpawningAndBlockPlacement()
const;
594 virtual ::AnimationComponent& getAnimationComponent();
597 virtual void openContainerComponent(
::Player& player);
600 virtual void swing();
603 virtual void useItem(
::ItemStackBase& item, ::ItemUseMethod itemUseMethod,
bool consumeItem);
606 virtual void getDebugText(::std::vector<::std::string>& outputInfo);
609 virtual float getMapDecorationRotation()
const;
612 virtual float getPassengerYRotation(
::Actor const& passenger)
const;
618 virtual bool drop(
::ItemStack const& item,
bool const randomly);
624 virtual bool canDestroyBlock(
::Block const&)
const;
627 virtual void setAuxValue(
int);
630 virtual void renderDebugServerState(
::Options const&);
639 virtual bool shouldDropDeathLoot()
const;
642 virtual void applySnapshot(
651 virtual ::std::optional<::BlockPos> getLastDeathPos()
const;
654 virtual ::std::optional<::DimensionType> getLastDeathDimension()
const;
657 virtual bool hasDiedBefore()
const;
660 virtual void doEnterWaterSplashEffect();
663 virtual void doExitWaterSplashEffect();
666 virtual void doWaterSplashEffect();
669 virtual bool _shouldProvideFeedbackOnHandContainerItemSet(::HandSlot handSlot,
::ItemStack const& item)
const;
672 virtual bool _shouldProvideFeedbackOnArmorSet(::SharedTypes::Legacy::ArmorSlot slot,
::ItemStack const& item)
const;
681 virtual void addAdditionalSaveData(
::CompoundTag& tag)
const;
695 MCAPI ::BuiltInActorComponents _addActorBuiltInComponents();
697 MCAPI
void _addActorNonBuiltInComponents();
699 MCAPI ::ItemActor
const* _drop(
::ItemStack const& item,
bool randomly);
701 MCAPI ::std::vector<::MobEffectInstance>& _getAllEffectsNonConst();
703 MCAPI ::AnimationComponent& _getAnimationComponent(
704 ::std::shared_ptr<::AnimationComponent>& animationComponent,
705 ::AnimationComponentGroupType group
708 MCAPI
void _initAliasProperties();
710 MCAPI
void _initializeLeashRopeSystem(
::Actor* holder);
712 MCAPI
bool _isHeadInWater()
const;
714 MCAPI
bool _isItemStackNetManagerEnabled()
const;
716 MCAPI
void _sendDirtyActorData();
720 MCAPI
void _setActorTypeId(::ActorType type);
724 MCAPI
void _setHandContainerItem(
::ItemStack const& item, ::HandSlot handSlot);
726 MCAPI
void _setHeightOffset(
float heightOffset);
728 MCAPI
void _setPosPrev(
::Vec3 const& posPrev);
730 MCAPI
void _setupServerAnimationComponent();
732 MCAPI
void _syncTickCountIfAnimationComponentShared();
736 MCAPI
void _tryPlantWitherRose();
738 MCAPI
void _updateComposition(
bool reload);
742 MCAPI
bool addTag(::std::string
const& tag);
744 MCAPI
void buildDebugGroupInfo(::std::string& out)
const;
746 MCAPI ::Vec3 buildForward()
const;
748 MCAPI
void burn(
int dmg,
bool bInFire);
750 MCAPI
float calculateAttackDamage(
::Actor& entity);
752 MCAPI
bool canAttack(
::Actor const& entity)
const;
754 MCAPI
bool canBeginOrContinueClimbingLadder()
const;
756 MCAPI
bool canCurrentlySwim()
const;
758 MCAPI
bool canFly()
const;
760 MCAPI
bool canMate(
::Actor const& partner)
const;
762 MCAPI
bool canReceiveMobEffectsFromGameplay()
const;
764 MCAPI
bool canSee(
::Actor const& target, ::ShapeType obstructionType)
const;
766 MCAPI
bool canSee(
::Vec3 const& targetPos, ::ShapeType obstructionType)
const;
768 MCAPI
bool canSeeDaylight()
const;
770 MCAPI
void checkFallDamage(
float ya,
bool onGround,
bool recheckLiquid);
772 MCAPI
void chorusFruitTeleport(
::Vec3 const& range);
774 MCAPI
bool closerThan(
::Actor const& e,
float distance)
const;
776 MCAPI
bool closerThan(
::Actor const& e,
float distanceXZ,
float distanceY)
const;
778 MCAPI
void consumeItem(
::ItemActor& itemActor,
int count);
780 MCAPI ::UpdateEquipPacket createUpdateEquipPacket(
int containerID);
782 MCAPI
void deregisterTagsFromLevelCache();
784 MCAPI
float distanceTo(
::Actor const& e)
const;
786 MCAPI
float distanceTo(
::Vec3 const& pos)
const;
788 MCAPI
float distanceToSqr(
::Actor const& e)
const;
790 MCAPI
float distanceToSqr(
::Vec3 const& pos)
const;
796 MCAPI
void equip(::std::string
const& lootTableFilePath);
798 MCAPI
void equipFromEquipmentDefinition();
800 MCAPI
float evaluateSeatRotation(
::RideableComponent const& rideable,
bool useVehicleRenderParams);
802 MCAPI
void exitVehicle(
bool exitFromPassenger,
bool actorIsBeingDestroyed,
bool wasEjectedByActivatorRail);
804 MCAPI ::std::vector<::DistanceSortedActor> fetchNearbyActorsSorted(
::Vec3 const& distance, ::ActorType actorTypeId);
806 MCAPI ::Vec2
const& getAABBDim()
const;
808 MCAPI ::ActorDefinitionIdentifier
const& getActorIdentifier()
const;
810 MCAPI ::ItemStack
const& getArmor(::SharedTypes::Legacy::ArmorSlot slot)
const;
812 MCAPI ::Vec3 getAttachPos(::SharedTypes::Legacy::ActorLocation location)
const;
814 MCAPI ::Vec3 getAttachPos(::SharedTypes::Legacy::ActorLocation location,
float alpha)
const;
816 MCAPI ::AttributeInstance
const& getAttribute(
::Attribute const& attribute)
const;
818 MCAPI ::gsl::not_null<::BaseAttributeMap const*> getAttributes()
const;
820 MCAPI ::gsl::not_null<::BaseAttributeMap*> getAttributes();
822 MCAPI ::BlockPos getBlockPosCurrentlyStandingOn(
::Actor const* actor)
const;
824 MCAPI
float getBrightness(
float a = 0.0f)
const;
826 MCAPI ::ItemStack
const& getCarriedItemInSlotPreferredBy(
::ItemStack const& item)
const;
828 MCAPI
int getChestSlots()
const;
830 MCAPI
float getCurrentSwimAmount()
const;
832 MCAPI
bool getDamageNearbyMobs()
const;
834 MCFOLD ::Dimension& getDimension()
const;
836 MCFOLD ::BlockSource& getDimensionBlockSource()
const;
838 MCFOLD ::BlockSource
const& getDimensionBlockSourceConst()
const;
840 MCFOLD ::Dimension
const& getDimensionConst()
const;
842 MCAPI ::DimensionType getDimensionId()
const;
844 MCAPI ::MobEffectInstance
const* getEffect(
::MobEffect const& effect)
const;
846 MCAPI ::StackRefResult<::EntityRegistry> getEntityRegistry();
848 MCAPI ::ActorType getEntityTypeId()
const;
850 MCAPI
int getEquipSlots()
const;
852 MCAPI ::SharedTypes::Legacy::EquipmentSlot getEquipmentSlotForItem(
::ItemStack const& item)
const;
854 MCAPI ::ItemStack
const& getEquippedSlot(::SharedTypes::Legacy::EquipmentSlot slot)
const;
856 MCAPI ::Vec3 getEyePos()
const;
858 MCAPI
float getFallDistance()
const;
860 MCAPI ::Actor* getFirstPassenger()
const;
862 MCAPI ::Vec3 getInterpolatedPosition(
float a = 0.0f)
const;
864 MCAPI ::Vec3 getInterpolatedRidingPosition(
float a = 0.0f)
const;
866 MCAPI ::Vec2 getInterpolatedRotation(
float a = 0.0f)
const;
868 MCAPI ::Mob* getLastHurtByMob();
870 MCAPI ::Player* getLastHurtByPlayer();
872 MCAPI ::ActorUniqueID getLeashHolder()
const;
874 MCAPI ::std::vector<::ActorLink> getLinks()
const;
876 MCAPI ::LootTable* getLootTable();
878 MCAPI
int getMarkVariant()
const;
880 MCAPI
int getMaxHealth()
const;
882 MCAPI ::MutableAttributeWithContext getMutableAttribute(
::Attribute const& attribute);
884 MCAPI ::std::string
const& getNameTag()
const;
886 MCAPI ::ItemStack
const& getOffhandSlot()
const;
888 MCAPI
int getOnDeathExperience();
890 MCAPI ::DynamicProperties& getOrAddDynamicProperties();
892 MCAPI ::ActorUniqueID
const& getOrCreateUniqueID()
const;
894 MCAPI ::Mob* getOwner()
const;
896 MCFOLD ::ActorUniqueID
const getOwnerId()
const;
898 MCAPI
int getPassengerIndex(
::Actor const& passenger)
const;
900 MCAPI ::std::unique_ptr<::CompoundTag> getPersistingTradeOffers();
902 MCAPI ::Player* getPlayerOwner()
const;
904 MCAPI ::Vec3
const& getPosDelta()
const;
906 MCAPI ::Vec3
const& getPosition()
const;
908 MCAPI ::Random& getRandom()
const;
910 MCAPI ::Bedrock::Safety::RedactableString getRedactableNameTag()
const;
912 MCAPI
float getRidingHeight()
const;
914 MCAPI ::Vec2
const& getRotation()
const;
916 MCAPI ::ActorRuntimeID getRuntimeID()
const;
918 MCAPI
bool getStatusFlag(::ActorFlags flag)
const;
920 MCAPI
int getStrength()
const;
922 MCAPI
int getStructuralIntegrity()
const;
924 MCAPI
float getSwimAmount(
float a = 0.0f)
const;
926 MCAPI ::Actor* getTarget()
const;
928 MCAPI ::MerchantRecipeList* getTradeOffers();
930 MCAPI ::Player* getTradingPlayer()
const;
932 MCFOLD
int getVariant()
const;
934 MCAPI ::Actor* getVehicle()
const;
936 MCAPI ::Actor* getVehicleRoot()
const;
938 MCFOLD ::Vec3 getViewVector(
float a = 0.0f)
const;
940 MCAPI ::WeakRef<::EntityContext>
const getWeakEntity()
const;
942 MCAPI
void handleFallDamage(
float fallDistance,
float multiplier,
::ActorDamageSource source);
946 MCAPI
bool hasCategory(::ActorCategory categories)
const;
948 MCAPI
bool hasDimension()
const;
950 MCAPI
bool hasEffect(
::MobEffect const& effect)
const;
954 MCAPI
bool hasPlayerPassenger()
const;
956 MCAPI
bool hasRuntimeID()
const;
958 MCAPI
bool hasSaddle()
const;
960 MCAPI
bool hasTag(::std::string
const& tag)
const;
962 MCAPI
bool hasTags()
const;
964 MCAPI
bool hasType(::ActorType types)
const;
966 MCAPI
bool hasUniqueID()
const;
968 MCAPI
void heal(
int heal);
972 MCAPI
bool inDownwardFlowingLiquid()
const;
974 MCAPI
void initActorProperties();
978 MCAPI
bool isAdventure()
const;
980 MCAPI
bool isAttackableGamemode()
const;
982 MCAPI
bool isAutonomous()
const;
984 MCAPI
bool isBaby()
const;
986 MCAPI
bool isChested()
const;
988 MCAPI
bool isClientSide()
const;
990 MCAPI
bool isCreative()
const;
992 MCAPI
bool isDancing()
const;
994 MCAPI
bool isDead()
const;
996 MCAPI
bool isDoorOpener()
const;
998 MCAPI
bool isGlobal()
const;
1000 MCAPI
bool isInClouds()
const;
1002 MCAPI
bool isInLava()
const;
1004 MCAPI
bool isInLove()
const;
1006 MCAPI
bool isInPrecipitation()
const;
1008 MCAPI
bool isInRain()
const;
1010 MCAPI
bool isInSnow()
const;
1012 MCAPI
bool isInThunderstorm()
const;
1014 MCAPI
bool isInWater()
const;
1016 MCAPI
bool isInWaterOrRain()
const;
1018 MCAPI
bool isInWorld()
const;
1020 MCAPI
bool isJumping()
const;
1022 MCAPI
bool isLeashed()
const;
1024 MCFOLD
bool isLocalPlayer()
const;
1026 MCAPI
bool isOverWater()
const;
1028 MCAPI
bool isPassenger(
::Actor const& passenger)
const;
1030 MCAPI
bool isPersistent()
const;
1032 MCFOLD
bool isPlayer()
const;
1034 MCAPI
bool isRemotePlayer()
const;
1036 MCAPI
bool isRiding()
const;
1038 MCAPI
bool isRiding(
::Actor* targetVehicle)
const;
1040 MCAPI
bool isSilent()
const;
1042 MCAPI
bool isSitting()
const;
1044 MCAPI
bool isSneaking()
const;
1046 MCAPI
bool isSpectator()
const;
1048 MCAPI
bool isSurvival()
const;
1050 MCAPI
bool isSwimming()
const;
1052 MCAPI
bool isTame()
const;
1054 MCAPI
bool isTouchingDamageBlock()
const;
1056 MCAPI
bool isTrading()
const;
1058 MCAPI
bool isType(::ActorType type)
const;
1060 MCAPI
bool isUnderLiquid(::MaterialType type)
const;
1062 MCAPI
bool isWearingLeatherArmor()
const;
1064 MCAPI
bool isWorldBuilder()
const;
1066 MCAPI
void killed(
::Actor& entity);
1073 MCAPI
void move(
::Vec3 const& posDelta);
1075 MCAPI
void moveTo(
::Vec3 const& pos,
::Vec2 const& rot);
1077 MCAPI
bool onClimbableBlock()
const;
1083 MCAPI
void pickUpItem(
::ItemActor& itemActor,
int count);
1085 MCAPI
void playSound(::SharedTypes::Legacy::LevelSoundEvent type,
::Vec3 const& pos,
int data);
1087 MCAPI
void playSound(
1089 ::SharedTypes::Legacy::LevelSoundEvent type,
1095 playSynchronizedSound(::SharedTypes::Legacy::LevelSoundEvent type,
::Vec3 const& pos,
int data,
bool isGlobal);
1097 MCAPI
void positionPassenger(
::Actor& passenger);
1101 MCAPI
void postSplashGameEvent();
1103 MCAPI
void pushBackActionEventToActionQueue(
::ActionEvent actionEvent);
1105 MCAPI
void pushOutOfBlocks(
::Vec3 const& vec);
1107 MCAPI
void queueBBUpdateFromDefinition();
1109 MCAPI
void refreshComponents();
1111 MCAPI
void reload();
1113 MCAPI
void removeAllEffects();
1115 MCAPI
void removeAllPassengers(
bool beingDestroyed);
1117 MCAPI
void removeEffect(
int effectId);
1119 MCAPI
bool removeTag(::std::string
const& tag);
1125 MCAPI ::std::unique_ptr<::ListTag> saveLinks()
const;
1127 MCAPI
void savePersistingTrade(::std::unique_ptr<::CompoundTag> offersTag,
int riches);
1131 MCAPI
void sendActorDefinitionEventTriggered(::std::string
const& event);
1133 MCAPI
void serializationSetHealth(
int newHealth);
1137 MCAPI
void setAutonomous(
bool g);
1141 MCAPI
void setBlockTarget(
::BlockPos const& target);
1145 MCAPI
void setInvisible(
bool value);
1147 MCAPI
void setJumping(
bool jump);
1149 MCAPI
void setLastHitBB(
::Vec3 const& pos,
::Vec3 const& radius);
1151 MCAPI
void setLastHurtByMob(
::Mob* mob);
1153 MCAPI
void setLastHurtByPlayer(
::Player* player);
1155 MCAPI
void setLastHurtMob(
::Actor* target);
1159 MCAPI
void setLimitedLifetimeTicks(
int lifetimeTicks);
1161 MCAPI
void setMarkVariant(
int value);
1163 MCAPI
void setMovementSoundDistanceOffset(
float movementSoundDistanceOffset);
1165 MCAPI
void setNameTag(::std::string
const& name);
1167 MCAPI
void setPersistent();
1169 MCAPI
void setPreviousPosRot();
1173 MCAPI
void setRotationPrev(
::Vec2 const& rotation);
1175 MCAPI
void setRotationWrapped(
::Vec2 const& rot);
1177 MCAPI
void setSkinID(
int value);
1179 MCAPI
void setStatusFlag(::ActorFlags flag,
bool value);
1181 MCAPI
void setStrength(
int strength);
1183 MCAPI
void setStrengthMax(
int strength);
1185 MCFOLD
void setVariant(
int value);
1189 MCAPI
bool shouldTick()
const;
1191 MCAPI ::ItemActor* spawnAtLocation(
::ItemStack const& item,
float yOffs);
1193 MCAPI
void spawnEatParticles(
::ItemStack const& itemInUse,
int count);
1195 MCAPI
void spawnTrailBubbles();
1198 stopRiding(
bool exitFromPassenger,
bool actorIsBeingDestroyed,
bool switchingVehicles,
bool isBeingTeleported);
1200 MCAPI
void synchronousSetSize(
float w,
float h);
1202 MCAPI
void teleportPassengersTo(
::Vec3 const& pos,
int cause,
int entityType);
1206 MCAPI
void tickBlockDamage();
1208 MCAPI
void tickLeash();
1210 MCAPI
void triggerActorRemovedEvent();
1212 MCAPI ::std::optional<int> tryGetEquippableSlotForItem(
::ItemDescriptor item)
const;
1214 MCAPI
bool tryTeleportTo(
::Vec3 const& pos,
bool landOnBlock,
bool avoidLiquid,
int cause,
int entityType);
1216 MCAPI
void updateDescription();
1218 MCAPI
void updateInsideBlock();
1220 MCAPI
void updateInvisibilityStatus();
1224 MCAPI
void updateTickingData();
1226 MCAPI
void updateWaterState();
1228 MCAPI
void wobble();
1234 MCAPI
static void _moveRelative(
::Vec3& posDelta,
float yRotDegrees,
float xa,
float ya,
float za,
float speed);
1236 MCAPI static ::BlockPos getBlockPosCurrentlyStandingOn(
1243 MCAPI static ::MobEffectInstance
const*
1244 getEffect(::std::vector<::MobEffectInstance>
const& effects,
::MobEffect const& effect);
1246 MCAPI static ::Vec2 getInterpolatedRotation(
::Vec2 const& prevRot,
::Vec2 const& rot,
float a);
1248 MCAPI static ::AABB getLiquidAABB(
::AABB const& aabb, ::MaterialType liquidType);
1250 MCAPI static ::Vec3 getViewVector(
::Vec2 const& prevRot,
::Vec2 const& rot,
float a);
1254 MCAPI static ::Actor*
1281 MCAPI
void $outOfWorld();
1285 MCFOLD
void $reloadHardcodedClient(::ActorInitializationMethod);
1291 MCAPI
void $_serverInitItemStackIds();
1293 MCAPI
void $_doInitialMove();
1295 MCFOLD
void $resetUserPos(::ActorResetRule);
1297 MCAPI ::ActorType $getOwnerEntityType();
1299 MCAPI
void $remove();
1301 MCAPI ::Vec3 $getFiringPos()
const;
1303 MCAPI
float $getInterpolatedBodyRot(
float a)
const;
1305 MCFOLD
float $getInterpolatedHeadRot(
float)
const;
1307 MCFOLD
float $getInterpolatedBodyYaw(
float)
const;
1309 MCAPI
float $getYawSpeedInDegreesPerSecond()
const;
1311 MCFOLD ::Vec3 $getInterpolatedRidingOffset(
float,
int const)
const;
1313 MCAPI
bool $isFireImmune()
const;
1317 MCAPI
bool $canDisableShield();
1319 MCAPI
void $teleportTo(
::Vec3 const& pos,
bool shouldStopRiding,
int,
int,
bool keepVelocity);
1321 MCAPI
void $lerpMotion(
::Vec3 const& delta);
1323 MCAPI ::std::unique_ptr<::AddActorBasePacket> $tryCreateAddActorPacket();
1325 MCAPI
void $normalTick();
1327 MCAPI
void $baseTick();
1329 MCAPI
void $passengerTick();
1331 MCAPI
bool $startRiding(
::Actor& vehicle,
bool forceRiding);
1333 MCAPI
void $addPassenger(
::Actor& passenger);
1335 MCAPI ::std::string $getExitTip(::std::string
const& kind, ::InputMode mode, ::NewInteractionModel scheme)
const;
1337 MCAPI ::std::string $getEntityLocNameString()
const;
1339 MCAPI
bool $isInvisible()
const;
1341 MCAPI
bool $canShowNameTag()
const;
1343 MCAPI ::std::string $getFormattedNameTag()
const;
1345 MCFOLD ::mce::Color $getNameTagTextColor()
const;
1347 MCAPI
float $getShadowRadius()
const;
1349 MCFOLD ::Vec3 $getHeadLookVector(
float a)
const;
1351 MCFOLD
bool $canInteractWithOtherEntitiesInGame()
const;
1355 MCFOLD
void $playerTouch(
::Player&);
1357 MCFOLD
bool $isImmobile()
const;
1359 MCAPI
bool $isSilentObserver()
const;
1361 MCFOLD
bool $isSleeping()
const;
1363 MCFOLD
void $setSleeping(
bool);
1365 MCAPI
void $setSneaking(
bool value);
1367 MCFOLD
bool $isBlocking()
const;
1371 MCFOLD
bool $isAlive()
const;
1373 MCFOLD
bool $isOnFire()
const;
1375 MCFOLD
bool $isSurfaceMob()
const;
1377 MCFOLD
bool $isTargetable()
const;
1379 MCAPI
void $setTarget(
::Actor* entity);
1381 MCFOLD
bool $isValidTarget(
::Actor*)
const;
1383 MCAPI
void $performRangedAttack(
::Actor& target,
float);
1387 MCFOLD
void $setSitting(
bool value);
1389 MCFOLD
void $onTame();
1391 MCFOLD
void $onFailedTame();
1393 MCAPI
void $setStanding(
bool value);
1395 MCAPI
bool $canPowerJump()
const;
1397 MCAPI
bool $isEnchanted()
const;
1399 MCAPI
void $playAmbientSound();
1401 MCAPI ::SharedTypes::Legacy::LevelSoundEvent $getAmbientSound()
const;
1405 MCAPI
bool $doFireHurt(
int amount);
1407 MCAPI
void $onLightningHit();
1409 MCAPI
void $feed(
int itemId);
1411 MCAPI
void $handleEntityEvent(::ActorEvent eventId,
int data);
1413 MCFOLD ::HashedString
const& $getActorRendererId()
const;
1415 MCAPI
void $despawn();
1417 MCAPI
void $setArmor(::SharedTypes::Legacy::ArmorSlot slot,
::ItemStack const& item);
1419 MCFOLD ::ArmorMaterialType $getArmorMaterialTypeInSlot(::SharedTypes::Legacy::ArmorSlot)
const;
1421 MCFOLD
int $getArmorTextureIndexInSlot(::SharedTypes::Legacy::ArmorSlot)
const;
1423 MCFOLD
float $getArmorColorInSlot(::SharedTypes::Legacy::ArmorSlot,
int)
const;
1425 MCFOLD
void $setEquippedSlot(::SharedTypes::Legacy::EquipmentSlot,
::ItemStack const&);
1427 MCAPI
void $setCarriedItem(
::ItemStack const& item);
1429 MCAPI ::ItemStack
const& $getCarriedItem()
const;
1431 MCAPI
void $setOffhandSlot(
::ItemStack const& item);
1433 MCAPI ::ItemStack
const& $getEquippedTotem()
const;
1435 MCAPI
bool $consumeTotem();
1439 MCFOLD ::HashedString
const& $queryEntityRenderer()
const;
1441 MCFOLD ::ActorUniqueID $getSourceUniqueID()
const;
1443 MCFOLD
bool $canFreeze()
const;
1445 MCAPI
void $handleInsidePortal(
::BlockPos const& portalPos);
1447 MCAPI
bool $canChangeDimensionsUsingPortal()
const;
1453 MCFOLD ::ActorUniqueID $getControllingPlayer()
const;
1457 MCAPI
void $onSynchedDataUpdate(
int dataId);
1459 MCAPI
bool $canAddPassenger(
::Actor& passenger)
const;
1461 MCFOLD
bool $canPickupItem(
::ItemStack const&)
const;
1463 MCFOLD
bool $canBePulledIntoVehicle()
const;
1465 MCFOLD
bool $inCaravan()
const;
1467 MCAPI
void $sendMotionPacketIfNeeded();
1469 MCFOLD
bool $canSynchronizeNewEntity()
const;
1471 MCAPI
void $startSwimming();
1473 MCAPI
void $stopSwimming();
1475 MCFOLD
void $buildDebugInfo(::std::string&)
const;
1477 MCFOLD
int $getDeathTime()
const;
1479 MCAPI
bool $canBeAffected(uint
id)
const;
1485 MCAPI
bool $canObstructSpawningAndBlockPlacement()
const;
1487 MCAPI ::AnimationComponent& $getAnimationComponent();
1489 MCAPI
void $openContainerComponent(
::Player& player);
1491 MCFOLD
void $swing();
1493 MCAPI
void $useItem(
::ItemStackBase& item, ::ItemUseMethod itemUseMethod,
bool consumeItem);
1495 MCAPI
void $getDebugText(::std::vector<::std::string>& outputInfo);
1497 MCAPI
float $getMapDecorationRotation()
const;
1499 MCAPI
float $getPassengerYRotation(
::Actor const& passenger)
const;
1503 MCAPI
bool $drop(
::ItemStack const& item,
bool const randomly);
1507 MCFOLD
bool $canDestroyBlock(
::Block const&)
const;
1509 MCFOLD
void $setAuxValue(
int);
1511 MCFOLD
void $renderDebugServerState(
::Options const&);
1517 MCAPI
bool $shouldDropDeathLoot()
const;
1519 MCAPI
void $applySnapshot(
1524 MCFOLD
void $onPush(
::Actor&);
1526 MCFOLD ::std::optional<::BlockPos> $getLastDeathPos()
const;
1528 MCFOLD ::std::optional<::DimensionType> $getLastDeathDimension()
const;
1530 MCFOLD
bool $hasDiedBefore()
const;
1532 MCFOLD
void $doEnterWaterSplashEffect();
1534 MCFOLD
void $doExitWaterSplashEffect();
1536 MCAPI
void $doWaterSplashEffect();
1538 MCAPI
bool $_shouldProvideFeedbackOnHandContainerItemSet(::HandSlot handSlot,
::ItemStack const& item)
const;
1540 MCAPI
bool $_shouldProvideFeedbackOnArmorSet(::SharedTypes::Legacy::ArmorSlot slot,
::ItemStack const& item)
const;
1546 MCAPI
void $addAdditionalSaveData(
::CompoundTag& tag)
const;