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, PartEntityTest.TestEntity, 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 pLeashData)
    • isLeashed

      default boolean isLeashed()
    • mayBeLeashed

      default boolean mayBeLeashed()
    • canHaveALeashAttachedToIt

      default boolean canHaveALeashAttachedToIt()
    • canBeLeashed

      default boolean canBeLeashed()
    • setDelayedLeashHolderId

      default void setDelayedLeashHolderId(int pDelayedLeashHolderId)
    • readLeashData

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

      default void writeLeashData(CompoundTag pTag, @Nullable Leashable.LeashData pLeashData)
    • restoreLeashFromSave

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

      default void dropLeash(boolean pBroadcastPacket, boolean pDropItem)
    • dropLeash

      private static <E extends Entity & Leashable> void dropLeash(E pEntity, boolean pBroadcastPacket, boolean pDropItem)
    • tickLeash

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

      default boolean handleLeashAtDistance(Entity pLeashHolder, float pDistance)
    • leashTooFarBehaviour

      default void leashTooFarBehaviour()
    • closeRangeLeashBehaviour

      default void closeRangeLeashBehaviour(Entity pEntity)
    • elasticRangeLeashBehaviour

      default void elasticRangeLeashBehaviour(Entity pLeashHolder, float pDistance)
    • legacyElasticRangeLeashBehaviour

      private static <E extends Entity & Leashable> void legacyElasticRangeLeashBehaviour(E pEntity, Entity pLeashHolder, float pDistance)
    • setLeashedTo

      default void setLeashedTo(Entity pLeashHolder, boolean pBroadcastPacket)
    • setLeashedTo

      private static <E extends Entity & Leashable> void setLeashedTo(E pEntity, Entity pLeashHolder, boolean pBroadcastPacket)
    • getLeashHolder

      @Nullable default Entity getLeashHolder()
    • getLeashHolder

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