Interface Leashable

All Known Implementing Classes:
AbstractChestedHorse, AbstractFish, AbstractGolem, AbstractHorse, AbstractIllager, AbstractPiglin, AbstractSchoolingFish, AbstractSkeleton, AbstractVillager, AgeableMob, Allay, AmbientCreature, Animal, Armadillo, Axolotl, Bat, Bee, Blaze, Boat, Bogged, Breeze, Camel, Cat, CaveSpider, ChestBoat, Chicken, Cod, Cow, Creeper, Dolphin, Donkey, Drowned, ElderGuardian, EnderDragon, EnderMan, Endermite, Evoker, FlyingMob, Fox, Frog, Ghast, Giant, GlowSquid, Goat, Guardian, Hoglin, Horse, Husk, Illusioner, IronGolem, Llama, MagmaCube, Mob, Monster, Mule, MushroomCow, Ocelot, Panda, Parrot, PathfinderMob, PatrollingMonster, Phantom, Pig, Piglin, PiglinBrute, Pillager, PolarBear, Pufferfish, Rabbit, Raider, Ravager, Salmon, Sheep, ShoulderRidingEntity, Shulker, Silverfish, Skeleton, SkeletonHorse, Slime, Sniffer, SnowGolem, SpellcasterIllager, Spider, Squid, Stray, Strider, Tadpole, TamableAnimal, TraderLlama, TropicalFish, Turtle, Vex, Villager, Vindicator, WanderingTrader, Warden, WaterAnimal, Witch, WitherBoss, WitherSkeleton, Wolf, Zoglin, Zombie, ZombieHorse, ZombieVillager, ZombifiedPiglin

public interface Leashable
  • Field Details

  • Method Details

    • getLeashData

      @Nullable Leashable.LeashData getLeashData()
    • setLeashData

      void setLeashData(@Nullable Leashable.LeashData leashData)
    • isLeashed

      default boolean isLeashed()
    • mayBeLeashed

      default boolean mayBeLeashed()
    • canHaveALeashAttachedToIt

      default boolean canHaveALeashAttachedToIt()
    • canBeLeashed

      default boolean canBeLeashed()
    • setDelayedLeashHolderId

      default void setDelayedLeashHolderId(int delayedLeashHolderId)
    • readLeashData

      @Nullable default Leashable.LeashData readLeashData(CompoundTag tag)
    • writeLeashData

      default void writeLeashData(CompoundTag tag, @Nullable Leashable.LeashData leashData)
    • restoreLeashFromSave

      private static <E extends Entity & Leashable> void restoreLeashFromSave(E p_entity, Leashable.LeashData leashData)
    • dropLeash

      default void dropLeash(boolean broadcastPacket, boolean dropItem)
    • dropLeash

      private static <E extends Entity & Leashable> void dropLeash(E entity, boolean broadcastPacket, boolean dropItem)
    • tickLeash

      static <E extends Entity & Leashable> void tickLeash(E p_entity)
    • handleLeashAtDistance

      default boolean handleLeashAtDistance(Entity leashHolder, float distance)
    • leashTooFarBehaviour

      default void leashTooFarBehaviour()
    • closeRangeLeashBehaviour

      default void closeRangeLeashBehaviour(Entity entity)
    • elasticRangeLeashBehaviour

      default void elasticRangeLeashBehaviour(Entity leashHolder, float distance)
    • legacyElasticRangeLeashBehaviour

      private static <E extends Entity & Leashable> void legacyElasticRangeLeashBehaviour(E entity, Entity leashHolder, float distance)
    • setLeashedTo

      default void setLeashedTo(Entity leashHolder, boolean broadcastPacket)
    • setLeashedTo

      private static <E extends Entity & Leashable> void setLeashedTo(E entity, Entity leashHolder, boolean broadcastPacket)
    • getLeashHolder

      @Nullable default Entity getLeashHolder()
    • getLeashHolder

      @Nullable private static <E extends Entity & Leashable> Entity getLeashHolder(E p_entity)