Interface Mob

All Superinterfaces:
Attributable, net.kyori.adventure.audience.Audience, CommandSender, Damageable, Entity, net.kyori.adventure.text.event.HoverEventSource<net.kyori.adventure.text.event.HoverEvent.ShowEntity>, LivingEntity, Lootable, Metadatable, Nameable, Permissible, PersistentDataHolder, net.kyori.adventure.pointer.Pointered, ProjectileSource, ServerOperator
All Known Subinterfaces:
AbstractHorse, AbstractSkeleton, AbstractVillager, Ageable, Ambient, Animals, Axolotl, Bat, Bee, Blaze, Breedable, Cat, CaveSpider, ChestedHorse, Chicken, Cod, Cow, Creature, Creeper, Dolphin, Donkey, Drowned, ElderGuardian, EnderDragon, Enderman, Endermite, Evoker, Fish, Flying, Fox, Ghast, Giant, GlowSquid, Goat, Golem, Guardian, Hoglin, Horse, Husk, Illager, Illusioner, IronGolem, Llama, MagmaCube, Monster, Mule, MushroomCow, NPC, Ocelot, Panda, Parrot, Phantom, Pig, Piglin, PiglinAbstract, PiglinBrute, PigZombie, Pillager, PolarBear, PufferFish, Rabbit, Raider, RangedEntity, Ravager, Salmon, Sheep, Shulker, Silverfish, Skeleton, SkeletonHorse, Slime, Snowman, Spellcaster, Spider, Squid, Steerable, Stray, Strider, Tameable, TraderLlama, TropicalFish, Turtle, Vex, Villager, Vindicator, WanderingTrader, WaterMob, Witch, Wither, WitherSkeleton, Wolf, Zoglin, Zombie, ZombieHorse, ZombieVillager

public interface Mob extends LivingEntity, Lootable
Represents a Mob. Mobs are living entities with simple AI.
  • Method Details

    • getPathfinder

      @NotNull Pathfinder getPathfinder()
      Enables access to control the pathing of an Entity
      Returns:
      Pathfinding Manager for this entity
    • isInDaylight

      boolean isInDaylight()
      Check if this mob is exposed to daylight
      Returns:
      True if mob is exposed to daylight
    • lookAt

      void lookAt(@NotNull Location location)
      Instruct this Mob to look at a specific Location

      Useful when implementing custom mob goals

      Parameters:
      location - location to look at
    • lookAt

      void lookAt(@NotNull Location location, float headRotationSpeed, float maxHeadPitch)
      Instruct this Mob to look at a specific Location

      Useful when implementing custom mob goals

      Parameters:
      location - location to look at
      headRotationSpeed - head rotation speed
      maxHeadPitch - max head pitch rotation
    • lookAt

      void lookAt(@NotNull @NotNull Entity entity)
      Instruct this Mob to look at a specific Entity

      If a LivingEntity, look at eye location

      Useful when implementing custom mob goals

      Parameters:
      entity - entity to look at
    • lookAt

      void lookAt(@NotNull @NotNull Entity entity, float headRotationSpeed, float maxHeadPitch)
      Instruct this Mob to look at a specific Entity

      If a LivingEntity, look at eye location

      Useful when implementing custom mob goals

      Parameters:
      entity - entity to look at
      headRotationSpeed - head rotation speed
      maxHeadPitch - max head pitch rotation
    • lookAt

      void lookAt(double x, double y, double z)
      Instruct this Mob to look at a specific position

      Useful when implementing custom mob goals

      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
    • lookAt

      void lookAt(double x, double y, double z, float headRotationSpeed, float maxHeadPitch)
      Instruct this Mob to look at a specific position

      Useful when implementing custom mob goals

      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      headRotationSpeed - head rotation speed
      maxHeadPitch - max head pitch rotation
    • getHeadRotationSpeed

      int getHeadRotationSpeed()
      Gets the head rotation speed
      Returns:
      the head rotation speed
    • getMaxHeadPitch

      int getMaxHeadPitch()
      Gets the max head pitch rotation
      Returns:
      the max head pitch rotation
    • setTarget

      void setTarget(@Nullable @Nullable LivingEntity target)
      Instructs this Mob to set the specified LivingEntity as its target.

      Hostile creatures may attack their target, and friendly creatures may follow their target.

      Parameters:
      target - New LivingEntity to target, or null to clear the target
    • getTarget

      Gets the current target of this Mob
      Returns:
      Current target of this creature, or null if none exists
    • setAware

      void setAware(boolean aware)
      Sets whether this mob is aware of its surroundings. Unaware mobs will still move if pushed, attacked, etc. but will not move or perform any actions on their own. Unaware mobs may also have other unspecified behaviours disabled, such as drowning.
      Parameters:
      aware - whether the mob is aware
    • isAware

      boolean isAware()
      Gets whether this mob is aware of its surroundings. Unaware mobs will still move if pushed, attacked, etc. but will not move or perform any actions on their own. Unaware mobs may also have other unspecified behaviours disabled, such as drowning.
      Returns:
      whether the mob is aware