Package net.minecraft.world.entity
Class Mob
java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.entity.Entity
net.minecraft.world.entity.LivingEntity
net.minecraft.world.entity.Mob
- All Implemented Interfaces:
DataComponentGetter,SyncedDataHolder,Attackable,EquipmentUser,Leashable,Targeting,EntityAccess,UniquelyIdentifyable,Nameable,ScoreHolder,Waypoint,WaypointTransmitter,IAttachmentHolder,IEntityExtension,ILivingEntityExtension
- Direct Known Subclasses:
AmbientCreature,EnderDragon,Ghast,PathfinderMob,Phantom,Slime
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.entity.LivingEntity
LivingEntity.FallsoundsNested classes/interfaces inherited from class net.minecraft.world.entity.Entity
Entity.EntityPathElement, Entity.MoveFunction, Entity.Movement, Entity.MovementEmission, Entity.RemovalReasonNested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
AttachmentHolder.AsFieldNested classes/interfaces inherited from interface net.minecraft.world.entity.Leashable
Leashable.LeashData, Leashable.WrenchNested classes/interfaces inherited from interface net.minecraft.world.waypoints.Waypoint
Waypoint.IconNested classes/interfaces inherited from interface net.minecraft.world.waypoints.WaypointTransmitter
WaypointTransmitter.BlockConnection, WaypointTransmitter.ChunkConnection, WaypointTransmitter.Connection, WaypointTransmitter.EntityAzimuthConnection, WaypointTransmitter.EntityBlockConnection, WaypointTransmitter.EntityChunkConnection -
Field Summary
FieldsModifier and TypeFieldDescriptionintprivate final BodyRotationControlprivate booleanprivate static final EntityDataAccessor<Byte> private static final doubleprivate static final booleanprivate static final booleanprivate static final booleanprivate static final booleanprivate DropChancesprivate static final List<EquipmentSlot> final GoalSelectorprivate BlockPosprivate intprivate static final Vec3iprotected JumpControlprivate Leashable.LeashDataprotected LookControlprivate Optional<ResourceKey<LootTable>> private longstatic final floatstatic final floatstatic final floatstatic final floatprivate static final intprivate static final intprivate static final intprotected MoveControlprotected PathNavigationprivate booleanprotected static final intprotected booleanNeo: Prevent immediate spawning from conversions to capture conversion results for eventsprotected static final ResourceLocationprivate final Sensingprivate booleanprivate EntitySpawnReasonstatic final Stringstatic final Stringstatic final Stringstatic final Stringprivate LivingEntityfinal GoalSelectorstatic final intprotected intFields inherited from class net.minecraft.world.entity.LivingEntity
ARMOR_SLOT_OFFSET, attackAnim, attackStrengthTicker, autoSpinAttackDmg, autoSpinAttackItemStack, autoSpinAttackTicks, BASE_JUMP_POWER, BODY_ARMOR_OFFSET, brain, damageContainers, DATA_LIVING_ENTITY_FLAGS, dead, DEATH_DURATION, deathTime, DEFAULT_BABY_SCALE, DEFAULT_BASE_GRAVITY, elytraAnimationState, equipment, EQUIPMENT_SLOT_OFFSET, EXTRA_RENDER_CULLING_SIZE_WITH_BIG_HAT, fallFlyTicks, hurtDuration, hurtTime, INPUT_FRICTION, interpolation, invulnerableDuration, jumping, lastHurt, lastHurtByPlayer, lastHurtByPlayerMemoryTime, lerpHeadSteps, lerpYHeadRot, LIVING_ENTITY_FLAG_IS_USING, LIVING_ENTITY_FLAG_OFF_HAND, LIVING_ENTITY_FLAG_SPIN_ATTACK, MIN_MOVEMENT_DISTANCE, noActionTime, oAttackAnim, PLAYER_HURT_EXPERIENCE_TIME, PLAYER_NOT_WEARING_DISGUISE_ITEM, PLAYER_NOT_WEARING_DISGUISE_ITEM_FOR_TARGET, removeArrowTime, removeStingerTime, SADDLE_OFFSET, SLEEPING_DIMENSIONS, SWING_DURATION, swinging, swingingArm, swingTime, TAG_ATTRIBUTES, TAG_BRAIN, TAG_DEATH_TIME, TAG_EQUIPMENT, TAG_FALL_FLYING, TAG_HEALTH, TAG_HURT_BY_TIMESTAMP, TAG_HURT_TIME, TAG_SLEEPING_POS, useItem, useItemRemaining, walkAnimation, xxa, yBodyRot, yBodyRotO, yHeadRot, yHeadRotO, yya, zzaFields inherited from class net.minecraft.world.entity.Entity
BASE_SAFE_FALL_DISTANCE, BASE_TICKS_REQUIRED_TO_FREEZE, blocksBuilding, BOARDING_COOLDOWN, boardingCooldown, CONTENTS_SLOT_INDEX, DATA_POSE, DATA_SHARED_FLAGS_ID, DEFAULT_BB_HEIGHT, DEFAULT_BB_WIDTH, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_2, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_5, DELTA_AFFECTED_BY_BLOCKS_BELOW_1_0, ENTITY_COUNTER, entityData, fallDistance, firstTick, FLAG_FALL_FLYING, FLAG_GLOWING, FLAG_ONFIRE, fluidHeight, flyDist, forgeFluidTypeHeight, FREEZE_HURT_FREQUENCY, hasImpulse, horizontalCollision, hurtMarked, invulnerableTime, isInPowderSnow, mainSupportingBlockPos, MAX_ENTITY_TAG_COUNT, MAX_MOVEMENTS_HANDELED_PER_TICK, minorHorizontalCollision, moveDist, noPhysics, portalProcess, random, stringUUID, stuckSpeedMultiplier, TAG_AIR, TAG_DATA, TAG_FALL_DISTANCE, TAG_FIRE, TAG_GLOWING, TAG_ID, TAG_INVULNERABLE, TAG_MOTION, TAG_NO_GRAVITY, TAG_ON_GROUND, TAG_PASSENGERS, TAG_PORTAL_COOLDOWN, TAG_POS, TAG_ROTATION, TAG_SILENT, TAG_UUID, tickCount, TOTAL_AIR_SUPPLY, uuid, verticalCollision, verticalCollisionBelow, wasEyeInWater, wasInPowderSnow, wasTouchingWater, xo, xOld, xRotO, yo, yOld, yRotO, zo, zOldFields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
ATTACHMENTS_NBT_KEYFields inherited from interface net.minecraft.world.entity.Leashable
AXIS_SPECIFIC_ELASTICITY, ENTITY_ATTACHMENT_POINT, LEASH_ELASTIC_DIST, LEASH_TAG, LEASH_TOO_FAR_DIST, LEASHER_ATTACHMENT_POINT, MAXIMUM_ALLOWED_LEASHED_DIST, SHARED_QUAD_ATTACHMENT_POINTS, SPRING_DAMPENING, STIFFNESS, TORSIONAL_ELASTICITYFields inherited from interface net.minecraft.world.scores.ScoreHolder
WILDCARD, WILDCARD_NAMEFields inherited from interface net.minecraft.world.waypoints.Waypoint
MAX_RANGE, WAYPOINT_TRANSMIT_RANGE_HIDE_MODIFIERFields inherited from interface net.minecraft.world.waypoints.WaypointTransmitter
REALLY_FAR_DISTANCE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddAdditionalSaveData(ValueOutput pOutput) voidaiStep()voidate()voidbaseTick()booleancanAttackType(EntityType<?> pType) booleanprotected booleanbooleancanFireProjectileWeapon(ProjectileWeaponItem pProjectileWeapon) booleancanHoldItem(ItemStack pStack) booleanprotected booleancanReplaceCurrentItem(ItemStack pNewItem, ItemStack pCurrentItem, EquipmentSlot pSlot) booleancanReplaceEqualItem(ItemStack pCandidate, ItemStack pExisting) protected booleancanShearEquipment(Player pPlayer) private InteractionResultcheckAndHandleImportantInteractions(Player pPlayer, InteractionHand pHand) voidstatic booleancheckMobSpawnRules(EntityType<? extends Mob> pEntityType, LevelAccessor pLevel, EntitySpawnReason pSpawnReason, BlockPos pPos, RandomSource pRandom) booleancheckSpawnObstruction(LevelReader pLevel) booleancheckSpawnRules(LevelAccessor pLevel, EntitySpawnReason pSpawnReason) protected voidvoidprivate booleancompareArmor(ItemStack pNewItem, ItemStack pCurrentItem, EquipmentSlot pSlot) private booleancompareWeapons(ItemStack pNewItem, ItemStack pCurrentItem, EquipmentSlot pSlot) <T extends Mob>
TconvertTo(EntityType<T> pEntityType, ConversionParams pConversionParams, ConversionParams.AfterConversion<T> pAfterConversion) <T extends Mob>
TconvertTo(EntityType<T> pEntityType, ConversionParams pConversionParams, EntitySpawnReason pSpawnReason, ConversionParams.AfterConversion<T> pAfterConversion) protected BodyRotationControlprivate LootParamscreateEquipmentParams(ServerLevel pLevel) static AttributeSupplier.Builderprotected PathNavigationcreateNavigation(Level pLevel) protected voidcustomServerAiStep(ServerLevel pLevel) protected voiddefineSynchedData(SynchedEntityData.Builder pBuilder) booleandoHurtTarget(ServerLevel pLevel, Entity pSource) protected voiddropCustomDeathLoot(ServerLevel pLevel, DamageSource pDamageSource, boolean pRecentlyHit) protected voiddropFromLootTable(ServerLevel pLevel, DamageSource pDamageSource, boolean pPlayerKill) voiddropPreservedEquipment(ServerLevel pLevel) dropPreservedEquipment(ServerLevel pLevel, Predicate<ItemStack> pFilter) protected voidenchantSpawnedArmor(ServerLevelAccessor pLevel, RandomSource pRandom, EquipmentSlot pSlot, DifficultyInstance pDifficulty) private voidenchantSpawnedEquipment(ServerLevelAccessor pLevel, EquipmentSlot pSlot, RandomSource pRandom, float pEnchantChance, DifficultyInstance pDifficulty) protected voidenchantSpawnedWeapon(ServerLevelAccessor pLevel, RandomSource pRandom, DifficultyInstance pDifficulty) voidequip(ResourceKey<LootTable> pEquipmentLootTable, Map<EquipmentSlot, Float> pSlotDropChances) voidequip(EquipmentTable pEquipmentTable) equipItemIfPossible(ServerLevel pLevel, ItemStack pStack) finalizeSpawn(ServerLevelAccessor pLevel, DifficultyInstance pDifficulty, EntitySpawnReason pSpawnReason, SpawnGroupData pSpawnGroupData) Deprecated.Override-Only.protected SoundEventintprivate doublegetApproximateAttributeWith(ItemStack pItem, Holder<Attribute> pAttribute, EquipmentSlot pSlot) protected AABBprotected intgetBaseExperienceReward(ServerLevel pLevel) static ItemgetEquipmentForSlot(EquipmentSlot pSlot, int pChance) intintfinal Optional<ResourceKey<LootTable>> longintintintintfloatgetPathfindingMalus(PathType pPathType) protected Vec3ifinal EntitySpawnReasonReturns the type of spawn that created this mob, if applicable.protected final LivingEntityvoidhandleEntityEvent(byte pId) Handler forinvalid reference
World#setEntityStatebooleanhasHome()private booleanfinal InteractionResultinteract(Player pPlayer, InteractionHand pHand) booleanbooleanbooleanbooleanisMaxGroupSizeReached(int pSize) booleanisNoAi()booleanbooleanfinal booleanThis method exists so that spawns can be cancelled from theFinalizeSpawnEventwithout needing to hook up an additional handler for theEntityJoinLevelEvent.protected booleanbooleanbooleanbooleanisWithinHome(BlockPos pPos) booleanisWithinHome(Vec3 pPos) booleanisWithinMeleeAttackRange(LivingEntity pEntity) voidjumpInFluid(FluidType type) Performs what to do when an entity attempts to go up or "jump" in a fluid.protected voidjumpInLiquid(TagKey<Fluid> pFluidTag) Deprecated.private voidjumpInLiquidInternal(Runnable onSuper) voidvoidChanges the X and Y rotation so that this entity is facing the given entity.protected InteractionResultmobInteract(Player pPlayer, InteractionHand pHand) protected voidonAttributeUpdated(Holder<Attribute> pAttribute) voidprotected voidonOffspringSpawnedFromEgg(Player pPlayer, Mob pChild) voidvoidprotected voidpickUpItem(ServerLevel pLevel, ItemEntity pEntity) voidprotected voidprotected voidplayHurtSound(DamageSource pSource) protected voidpopulateDefaultEquipmentEnchantments(ServerLevelAccessor pLevel, RandomSource pRandom, DifficultyInstance pDifficulty) protected voidpopulateDefaultEquipmentSlots(RandomSource pRandom, DifficultyInstance pDifficulty) protected voidreadAdditionalSaveData(ValueInput pInput) protected voidprotected voidvoidremoveAllGoals(Predicate<Goal> pFilter) voidbooleanremoveWhenFarAway(double pDistanceToClosestPlayer) booleanprivate voidprivate voidprivate floatrotlerp(float pAngle, float pTargetAngle, float pMaxIncrease) Arguments: current rotation, intended rotation, max increment.protected voidprotected final voidvoidsetAggressive(boolean pAggressive) voidsetBaby(boolean pBaby) Set whether this mob is a child.voidsetBodyArmorItem(ItemStack pStack) voidsetCanPickUpLoot(boolean pCanPickUpLoot) voidsetDropChance(EquipmentSlot pSlot, float pChance) voidsetGuaranteedDrop(EquipmentSlot pSlot) voidprotected voidsetItemSlotAndDropWhenKilled(EquipmentSlot pSlot, ItemStack pStack) voidsetLeashData(Leashable.LeashData pLeashData) voidsetLeftHanded(boolean pLeftHanded) voidsetNoAi(boolean pNoAi) Set whether this Entity's AI is disabledvoidsetPathfindingMalus(PathType pPathType, float pMalus) voidfinal voidsetSpawnCancelled(boolean cancel) Marks this mob as being disallowed to spawn duringLevelWriter.addFreshEntity(Entity).voidsetSpeed(float pSpeed) Sets the movespeed used for the new AI system.voidsetTarget(LivingEntity pTarget) Sets the active target the Goal system uses for trackingvoidsetXxa(float pAmount) voidsetYya(float pAmount) voidsetZza(float pAmount) protected booleanprotected booleanvoidbooleanstartRiding(Entity pEntity, boolean pForce) voidvoidtick()protected voidtickHeadTurn(float pYBodyRot) protected voidbooleanwantsToPickUp(ServerLevel pLevel, ItemStack pStack) Methods inherited from class net.minecraft.world.entity.LivingEntity
activeLocationDependentEnchantments, actuallyHurt, addEffect, addEffect, animateHurt, applyInput, applyItemBlocking, areAllEffectsAmbient, attackable, blockedByItem, blockUsingItem, brainProvider, calculateEntityAnimation, calculateFallDamage, canAttack, canBeAffected, canBeSeenAsEnemy, canBeSeenByAnyone, canBreatheUnderwater, canEquipWithDispenser, canFreeze, canGlide, canGlideUsing, canStandOnFluid, canUsePortal, canUseSlot, causeFallDamage, checkAutoSpinAttack, checkFallDamage, clearSleepingPos, completeUsingItem, createEquipment, createLivingAttributes, createWitherRose, decreaseAirSupply, die, doAutoAttackOnTouch, doesEmitEquipEvent, doHurtEquipment, doPush, drop, dropAllDeathLoot, dropEquipment, dropExperience, dropFromGiftLootTable, dropFromLootTable, dropFromShearingLootTable, equipmentHasChanged, forceAddEffect, getAbsorptionAmount, getActiveEffects, getActiveEffectsMap, getAgeScale, getArmorCoverPercentage, getArmorValue, getArrowCount, getAttackAnim, getAttribute, getAttributeBaseValue, getAttributes, getAttributeValue, getBedOrientation, getBlockSpeedFactor, getBrain, getCombatTracker, getComfortableFallDistance, getCurrentSwingDuration, getDamageAfterArmorAbsorb, getDamageAfterMagicAbsorb, getDeathSound, getDefaultDimensions, getDefaultGravity, getDimensions, getDismountPoses, getEffect, getEffectBlendFactor, getEffectiveGravity, getEquipmentSlotForItem, getEquipSound, getExperienceReward, getFallFlyingTicks, getFallSounds, getFluidFallingAdjustedMovement, getFlyingSpeed, getHealth, getHitbox, getHurtDir, getHurtSound, getInterpolation, getItemBlockingWith, getItemBySlot, getItemHeldByArm, getItemInHand, getJumpBoostPower, getJumpPower, getJumpPower, getKillCredit, getKnockback, getLastAttacker, getLastClimbablePos, getLastDamageSource, getLastHurtByMob, getLastHurtByMobTimestamp, getLastHurtByPlayer, getLastHurtByPlayerMemoryTime, getLastHurtMob, getLastHurtMobTimestamp, getLocalBoundsForPose, getLuck, getMainHandItem, getMaxAbsorption, getMaxHeadRotationRelativeToBody, getMaxHealth, getNoActionTime, getOffhandItem, getPassengerRidingPosition, getPreciseBodyRotation, getProjectile, getRelativePortalPosition, getRiddenInput, getRiddenSpeed, getScale, getSecondsToDisableBlocking, getSleepingPos, getSlot, getSlotForHand, getSoundVolume, getSpeed, getStingerCount, getSwimAmount, getTicksUsingItem, getUsedItemHand, getUseItem, getUseItemRemainingTicks, getViewYRot, getVisibilityPercent, getVisualRotationYInDegrees, getVoicePitch, getWaterSlowDown, getWeaponItem, getYHeadRot, goDownInWater, handleDamageEvent, handleExtraItemsCreatedOnUse, hasEffect, hasInfiniteMaterials, hasItemInSlot, hasLandedInLiquid, hasLineOfSight, hasLineOfSight, heal, hurtArmor, hurtHelmet, hurtServer, igniteForTicks, increaseAirSupply, indicateDamage, internalSetAbsorptionAmount, isAffectedByFluids, isAffectedByPotions, isAlive, isAlwaysExperienceDropper, isAutoSpinAttack, isBaby, isBlocking, isCurrentlyGlowing, isDeadOrDying, isEquippableInSlot, isFallFlying, isHolding, isHolding, isImmobile, isInvertedHealAndHarm, isInvulnerableTo, isInWall, isJumping, isLookingAtMe, isPickable, isPushable, isSensitiveToWater, isSleeping, isSuppressingSlidingDownLadder, isTransmittingWaypoint, isUsingItem, isVisuallySwimming, jumpFromGround, kill, knockback, lerpHeadRotationStep, lerpHeadTo, lookAt, makeBrain, makePoofParticles, makeSound, makeWaypointConnectionWith, maxUpStep, onBelowWorld, onChangedBlock, onClimbable, onEffectAdded, onEffectsRemoved, onEffectUpdated, onEnterCombat, onEquipItem, onEquippedItemBroken, onItemPickup, onLeaveCombat, onRemoval, onSyncedDataUpdated, playBlockFallSound, push, pushEntities, randomTeleport, recreateFromPacket, releaseUsingItem, remove, removeAllEffects, removeEffect, removeEffectNoUpdate, removeEffectParticles, removeFrost, resetForwardDirectionOfRelativePortalPosition, resolveMobResponsibleForDamage, resolvePlayerResponsibleForDamage, rideTick, sanitizeScale, sendEffectToPassengers, setAbsorptionAmount, setArrowCount, setDiscardFriction, setHealth, setItemInHand, setItemSlot, setJumping, setLastHurtByMob, setLastHurtByPlayer, setLastHurtByPlayer, setLastHurtMob, setLivingEntityFlag, setNoActionTime, setRecordPlayingNearby, setSleepingPos, setSprinting, setStingerCount, setYBodyRot, setYHeadRot, shouldDiscardFriction, shouldDropExperience, shouldDropLoot, shouldShowName, skipDropExperience, spawnItemParticles, startSleeping, startUsingItem, stopFallFlying, stopRiding, stopSleeping, stopUsingItem, swing, swing, take, tickDeath, tickEffects, tickRidden, travel, travelFlying, travelFlying, triggerOnDeathMobEffects, tryAddFrost, updateEffectVisibility, updateFallFlying, updateInvisibilityStatus, updateSwingTime, updateUsingItem, updateWalkAnimation, wasExperienceConsumed, waypointIcon, wouldNotSuffocateAtTargetPoseMethods inherited from class net.minecraft.world.entity.Entity
absSnapRotationTo, absSnapTo, absSnapTo, addDeltaMovement, addPassenger, addTag, adjustSpawnLocation, applyComponentsFromItemStack, applyEffectsFromBlocks, applyEffectsFromBlocks, applyGravity, applyImplicitComponent, applyImplicitComponentIfPresent, applyImplicitComponents, awardKillScore, blockPosition, broadcastToPlayer, calculateUpVector, calculateViewVector, canAddPassenger, canBeCollidedWith, canBeHitByProjectile, canCollideWith, canControlVehicle, canRide, canSimulateMovement, canSpawnSprintParticle, canSprint, canTeleport, canTrample, captureDrops, captureDrops, castComponentValue, checkBelowWorld, checkFallDistanceAccumulation, checkSupportingBlock, chunkPosition, clearFire, clearFreeze, clearMovementThisTick, closerThan, closerThan, collideBoundingBox, collidedWithFluid, collidedWithShapeMovingFrom, considersEntityAsAlly, copyPosition, couldAcceptPassenger, countPlayerPassengers, createCommandSourceStackForNameResolution, createHoverEvent, damageSources, dampensVibrations, deflection, discard, dismountsUnderwater, dismountTo, displayFireAnimation, distanceTo, distanceToSqr, distanceToSqr, distanceToSqr, doCheckFallDamage, doWaterSplashEffect, dropAllLeashConnections, ejectPassengers, equals, extinguishFire, fillCrashReportCategory, fireImmune, fixupDimensions, forceSetRotation, fudgePositionAfterSizeChange, gameEvent, gameEvent, get, getAddEntityPacket, getAirSupply, getAttachments, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockPosBelowThatAffectsMyMovement, getBlockStateOn, getBlockStateOnLegacy, getBlockX, getBlockY, getBlockZ, getBoundingBox, getCapability, getCapability, getCollisionHorizontalEscapeVector, getControlledVehicle, getCustomName, getDefaultPassengerAttachmentPoint, getDeltaMovement, getDimensionChangingDelay, getDirection, getDismountLocationForPassenger, getDisplayName, getEncodeId, getEntityData, getEyeHeight, getEyeHeight, getEyeInFluidType, getEyePosition, getEyePosition, getEyeY, getFireImmuneTicks, getFirstPassenger, getFluidHeight, getFluidJumpThreshold, getFluidTypeHeight, getForward, getGravity, getHandHoldingItemAngle, getId, getInBlockState, getIndirectPassengers, getInputVector, getKnownMovement, getLightLevelDependentMagicValue, getLightProbePosition, getLookAngle, getMaxAirSupply, getMaxHeightFluidType, getMotionDirection, getMovementEmission, getName, getNearestViewDirection, getOnPos, getOnPos, getOnPosLegacy, getPassengerAttachmentPoint, getPassengers, getPassengersAndSelf, getPercentFrozen, getPersistentData, getPickRadius, getPistonPushReaction, getPortalCooldown, getPose, getPosition, getPositionCodec, getPrimaryStepSoundBlockPos, getQuadLeashHolderOffsets, getRandom, getRandomX, getRandomY, getRandomZ, getRemainingFireTicks, getRemovalReason, getRequiresPrecisePosition, getRootVehicle, getRopeHoldPosition, getRotationVector, getScoreboardName, getSelfAndPassengers, getServer, getSharedFlag, getSoundSource, getStringUUID, getSwimHighSpeedSplashSound, getSwimSound, getSwimSplashSound, getTags, getTeam, getTeamColor, getTicksFrozen, getTicksRequiredToFreeze, getType, getTypeName, getUpVector, getUUID, getVehicle, getVehicleAttachmentPoint, getViewScale, getViewVector, getViewXRot, getX, getX, getXRot, getXRot, getY, getY, getYRot, getYRot, getZ, getZ, handleOnAboveBubbleColumn, handleOnInsideBubbleColumn, handlePortal, hasControllingPassenger, hasCustomName, hasExactlyOnePlayerPassenger, hasGlowingTag, hashCode, hasIndirectPassenger, hasPassenger, hasPassenger, hasPose, hurt, hurtClient, hurtOrSimulate, igniteForSeconds, ignoreExplosion, interactAt, is, isAddedToLevel, isAffectedByBlocks, isAlliedTo, isAlliedTo, isAlwaysTicking, isAttackable, isClientAuthoritative, isColliding, isCrouching, isCustomNameVisible, isDescending, isDiscrete, isEyeInFluid, isFlapping, isFlyingVehicle, isFree, isFreezing, isFullyFrozen, isHorizontalCollisionMinor, isIgnoringBlockTriggers, isInClouds, isInFluidType, isInFluidType, isInLava, isInLiquid, isInRain, isInterpolating, isInvisible, isInvisibleTo, isInvulnerable, isInvulnerableToBase, isInWater, isInWaterOrRain, isLocalClientAuthoritative, isLocalInstanceAuthoritative, isNoGravity, isOnFire, isOnPortalCooldown, isOnRails, isPassenger, isPassengerOfSameVehicle, isPushedByFluid, isRemoved, isShiftKeyDown, isSilent, isSpectator, isSprinting, isSteppingCarefully, isSupportedBy, isSuppressingBounce, isSwimming, isUnderWater, isVehicle, isVisuallyCrawling, killedEntity, lavaHurt, lavaIgnite, lerpMotion, lerpPositionAndRotationStep, level, limitPistonMovement, load, makeBoundingBox, makeBoundingBox, makeStuckInBlock, markHurt, maybeBackOffFromEdge, mayInteract, mirror, move, moveOrInterpolateTo, moveRelative, moveTowardsClosestSpace, nextStep, notifyLeasheeRemoved, notifyLeashHolder, oldPosition, onAboveBubbleColumn, onAddedToLevel, onClientRemoval, onExplosionHit, onFlap, onGround, onInsideBlock, onInsideBubbleColumn, onPassengerTurned, onRemovedFromLevel, onSyncedDataUpdated, pick, placePortalTicket, playCombinationStepSounds, playEntityOnFireExtinguishedSound, playerTouch, playMuffledStepSound, playSound, playSound, playStepSound, playSwimSound, position, positionRider, positionRider, problemPath, processFlappingMovement, processPortalCooldown, propagateFallToPassengers, push, push, reapplyPosition, refreshDimensions, registryAccess, removeLatestMovementRecording, removePassenger, removeTag, removeVehicle, repositionEntityAfterLoad, resetFallDistance, restoreFrom, revive, rotate, save, saveAsPassenger, saveWithoutId, sendBubbleColumnParticles, setAirSupply, setAsInsidePortal, setBoundingBox, setComponent, setCustomName, setCustomNameVisible, setData, setDeltaMovement, setDeltaMovement, setFluidTypeHeight, setGlowingTag, setId, setInvisible, setInvulnerable, setIsInPowderSnow, setLevel, setLevelCallback, setNoGravity, setOldPos, setOldPosAndRot, setOldPosAndRot, setOldRot, setOnGround, setOnGroundWithMovement, setOnGroundWithMovement, setPortalCooldown, setPortalCooldown, setPos, setPos, setPose, setPosRaw, setRemainingFireTicks, setRemoved, setRequiresPrecisePosition, setRot, setSharedFlag, setSharedFlagOnFire, setShiftKeyDown, setSilent, setSwimming, setTicksFrozen, setUUID, setViewScale, setXRot, setYRot, shearOffAllLeashConnections, shouldBeSaved, shouldBlockExplode, shouldPlayLavaHurtSound, shouldRender, shouldRenderAtSqrDistance, showVehicleHealth, skipAttackInteraction, snapTo, snapTo, snapTo, snapTo, snapTo, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnSprintParticle, startRiding, startSeenByPlayer, stopSeenByPlayer, supportQuadLeashAsHolder, syncData, syncPacketPositionCodec, teleport, teleportRelative, teleportSetPosition, teleportSpectators, teleportTo, teleportTo, thunderHit, toString, touchingUnloadedChunk, trackingPosition, turn, unRide, unsetRemoved, updateDynamicGameEventListener, updateFluidHeightAndDoCanPushEntityFluidPushing, updateFluidHeightAndDoFluidPushing, updateFluidHeightAndDoFluidPushing, updateInWaterStateAndDoFluidPushing, updateInWaterStateAndDoWaterCurrentPushing, updateInWaterStateAndDoWaterCurrentPushing, updateSwimming, waterSwimSoundMethods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, removeData, serializeAttachmentsMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface net.minecraft.core.component.DataComponentGetter
get, getOrDefault, getOrDefault, getTyped, has, hasMethods inherited from interface net.minecraft.world.entity.EquipmentUser
equip, equip, equip, getItemBySlot, resolveSlot, setItemSlotMethods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder
getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncDataMethods inherited from interface net.neoforged.neoforge.common.extensions.IEntityExtension
canBeRiddenUnderFluidType, canFluidExtinguish, canHydrateInFluidType, canRiderInteract, canStartSwimming, canTrample, captureDrops, captureDrops, copyAttachmentsFrom, getClassification, getEyeInFluidType, getFluidFallDistanceModifier, getFluidMotionScale, getFluidTypeHeight, getMaxHeightFluidType, getParts, getPersistentData, getSoundFromFluidType, hasCustomOutlineRendering, isAddedToLevel, isEyeInFluidType, isInFluidType, isInFluidType, isInFluidType, isInFluidType, isInFluidType, isMultipartEntity, isPushedByFluid, onAddedToLevel, onRemovedFromLevel, revive, sendPairingData, shouldRiderSitMethods inherited from interface net.neoforged.neoforge.common.extensions.ILivingEntityExtension
canDrownInFluidType, canSwimInFluidType, moveInFluid, onDamageTaken, self, sinkInFluidMethods inherited from interface net.minecraft.world.entity.Leashable
canHaveALeashAttachedTo, checkElasticInteractions, closeRangeLeashBehaviour, dropLeash, getLeashHolder, getLeashOffset, getLeashOffset, getQuadLeashOffsets, isLeashed, leashDistanceTo, leashElasticDistance, leashSnapDistance, mayBeLeashed, onElasticLeashPull, readLeashData, removeLeash, setDelayedLeashHolderId, setLeashedTo, supportQuadLeash, whenLeashedTo, writeLeashDataMethods inherited from interface net.minecraft.world.scores.ScoreHolder
getFeedbackDisplayName
-
Field Details
-
DATA_MOB_FLAGS_ID
-
MOB_FLAG_NO_AI
private static final int MOB_FLAG_NO_AI- See Also:
-
MOB_FLAG_LEFTHANDED
private static final int MOB_FLAG_LEFTHANDED- See Also:
-
MOB_FLAG_AGGRESSIVE
private static final int MOB_FLAG_AGGRESSIVE- See Also:
-
PICKUP_REACH
protected static final int PICKUP_REACH- See Also:
-
ITEM_PICKUP_REACH
-
EQUIPMENT_POPULATION_ORDER
-
MAX_WEARING_ARMOR_CHANCE
public static final float MAX_WEARING_ARMOR_CHANCE- See Also:
-
MAX_PICKUP_LOOT_CHANCE
public static final float MAX_PICKUP_LOOT_CHANCE- See Also:
-
MAX_ENCHANTED_ARMOR_CHANCE
public static final float MAX_ENCHANTED_ARMOR_CHANCE- See Also:
-
MAX_ENCHANTED_WEAPON_CHANCE
public static final float MAX_ENCHANTED_WEAPON_CHANCE- See Also:
-
UPDATE_GOAL_SELECTOR_EVERY_N_TICKS
public static final int UPDATE_GOAL_SELECTOR_EVERY_N_TICKS- See Also:
-
DEFAULT_ATTACK_REACH
private static final double DEFAULT_ATTACK_REACH -
DEFAULT_CAN_PICK_UP_LOOT
private static final boolean DEFAULT_CAN_PICK_UP_LOOT- See Also:
-
DEFAULT_PERSISTENCE_REQUIRED
private static final boolean DEFAULT_PERSISTENCE_REQUIRED- See Also:
-
DEFAULT_LEFT_HANDED
private static final boolean DEFAULT_LEFT_HANDED- See Also:
-
DEFAULT_NO_AI
private static final boolean DEFAULT_NO_AI- See Also:
-
RANDOM_SPAWN_BONUS_ID
-
TAG_DROP_CHANCES
- See Also:
-
TAG_LEFT_HANDED
- See Also:
-
TAG_CAN_PICK_UP_LOOT
- See Also:
-
TAG_NO_AI
- See Also:
-
ambientSoundTime
public int ambientSoundTime -
xpReward
protected int xpReward -
lookControl
-
moveControl
-
jumpControl
-
bodyRotationControl
-
goalSelector
-
targetSelector
-
target
-
sensing
-
dropChances
-
canPickUpLoot
private boolean canPickUpLoot -
persistenceRequired
private boolean persistenceRequired -
pathfindingMalus
-
lootTable
-
lootTableSeed
private long lootTableSeed -
leashData
-
homePosition
-
homeRadius
private int homeRadius -
spawnType
-
spawnCancelled
private boolean spawnCancelled -
preventConversionSpawns
protected boolean preventConversionSpawnsNeo: Prevent immediate spawning from conversions to capture conversion results for events
-
-
Constructor Details
-
Mob
-
-
Method Details
-
registerGoals
protected void registerGoals() -
createMobAttributes
-
shouldPassengersInheritMalus
protected boolean shouldPassengersInheritMalus() -
getPathfindingMalus
-
setPathfindingMalus
-
onPathfindingStart
public void onPathfindingStart() -
onPathfindingDone
public void onPathfindingDone() -
createBodyControl
-
getLookControl
-
getMoveControl
-
getJumpControl
-
getControllingPassenger
- Overrides:
getControllingPassengerin classEntity
-
getSensing
-
getTarget
-
getTargetFromBrain
-
setTarget
Sets the active target the Goal system uses for tracking -
canAttackType
- Overrides:
canAttackTypein classLivingEntity
-
canFireProjectileWeapon
-
ate
public void ate() -
defineSynchedData
- Overrides:
defineSynchedDatain classLivingEntity
-
getAmbientSoundInterval
public int getAmbientSoundInterval() -
playAmbientSound
public void playAmbientSound() -
baseTick
public void baseTick()- Overrides:
baseTickin classLivingEntity
-
playHurtSound
- Overrides:
playHurtSoundin classLivingEntity
-
resetAmbientSoundTime
private void resetAmbientSoundTime() -
getBaseExperienceReward
- Overrides:
getBaseExperienceRewardin classLivingEntity
-
spawnAnim
public void spawnAnim() -
handleEntityEvent
public void handleEntityEvent(byte pId) Handler forinvalid reference
World#setEntityState- Overrides:
handleEntityEventin classLivingEntity
-
tick
public void tick()- Overrides:
tickin classLivingEntity
-
updateControlFlags
protected void updateControlFlags() -
tickHeadTurn
protected void tickHeadTurn(float pYBodyRot) - Overrides:
tickHeadTurnin classLivingEntity
-
getAmbientSound
-
addAdditionalSaveData
- Overrides:
addAdditionalSaveDatain classLivingEntity
-
readAdditionalSaveData
- Overrides:
readAdditionalSaveDatain classLivingEntity
-
dropFromLootTable
protected void dropFromLootTable(ServerLevel pLevel, DamageSource pDamageSource, boolean pPlayerKill) - Overrides:
dropFromLootTablein classLivingEntity
-
getLootTable
- Overrides:
getLootTablein classEntity
-
getLootTableSeed
public long getLootTableSeed()- Overrides:
getLootTableSeedin classLivingEntity
-
setZza
public void setZza(float pAmount) -
setYya
public void setYya(float pAmount) -
setXxa
public void setXxa(float pAmount) -
setSpeed
public void setSpeed(float pSpeed) Sets the movespeed used for the new AI system.- Overrides:
setSpeedin classLivingEntity
-
stopInPlace
public void stopInPlace() -
aiStep
public void aiStep()- Overrides:
aiStepin classLivingEntity
-
getPickupReach
-
pickUpItem
-
equipItemIfPossible
-
setItemSlotAndDropWhenKilled
-
canShearEquipment
-
setGuaranteedDrop
-
canReplaceCurrentItem
protected boolean canReplaceCurrentItem(ItemStack pNewItem, ItemStack pCurrentItem, EquipmentSlot pSlot) -
compareArmor
-
compareWeapons
-
getApproximateAttributeWith
private double getApproximateAttributeWith(ItemStack pItem, Holder<Attribute> pAttribute, EquipmentSlot pSlot) -
canReplaceEqualItem
-
canHoldItem
-
wantsToPickUp
-
getPreferredWeaponType
-
removeWhenFarAway
public boolean removeWhenFarAway(double pDistanceToClosestPlayer) -
requiresCustomPersistence
public boolean requiresCustomPersistence() -
shouldDespawnInPeaceful
protected boolean shouldDespawnInPeaceful() -
checkDespawn
public void checkDespawn()- Overrides:
checkDespawnin classEntity
-
serverAiStep
protected final void serverAiStep()- Overrides:
serverAiStepin classLivingEntity
-
sendDebugPackets
protected void sendDebugPackets() -
customServerAiStep
-
getMaxHeadXRot
public int getMaxHeadXRot() -
getMaxHeadYRot
public int getMaxHeadYRot() -
clampHeadRotationToBody
protected void clampHeadRotationToBody() -
getHeadRotSpeed
public int getHeadRotSpeed() -
lookAt
Changes the X and Y rotation so that this entity is facing the given entity. -
rotlerp
private float rotlerp(float pAngle, float pTargetAngle, float pMaxIncrease) Arguments: current rotation, intended rotation, max increment. -
checkMobSpawnRules
public static boolean checkMobSpawnRules(EntityType<? extends Mob> pEntityType, LevelAccessor pLevel, EntitySpawnReason pSpawnReason, BlockPos pPos, RandomSource pRandom) -
checkSpawnRules
-
checkSpawnObstruction
-
getMaxSpawnClusterSize
public int getMaxSpawnClusterSize() -
isMaxGroupSizeReached
public boolean isMaxGroupSizeReached(int pSize) -
getMaxFallDistance
public int getMaxFallDistance()- Overrides:
getMaxFallDistancein classLivingEntity
-
getBodyArmorItem
-
isSaddled
public boolean isSaddled() -
isWearingBodyArmor
public boolean isWearingBodyArmor() -
hasValidEquippableItemForSlot
-
setBodyArmorItem
-
createEquipmentSlotContainer
-
dropCustomDeathLoot
protected void dropCustomDeathLoot(ServerLevel pLevel, DamageSource pDamageSource, boolean pRecentlyHit) - Overrides:
dropCustomDeathLootin classLivingEntity
-
getDropChances
-
dropPreservedEquipment
-
dropPreservedEquipment
-
createEquipmentParams
-
equip
-
equip
public void equip(ResourceKey<LootTable> pEquipmentLootTable, Map<EquipmentSlot, Float> pSlotDropChances) -
populateDefaultEquipmentSlots
-
getEquipmentForSlot
-
populateDefaultEquipmentEnchantments
protected void populateDefaultEquipmentEnchantments(ServerLevelAccessor pLevel, RandomSource pRandom, DifficultyInstance pDifficulty) -
enchantSpawnedWeapon
protected void enchantSpawnedWeapon(ServerLevelAccessor pLevel, RandomSource pRandom, DifficultyInstance pDifficulty) -
enchantSpawnedArmor
protected void enchantSpawnedArmor(ServerLevelAccessor pLevel, RandomSource pRandom, EquipmentSlot pSlot, DifficultyInstance pDifficulty) -
enchantSpawnedEquipment
private void enchantSpawnedEquipment(ServerLevelAccessor pLevel, EquipmentSlot pSlot, RandomSource pRandom, float pEnchantChance, DifficultyInstance pDifficulty) -
finalizeSpawn
@Deprecated @OverrideOnly @Nullable public SpawnGroupData finalizeSpawn(ServerLevelAccessor pLevel, DifficultyInstance pDifficulty, EntitySpawnReason pSpawnReason, @Nullable SpawnGroupData pSpawnGroupData) Deprecated. -
setPersistenceRequired
public void setPersistenceRequired() -
setDropChance
- Specified by:
setDropChancein interfaceEquipmentUser
-
canPickUpLoot
public boolean canPickUpLoot()- Overrides:
canPickUpLootin classLivingEntity
-
setCanPickUpLoot
public void setCanPickUpLoot(boolean pCanPickUpLoot) -
canDispenserEquipIntoSlot
- Overrides:
canDispenserEquipIntoSlotin classLivingEntity
-
isPersistenceRequired
public boolean isPersistenceRequired() -
interact
-
checkAndHandleImportantInteractions
private InteractionResult checkAndHandleImportantInteractions(Player pPlayer, InteractionHand pHand) -
onOffspringSpawnedFromEgg
-
mobInteract
-
isWithinHome
public boolean isWithinHome() -
isWithinHome
-
isWithinHome
-
setHomeTo
-
getHomePosition
-
getHomeRadius
public int getHomeRadius() -
clearHome
public void clearHome() -
hasHome
public boolean hasHome() -
convertTo
@Nullable public <T extends Mob> T convertTo(EntityType<T> pEntityType, ConversionParams pConversionParams, EntitySpawnReason pSpawnReason, ConversionParams.AfterConversion<T> pAfterConversion) -
convertTo
@Nullable public <T extends Mob> T convertTo(EntityType<T> pEntityType, ConversionParams pConversionParams, ConversionParams.AfterConversion<T> pAfterConversion) -
getLeashData
- Specified by:
getLeashDatain interfaceLeashable
-
resetAngularLeashMomentum
private void resetAngularLeashMomentum() -
setLeashData
- Specified by:
setLeashDatain interfaceLeashable
-
onLeashRemoved
public void onLeashRemoved()- Specified by:
onLeashRemovedin interfaceLeashable
-
leashTooFarBehaviour
public void leashTooFarBehaviour()- Specified by:
leashTooFarBehaviourin interfaceLeashable
-
canBeLeashed
public boolean canBeLeashed()- Specified by:
canBeLeashedin interfaceLeashable
-
startRiding
- Overrides:
startRidingin classEntity
-
isEffectiveAi
public boolean isEffectiveAi()- Overrides:
isEffectiveAiin classEntity
-
setNoAi
public void setNoAi(boolean pNoAi) Set whether this Entity's AI is disabled -
setLeftHanded
public void setLeftHanded(boolean pLeftHanded) -
setAggressive
public void setAggressive(boolean pAggressive) -
isNoAi
public boolean isNoAi() -
isLeftHanded
public boolean isLeftHanded() -
isAggressive
public boolean isAggressive() -
setBaby
public void setBaby(boolean pBaby) Set whether this mob is a child. -
getMainArm
- Specified by:
getMainArmin classLivingEntity
-
isWithinMeleeAttackRange
-
getAttackBoundingBox
-
doHurtTarget
- Overrides:
doHurtTargetin classLivingEntity
-
playAttackSound
protected void playAttackSound() -
isSunBurnTick
protected boolean isSunBurnTick() -
jumpInLiquid
Deprecated.- Overrides:
jumpInLiquidin classLivingEntity
-
jumpInLiquidInternal
-
jumpInFluid
Description copied from interface:ILivingEntityExtensionPerforms what to do when an entity attempts to go up or "jump" in a fluid.- Specified by:
jumpInFluidin interfaceILivingEntityExtension- Parameters:
type- the type of the fluid
-
removeFreeWill
public void removeFreeWill() -
removeAllGoals
-
removeAfterChangingDimensions
protected void removeAfterChangingDimensions()- Overrides:
removeAfterChangingDimensionsin classEntity
-
getPickResult
- Overrides:
getPickResultin classEntity
-
onAttributeUpdated
- Overrides:
onAttributeUpdatedin classLivingEntity
-
getSpawnType
Returns the type of spawn that created this mob, if applicable. If it could not be determined, this will return null.This is set via
finalizeSpawn(net.minecraft.world.level.ServerLevelAccessor, net.minecraft.world.DifficultyInstance, net.minecraft.world.entity.EntitySpawnReason, net.minecraft.world.entity.SpawnGroupData), so you should not call this from within that method, instead using the parameter. -
isSpawnCancelled
@Internal public final boolean isSpawnCancelled()This method exists so that spawns can be cancelled from theFinalizeSpawnEventwithout needing to hook up an additional handler for theEntityJoinLevelEvent.- Returns:
- if this mob will be blocked from spawning during
LevelWriter.addFreshEntity(Entity)
-
setSpawnCancelled
@Internal public final void setSpawnCancelled(boolean cancel) Marks this mob as being disallowed to spawn duringLevelWriter.addFreshEntity(Entity).- Throws:
UnsupportedOperationException- if this entity has already beenEntity.isAddedToLevel()added to the level.
-