Class TamableAnimal

All Implemented Interfaces:
CommandSource, SyncedDataHolder, Attackable, EquipmentUser, Leashable, OwnableEntity, Targeting, EntityAccess, Nameable, ScoreHolder, IAttachmentHolder, IEntityExtension, ILivingEntityExtension, INBTSerializable<CompoundTag>
Direct Known Subclasses:
Cat, ShoulderRidingEntity, Wolf

public abstract class TamableAnimal extends Animal implements OwnableEntity
  • Field Details

    • TELEPORT_WHEN_DISTANCE_IS_SQ

      public static final int TELEPORT_WHEN_DISTANCE_IS_SQ
      See Also:
    • MIN_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING

      private static final int MIN_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING
      See Also:
    • MAX_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING

      private static final int MAX_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING
      See Also:
    • MAX_VERTICAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING

      private static final int MAX_VERTICAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING
      See Also:
    • DATA_FLAGS_ID

      protected static final EntityDataAccessor<Byte> DATA_FLAGS_ID
    • DATA_OWNERUUID_ID

      protected static final EntityDataAccessor<Optional<UUID>> DATA_OWNERUUID_ID
    • orderedToSit

      private boolean orderedToSit
  • Constructor Details

  • Method Details

    • defineSynchedData

      protected void defineSynchedData(SynchedEntityData.Builder pBuilder)
      Overrides:
      defineSynchedData in class AgeableMob
    • addAdditionalSaveData

      public void addAdditionalSaveData(CompoundTag pCompound)
      Overrides:
      addAdditionalSaveData in class Animal
    • readAdditionalSaveData

      public void readAdditionalSaveData(CompoundTag pCompound)
      (abstract) Protected helper method to read subclass entity data from NBT.
      Overrides:
      readAdditionalSaveData in class Animal
    • canBeLeashed

      public boolean canBeLeashed()
      Specified by:
      canBeLeashed in interface Leashable
      Overrides:
      canBeLeashed in class Mob
    • handleLeashAtDistance

      public boolean handleLeashAtDistance(Entity pLeashHolder, float pDistance)
      Specified by:
      handleLeashAtDistance in interface Leashable
      Overrides:
      handleLeashAtDistance in class PathfinderMob
    • spawnTamingParticles

      protected void spawnTamingParticles(boolean pTamed)
      Play the taming effect, will either be hearts or smoke depending on status
    • handleEntityEvent

      public void handleEntityEvent(byte pId)
      Handler for
      invalid reference
      World#setEntityState
      Overrides:
      handleEntityEvent in class Animal
    • isTame

      public boolean isTame()
    • setTame

      public void setTame(boolean pTame, boolean pApplyTamingSideEffects)
    • applyTamingSideEffects

      protected void applyTamingSideEffects()
    • isInSittingPose

      public boolean isInSittingPose()
    • setInSittingPose

      public void setInSittingPose(boolean pSitting)
    • getOwnerUUID

      @Nullable public UUID getOwnerUUID()
      Specified by:
      getOwnerUUID in interface OwnableEntity
    • setOwnerUUID

      public void setOwnerUUID(@Nullable UUID pUuid)
    • tame

      public void tame(Player pPlayer)
    • canAttack

      public boolean canAttack(LivingEntity pTarget)
      Overrides:
      canAttack in class LivingEntity
    • isOwnedBy

      public boolean isOwnedBy(LivingEntity pEntity)
    • wantsToAttack

      public boolean wantsToAttack(LivingEntity pTarget, LivingEntity pOwner)
    • getTeam

      public PlayerTeam getTeam()
      Overrides:
      getTeam in class Entity
    • isAlliedTo

      public boolean isAlliedTo(Entity pEntity)
      Returns whether this Entity is on the same team as the given Entity.
      Overrides:
      isAlliedTo in class Entity
    • die

      public void die(DamageSource pCause)
      Called when the mob's health reaches 0.
      Overrides:
      die in class LivingEntity
    • isOrderedToSit

      public boolean isOrderedToSit()
    • setOrderedToSit

      public void setOrderedToSit(boolean pOrderedToSit)
    • tryToTeleportToOwner

      public void tryToTeleportToOwner()
    • shouldTryTeleportToOwner

      public boolean shouldTryTeleportToOwner()
    • teleportToAroundBlockPos

      private void teleportToAroundBlockPos(BlockPos pPos)
    • maybeTeleportTo

      private boolean maybeTeleportTo(int pX, int pY, int pZ)
    • canTeleportTo

      private boolean canTeleportTo(BlockPos pPos)
    • unableToMoveToOwner

      public final boolean unableToMoveToOwner()
    • canFlyToOwner

      protected boolean canFlyToOwner()