Interface Entity

All Superinterfaces:
Audience, CommandSender, HoverEventSource<HoverEvent.ShowEntity>, Metadatable, Nameable, Permissible, PersistentDataHolder, PersistentDataViewHolder, Pointered, ServerOperator, Sound.Emitter
All Known Subinterfaces:
AbstractArrow, AbstractHorse, AbstractSkeleton, AbstractVillager, AbstractWindCharge, AcaciaBoat, AcaciaChestBoat, Ageable, Allay, Ambient, Animals, AreaEffectCloud, Armadillo, ArmorStand, Arrow, Axolotl, BambooChestRaft, BambooRaft, Bat, Bee, BirchBoat, BirchChestBoat, Blaze, BlockDisplay, Boat, Bogged, Boss, Breedable, Breeze, BreezeWindCharge, Bucketable, Camel, Cat, CaveSpider, CherryBoat, CherryChestBoat, ChestBoat, ChestedHorse, Chicken, Cod, CollarColorable, CommandMinecart, ComplexEntityPart, ComplexLivingEntity, Cow, Creaking, CreakingTransient, Creature, Creeper, Damageable, DarkOakBoat, DarkOakChestBoat, Display, Dolphin, Donkey, DragonFireball, Drowned, Egg, ElderGuardian, EnderCrystal, EnderDragon, EnderDragonPart, Enderman, Endermite, EnderPearl, EnderSignal, Enemy, Evoker, EvokerFangs, ExperienceOrb, Explosive, ExplosiveMinecart, FallingBlock, Fireball, Firework, Fish, FishHook, Flying, Fox, Frog, Ghast, Giant, GlowItemFrame, GlowSquid, Goat, Golem, Guardian, Hanging, Hoglin, HopperMinecart, Horse, HumanEntity, Husk, Illager, Illusioner, Interaction, IronGolem, Item, ItemDisplay, ItemFrame, JungleBoat, JungleChestBoat, LargeFireball, Leashable, LeashHitch, LightningStrike, LingeringPotion, LivingEntity, Llama, LlamaSpit, MagmaCube, MangroveBoat, MangroveChestBoat, Marker, Minecart, Mob, Monster, Mule, MushroomCow, NPC, OakBoat, OakChestBoat, Ocelot, OminousItemSpawner, Painting, PaleOakBoat, PaleOakChestBoat, Panda, Parrot, Phantom, Pig, Piglin, PiglinAbstract, PiglinBrute, PigZombie, Pillager, Player, PolarBear, PoweredMinecart, Projectile, PufferFish, Rabbit, Raider, RangedEntity, Ravager, RideableMinecart, Salmon, SchoolableFish, Shearable, Sheep, Shulker, ShulkerBullet, Silverfish, SizedFireball, Skeleton, SkeletonHorse, Slime, SmallFireball, Sniffer, Snowball, Snowman, SpawnerMinecart, SpectralArrow, Spellcaster, Spider, SplashPotion, SpruceBoat, SpruceChestBoat, Squid, Steerable, StorageMinecart, Stray, Strider, Tadpole, Tameable, TextDisplay, ThrowableProjectile, ThrownExpBottle, ThrownPotion, TippedArrow, TNTPrimed, TraderLlama, Trident, TropicalFish, Turtle, Vehicle, Vex, Villager, Vindicator, WanderingTrader, Warden, WaterMob, WindCharge, Witch, Wither, WitherSkeleton, WitherSkull, Wolf, Zoglin, Zombie, ZombieHorse, ZombieVillager

Represents a base entity in the world

Not all methods are guaranteed to work/may have side effects when isInWorld() is false.

  • Method Details Link icon

    • getLocation Link icon

      @NotNull @NotNull Location getLocation()
      Gets the entity's current position
      Returns:
      a new copy of Location containing the position of this entity
    • getLocation Link icon

      @Contract("null -> null; !null -> !null") @Nullable @Nullable Location getLocation(@Nullable @Nullable Location loc)
      Stores the entity's current position in the provided Location object.

      If the provided Location is null this method does nothing and returns null.

      Parameters:
      loc - the location to copy into
      Returns:
      The Location object provided or null
    • setVelocity Link icon

      void setVelocity(@NotNull @NotNull Vector velocity)
      Sets this entity's velocity in meters per tick
      Parameters:
      velocity - New velocity to travel with
    • getVelocity Link icon

      @NotNull @NotNull Vector getVelocity()
      Gets this entity's current velocity
      Returns:
      Current traveling velocity of this entity
    • getHeight Link icon

      double getHeight()
      Gets the entity's height
      Returns:
      height of entity
    • getWidth Link icon

      double getWidth()
      Gets the entity's width
      Returns:
      width of entity
    • getBoundingBox Link icon

      @NotNull @NotNull BoundingBox getBoundingBox()
      Gets the entity's current bounding box.

      The returned bounding box reflects the entity's current location and size.

      Returns:
      the entity's current bounding box
    • isOnGround Link icon

      boolean isOnGround()
      Returns true if the entity is supported by a block. This value is a state updated by the server and is not recalculated unless the entity moves.
      Returns:
      True if entity is on ground.
      See Also:
    • isInWater Link icon

      boolean isInWater()
      Returns true if the entity is in water.
      Returns:
      true if the entity is in water.
    • getWorld Link icon

      @NotNull @NotNull World getWorld()
      Gets the current world this entity resides in
      Returns:
      World
    • setRotation Link icon

      void setRotation(float yaw, float pitch)
      Sets the entity's rotation.

      Note that if the entity is affected by AI, it may override this rotation.

      Parameters:
      yaw - the yaw
      pitch - the pitch
    • teleport Link icon

      default boolean teleport(@NotNull @NotNull Location location, @NotNull TeleportFlag @NotNull ... teleportFlags)
      Teleports this entity to the given location.
      Parameters:
      location - New location to teleport this entity to
      teleportFlags - Flags to be used in this teleportation
      Returns:
      true if the teleport was successful
    • teleport Link icon

      Teleports this entity to the given location.
      Parameters:
      location - New location to teleport this entity to
      cause - The cause of this teleportation
      teleportFlags - Flags to be used in this teleportation
      Returns:
      true if the teleport was successful
    • teleport Link icon

      boolean teleport(@NotNull @NotNull Location location)
      Teleports this entity to the given location. If this entity is riding a vehicle, it will be dismounted prior to teleportation.
      Parameters:
      location - New location to teleport this entity to
      Returns:
      true if the teleport was successful
    • teleport Link icon

      Teleports this entity to the given location. If this entity is riding a vehicle, it will be dismounted prior to teleportation.
      Parameters:
      location - New location to teleport this entity to
      cause - The cause of this teleportation
      Returns:
      true if the teleport was successful
    • teleport Link icon

      boolean teleport(@NotNull @NotNull Entity destination)
      Teleports this entity to the target Entity. If this entity is riding a vehicle, it will be dismounted prior to teleportation.
      Parameters:
      destination - Entity to teleport this entity to
      Returns:
      true if the teleport was successful
    • teleport Link icon

      Teleports this entity to the target Entity. If this entity is riding a vehicle, it will be dismounted prior to teleportation.
      Parameters:
      destination - Entity to teleport this entity to
      cause - The cause of this teleportation
      Returns:
      true if the teleport was successful
    • teleportAsync Link icon

      Loads/Generates(in 1.13+) the Chunk asynchronously, and then teleports the entity when the chunk is ready.
      Parameters:
      loc - Location to teleport to
      Returns:
      A future that will be completed with the result of the teleport
    • teleportAsync Link icon

      Loads/Generates(in 1.13+) the Chunk asynchronously, and then teleports the entity when the chunk is ready.
      Parameters:
      loc - Location to teleport to
      cause - Reason for teleport
      Returns:
      A future that will be completed with the result of the teleport
    • teleportAsync Link icon

      Loads/Generates(in 1.13+) the Chunk asynchronously, and then teleports the entity when the chunk is ready.
      Parameters:
      loc - Location to teleport to
      cause - Reason for teleport
      teleportFlags - Flags to be used in this teleportation
      Returns:
      A future that will be completed with the result of the teleport
    • getNearbyEntities Link icon

      @NotNull @NotNull List<Entity> getNearbyEntities(double x, double y, double z)
      Returns a list of entities within a bounding box centered around this entity
      Parameters:
      x - 1/2 the size of the box along x axis
      y - 1/2 the size of the box along y axis
      z - 1/2 the size of the box along z axis
      Returns:
      List<Entity> List of entities nearby
    • getEntityId Link icon

      int getEntityId()
      Returns the network protocol ID for this entity. This is not to be used as an identifier for the entity except in network-related operations. Use getUniqueId() as an entity identifier instead.
      Returns:
      the network protocol ID
      See Also:
    • getFireTicks Link icon

      int getFireTicks()
      Returns the entity's current fire ticks (ticks before the entity stops being on fire).
      Returns:
      int fireTicks
    • getMaxFireTicks Link icon

      int getMaxFireTicks()
      Returns the entity's maximum fire ticks.
      Returns:
      int maxFireTicks
    • setFireTicks Link icon

      void setFireTicks(int ticks)
      Sets the entity's current fire ticks (ticks before the entity stops being on fire).
      Parameters:
      ticks - Current ticks remaining
    • setVisualFire Link icon

      void setVisualFire(boolean fire)
      Sets if the entity has visual fire (it will always appear to be on fire).
      Parameters:
      fire - whether visual fire is enabled
    • isVisualFire Link icon

      boolean isVisualFire()
      Gets if the entity has visual fire (it will always appear to be on fire).
      Returns:
      whether visual fire is enabled
    • getFreezeTicks Link icon

      int getFreezeTicks()
      Returns the entity's current freeze ticks (amount of ticks the entity has been in powdered snow).
      Returns:
      int freeze ticks
    • getMaxFreezeTicks Link icon

      int getMaxFreezeTicks()
      Returns the entity's maximum freeze ticks (amount of ticks before it will be fully frozen)
      Returns:
      int max freeze ticks
    • setFreezeTicks Link icon

      void setFreezeTicks(int ticks)
      Sets the entity's current freeze ticks (amount of ticks the entity has been in powdered snow).
      Parameters:
      ticks - Current ticks
    • isFrozen Link icon

      boolean isFrozen()
      Gets if the entity is fully frozen (it has been in powdered snow for max freeze ticks).
      Returns:
      freeze status
    • setInvisible Link icon

      void setInvisible(boolean invisible)
      Sets whether the entity is invisible or not.

      This setting is undefined for non-living entities like boats or paintings. Non-living entities that are marked as invisible through this method may e.g. only hide their shadow. To hide such entities from players completely, see Player.hideEntity(org.bukkit.plugin.Plugin, Entity).

      Parameters:
      invisible - If the entity is invisible
    • isInvisible Link icon

      boolean isInvisible()
      Gets whether the entity is invisible or not.
      Returns:
      Whether the entity is invisible
    • setNoPhysics Link icon

      void setNoPhysics(boolean noPhysics)
      Sets this entities no physics status.
      Parameters:
      noPhysics - boolean indicating if the entity should not have physics.
    • hasNoPhysics Link icon

      boolean hasNoPhysics()
      Gets if this entity has no physics.
      Returns:
      true if the entity does not have physics.
    • isFreezeTickingLocked Link icon

      boolean isFreezeTickingLocked()
      Gets if the entity currently has its freeze ticks locked to a set amount.

      This is only set by plugins

      Returns:
      locked or not
    • lockFreezeTicks Link icon

      void lockFreezeTicks(boolean locked)
      Sets if the entity currently has its freeze ticks locked, preventing default vanilla freeze tick modification.
      Parameters:
      locked - prevent vanilla modification or not
    • remove Link icon

      void remove()
      Mark the entity's removal.
      Throws:
      UnsupportedOperationException - if you try to remove a Player use Player.kickPlayer(String) in this case instead
    • isDead Link icon

      boolean isDead()
      Returns true if this entity has been marked for removal.
      Returns:
      True if it is dead.
    • isValid Link icon

      boolean isValid()
      Returns false if the entity has died, been despawned for some other reason, or has not been added to the world.
      Returns:
      True if valid.
    • getServer Link icon

      @NotNull @NotNull Server getServer()
      Gets the Server that contains this Entity
      Specified by:
      getServer in interface CommandSender
      Returns:
      Server instance running this Entity
    • isPersistent Link icon

      boolean isPersistent()
      Returns true if the entity gets persisted.

      By default all entities are persistent. An entity will also not get persisted, if it is riding an entity that is not persistent.

      The persistent flag on players controls whether or not to save their playerdata file when they quit. If a player is directly or indirectly riding a non-persistent entity, the vehicle at the root and all its passengers won't get persisted.

      This should not be confused with LivingEntity.setRemoveWhenFarAway(boolean) which controls despawning of living entities.

      Returns:
      true if this entity is persistent
    • setPersistent Link icon

      void setPersistent(boolean persistent)
      Sets whether or not the entity gets persisted.
      Parameters:
      persistent - the persistence status
      See Also:
    • getPassenger Link icon

      @Deprecated(since="1.11.2") @Nullable @Nullable Entity getPassenger()
      Deprecated.
      entities may have multiple passengers, use getPassengers()
      Gets the primary passenger of a vehicle. For vehicles that could have multiple passengers, this will only return the primary passenger.
      Returns:
      an entity
    • setPassenger Link icon

      @Deprecated(since="1.11.2") boolean setPassenger(@NotNull @NotNull Entity passenger)
      Deprecated.
      entities may have multiple passengers, use addPassenger(org.bukkit.entity.Entity)
      Set the passenger of a vehicle.
      Parameters:
      passenger - The new passenger.
      Returns:
      false if it could not be done for whatever reason
    • getPassengers Link icon

      @NotNull @NotNull List<Entity> getPassengers()
      Gets a list of passengers of this vehicle.

      The returned list will not be directly linked to the entity's current passengers, and no guarantees are made as to its mutability.

      Returns:
      list of entities corresponding to current passengers.
    • addPassenger Link icon

      boolean addPassenger(@NotNull @NotNull Entity passenger)
      Add a passenger to the vehicle.
      Parameters:
      passenger - The passenger to add
      Returns:
      false if it could not be done for whatever reason
    • removePassenger Link icon

      boolean removePassenger(@NotNull @NotNull Entity passenger)
      Remove a passenger from the vehicle.
      Parameters:
      passenger - The passenger to remove
      Returns:
      false if it could not be done for whatever reason
    • isEmpty Link icon

      boolean isEmpty()
      Check if a vehicle has passengers.
      Returns:
      True if the vehicle has no passengers.
    • eject Link icon

      boolean eject()
      Eject any passenger.
      Returns:
      True if there was a passenger.
    • getFallDistance Link icon

      float getFallDistance()
      Returns the distance this entity has fallen
      Returns:
      The distance.
    • setFallDistance Link icon

      void setFallDistance(float distance)
      Sets the fall distance for this entity
      Parameters:
      distance - The new distance.
    • setLastDamageCause Link icon

      @Deprecated(since="1.20.4", forRemoval=true) void setLastDamageCause(@Nullable @Nullable EntityDamageEvent event)
      Deprecated, for removal: This API element is subject to removal in a future version.
      method is for internal use only and will be removed
      Record the last EntityDamageEvent inflicted on this entity
      Parameters:
      event - a EntityDamageEvent
    • getLastDamageCause Link icon

      @Nullable @Nullable EntityDamageEvent getLastDamageCause()
      Retrieve the last EntityDamageEvent inflicted on this entity. This event may have been cancelled.
      Returns:
      the last known EntityDamageEvent or null if hitherto unharmed
    • getUniqueId Link icon

      @NotNull @NotNull UUID getUniqueId()
      Returns a unique and persistent id for this entity
      Returns:
      unique id
    • getTicksLived Link icon

      int getTicksLived()
      Gets the amount of ticks this entity has lived for.

      This is the equivalent to "age" in entities.

      Returns:
      Age of entity
    • setTicksLived Link icon

      void setTicksLived(int value)
      Sets the amount of ticks this entity has lived for.

      This is the equivalent to "age" in entities. May not be less than one tick.

      Parameters:
      value - Age of entity
    • playEffect Link icon

      void playEffect(@NotNull @NotNull EntityEffect type)
      Performs the specified EntityEffect for this entity.

      This will be viewable to all players near the entity.

      If the effect is not applicable to this class of entity, it will not play.

      Parameters:
      type - Effect to play.
    • getType Link icon

      Get the type of the entity.
      Returns:
      The entity type.
    • getSwimSound Link icon

      @NotNull @NotNull Sound getSwimSound()
      Get the Sound this entity makes while swimming.
      Returns:
      the swimming sound
    • getSwimSplashSound Link icon

      @NotNull @NotNull Sound getSwimSplashSound()
      Get the Sound this entity makes when splashing in water. For most entities, this is just Sound.ENTITY_GENERIC_SPLASH.
      Returns:
      the splash sound
    • getSwimHighSpeedSplashSound Link icon

      @NotNull @NotNull Sound getSwimHighSpeedSplashSound()
      Get the Sound this entity makes when splashing in water at high speeds. For most entities, this is just Sound.ENTITY_GENERIC_SPLASH.
      Returns:
      the splash sound
    • isInsideVehicle Link icon

      boolean isInsideVehicle()
      Returns whether this entity is inside a vehicle.
      Returns:
      True if the entity is in a vehicle.
    • leaveVehicle Link icon

      boolean leaveVehicle()
      Leave the current vehicle. If the entity is currently in a vehicle (and is removed from it), true will be returned, otherwise false will be returned.
      Returns:
      True if the entity was in a vehicle.
    • getVehicle Link icon

      @Nullable @Nullable Entity getVehicle()
      Get the vehicle that this entity is inside. If there is no vehicle, null will be returned.
      Returns:
      The current vehicle.
    • setCustomNameVisible Link icon

      void setCustomNameVisible(boolean flag)
      Sets whether or not to display the mob's custom name client side. The name will be displayed above the mob similarly to a player.

      This value has no effect on players, they will always display their name.

      Parameters:
      flag - custom name or not
    • isCustomNameVisible Link icon

      boolean isCustomNameVisible()
      Gets whether or not the mob's custom name is displayed client side.

      This value has no effect on players, they will always display their name.

      Returns:
      if the custom name is displayed
    • setVisibleByDefault Link icon

      void setVisibleByDefault(boolean visible)
      Sets whether or not this entity is visible by default. If this entity is not visible by default, then Player.showEntity(org.bukkit.plugin.Plugin, org.bukkit.entity.Entity) will need to be called before the entity is visible to a given player.
      Parameters:
      visible - default visibility status
    • isVisibleByDefault Link icon

      boolean isVisibleByDefault()
      Gets whether or not this entity is visible by default. If this entity is not visible by default, then Player.showEntity(org.bukkit.plugin.Plugin, org.bukkit.entity.Entity) will need to be called before the entity is visible to a given player.
      Returns:
      default visibility status
    • getTrackedBy Link icon

      @NotNull @NotNull Set<Player> getTrackedBy()
      Get all players that are currently tracking this entity.

      'Tracking' means that this entity has been sent to the player and that they are receiving updates on its state. Note that the client's 'Entity Distance' setting does not affect the range at which entities are tracked.

      Returns:
      the players tracking this entity, or an empty set if none
    • setGlowing Link icon

      void setGlowing(boolean flag)
      Sets whether the entity has a team colored (default: white) glow. nb: this refers to the 'Glowing' entity property, not whether a glowing potion effect is applied
      Parameters:
      flag - if the entity is glowing
    • isGlowing Link icon

      boolean isGlowing()
      Gets whether the entity is glowing or not. nb: this refers to the 'Glowing' entity property, not whether a glowing potion effect is applied
      Returns:
      whether the entity is glowing
    • setInvulnerable Link icon

      void setInvulnerable(boolean flag)
      Sets whether the entity is invulnerable or not.

      When an entity is invulnerable it can only be damaged by players in creative mode.

      Parameters:
      flag - if the entity is invulnerable
    • isInvulnerable Link icon

      boolean isInvulnerable()
      Gets whether the entity is invulnerable or not.
      Returns:
      whether the entity is
    • isSilent Link icon

      boolean isSilent()
      Gets whether the entity is silent or not.
      Returns:
      whether the entity is silent.
    • setSilent Link icon

      void setSilent(boolean flag)
      Sets whether the entity is silent or not.

      When an entity is silent it will not produce any sound.

      Parameters:
      flag - if the entity is silent
    • hasGravity Link icon

      boolean hasGravity()
      Returns whether gravity applies to this entity.
      Returns:
      whether gravity applies
    • setGravity Link icon

      void setGravity(boolean gravity)
      Sets whether gravity applies to this entity.
      Parameters:
      gravity - whether gravity should apply
    • getPortalCooldown Link icon

      int getPortalCooldown()
      Gets the period of time (in ticks) before this entity can use a portal.
      Returns:
      portal cooldown ticks
    • setPortalCooldown Link icon

      void setPortalCooldown(int cooldown)
      Sets the period of time (in ticks) before this entity can use a portal.
      Parameters:
      cooldown - portal cooldown ticks
    • getScoreboardTags Link icon

      @NotNull @NotNull Set<String> getScoreboardTags()
      Returns a set of tags for this entity.
      Entities can have no more than 1024 tags.
      Returns:
      a set of tags for this entity
    • addScoreboardTag Link icon

      boolean addScoreboardTag(@NotNull @NotNull String tag)
      Add a tag to this entity.
      Entities can have no more than 1024 tags.
      Parameters:
      tag - the tag to add
      Returns:
      true if the tag was successfully added
    • removeScoreboardTag Link icon

      boolean removeScoreboardTag(@NotNull @NotNull String tag)
      Removes a given tag from this entity.
      Parameters:
      tag - the tag to remove
      Returns:
      true if the tag was successfully removed
    • getPistonMoveReaction Link icon

      @NotNull @NotNull PistonMoveReaction getPistonMoveReaction()
      Returns the reaction of the entity when moved by a piston.
      Returns:
      reaction
    • getFacing Link icon

      Get the closest cardinal BlockFace direction an entity is currently facing.
      This will not return any non-cardinal directions such as BlockFace.UP or BlockFace.DOWN.
      Hanging entities will override this call and thus their behavior may be different.
      Returns:
      the entity's current cardinal facing.
      See Also:
    • getPose Link icon

      Gets the entity's current pose. Note that the pose is only updated at the end of a tick, so may be inconsistent with other methods. eg Player.isSneaking() being true does not imply the current pose will be Pose.SNEAKING
      Returns:
      current pose
    • isSneaking Link icon

      boolean isSneaking()
      Returns if the entity is in sneak mode
      Returns:
      true if the entity is in sneak mode
    • setSneaking Link icon

      void setSneaking(boolean sneak)
      Sets the sneak mode the entity.

      Note: For most Entities this does not update Entity's pose and just makes its name tag less visible.

      Parameters:
      sneak - true if the entity should be sneaking
    • setPose Link icon

      default void setPose(@NotNull @NotNull Pose pose)
      Sets the entity's current Pose.

      Note: While poses affect some things like hitboxes, they do not change the entity's state (e.g. having Pose.SNEAKING does not guarantee isSneaking() being true).

      If applied to the Player, they might see a different pose client-side.

      Parameters:
      pose - a new Pose
      See Also:
    • setPose Link icon

      void setPose(@NotNull @NotNull Pose pose, boolean fixed)
      Sets the entity's current Pose.

      Note: While poses affect some things like hitboxes, they do not change the entity's state (e.g. having Pose.SNEAKING does not guarantee isSneaking() being true).

      If applied to the Player, they might see a different pose client-side.

      Parameters:
      pose - a new Pose
      fixed - whether the new Pose should stay until manually changed
    • hasFixedPose Link icon

      boolean hasFixedPose()
      Checks whether the entity has a fixed Pose
      Returns:
      whether the entity has a fixed Pose
      See Also:
    • getSpawnCategory Link icon

      @NotNull @NotNull SpawnCategory getSpawnCategory()
      Get the category of spawn to which this entity belongs.
      Returns:
      the entity´s category spawn
    • isInWorld Link icon

      boolean isInWorld()
      Checks if this entity has been spawned in a world.
      Entities not spawned in a world will not tick, be sent to players, or be saved to the server files.
      Returns:
      whether the entity has been spawned in a world
    • getAsString Link icon

      Get this entity as an NBT string.

      This string should not be relied upon as a serializable value.

      Returns:
      the NBT string or null if one cannot be made
    • createSnapshot Link icon

      Crates an EntitySnapshot representing the current state of this entity.
      Returns:
      a snapshot representing this entity or null if one cannot be made
    • copy Link icon

      Creates a copy of this entity and all its data. Does not spawn the copy in the world.
      Note: Players cannot be copied.
      Returns:
      a copy of this entity.
    • copy Link icon

      Creates a copy of this entity and all its data. Spawns the copy at the given location.
      Note: Players cannot be copied.
      Parameters:
      to - the location to copy to
      Returns:
      a copy of this entity.
    • spigot Link icon

      Specified by:
      spigot in interface CommandSender
    • teamDisplayName Link icon

      @NotNull Component teamDisplayName()
      Gets the entity's display name formatted with their team prefix/suffix and the entity's default hover/click events.
      Returns:
      the team display name
    • asHoverEvent Link icon

      Description copied from interface: net.kyori.adventure.text.event.HoverEventSource
      Creates a hover event with value derived from this object.

      The event value will be passed through the provided callback to allow transforming the original value of the event.

      Specified by:
      asHoverEvent in interface HoverEventSource<HoverEvent.ShowEntity>
      Parameters:
      op - transformation on value
      Returns:
      a hover event
    • getOrigin Link icon

      Gets the location where this entity originates from.

      This value can be null if the entity hasn't yet been added to the world.

      Returns:
      Location where entity originates or null if not yet added
    • fromMobSpawner Link icon

      boolean fromMobSpawner()
      Returns whether this entity was spawned from a mob spawner.
      Returns:
      True if entity spawned from a mob spawner
    • getChunk Link icon

      @NotNull default @NotNull Chunk getChunk()
      Gets the latest chunk an entity is currently or was in.
      Returns:
      The current, or most recent chunk if the entity is invalid (which may load the chunk)
    • getEntitySpawnReason Link icon

      Returns:
      The CreatureSpawnEvent.SpawnReason that initially spawned this entity.
    • isUnderWater Link icon

      boolean isUnderWater()
      Check if entity is underwater
    • isInRain Link icon

      boolean isInRain()
      Check if entity is in rain
    • isInBubbleColumn Link icon

      boolean isInBubbleColumn()
      Check if entity is in bubble column
    • isInWaterOrRain Link icon

      boolean isInWaterOrRain()
      Check if entity is in water or rain
    • isInWaterOrBubbleColumn Link icon

      boolean isInWaterOrBubbleColumn()
      Check if entity is in water or bubble column
    • isInWaterOrRainOrBubbleColumn Link icon

      boolean isInWaterOrRainOrBubbleColumn()
      Check if entity is in water or rain or bubble column
    • isInLava Link icon

      boolean isInLava()
      Check if entity is in lava
    • isTicking Link icon

      boolean isTicking()
      Check if entity is inside a ticking chunk
    • getTrackedPlayers Link icon

      @Deprecated @NotNull @NotNull Set<Player> getTrackedPlayers()
      Deprecated.
      slightly misleading name, use getTrackedBy()
      Returns a set of Players within this entity's tracking range (players that can "see" this entity).
      Returns:
      players in tracking range
    • spawnAt Link icon

      default boolean spawnAt(@NotNull @NotNull Location location)
      Spawns the entity in the world at the given Location with the default spawn reason.

      This will not spawn the entity if the entity is already spawned or has previously been despawned.

      Also, this method will fire the same events as a normal entity spawn.

      Parameters:
      location - The location to spawn the entity at.
      Returns:
      Whether the entity was successfully spawned.
    • spawnAt Link icon

      Spawns the entity in the world at the given Location with the reason given.

      This will not spawn the entity if the entity is already spawned or has previously been despawned.

      Also, this method will fire the same events as a normal entity spawn.

      Parameters:
      location - The location to spawn the entity at.
      reason - The reason for the entity being spawned.
      Returns:
      Whether the entity was successfully spawned.
    • isInPowderedSnow Link icon

      boolean isInPowderedSnow()
      Check if entity is inside powdered snow.
      Returns:
      true if in powdered snow.
    • getX Link icon

      double getX()
      Gets the x-coordinate of this entity
      Returns:
      x-coordinate
    • getY Link icon

      double getY()
      Gets the y-coordinate of this entity
      Returns:
      y-coordinate
    • getZ Link icon

      double getZ()
      Gets the z-coordinate of this entity
      Returns:
      z-coordinate
    • getPitch Link icon

      float getPitch()
      Gets this entity's pitch
      Returns:
      the entity's pitch
      See Also:
    • getYaw Link icon

      float getYaw()
      Gets this entity's yaw
      Returns:
      the entity's yaw
      See Also:
    • collidesAt Link icon

      boolean collidesAt(@NotNull @NotNull Location location)
      Checks for any collisions with the entity's bounding box at the provided location. This will check for any colliding entities (boats, shulkers) / worldborder / blocks. Does not load chunks that are within the bounding box at the specified location.
      Parameters:
      location - the location to check collisions in
      Returns:
      collides or not
    • wouldCollideUsing Link icon

      boolean wouldCollideUsing(@NotNull @NotNull BoundingBox boundingBox)
      This checks using the given boundingbox as the entity's boundingbox if the entity would collide with anything. This will check for any colliding entities (boats, shulkers) / worldborder / blocks. Does not load chunks that are within the bounding box.
      Parameters:
      boundingBox - the box to check collisions in
      Returns:
      collides or not
    • getScheduler Link icon

      @NotNull EntityScheduler getScheduler()
      Returns the task scheduler for this entity. The entity scheduler can be used to schedule tasks that are guaranteed to always execute on the tick thread that owns the entity.

      If you do not need/want to make your plugin run on Folia, use Server.getScheduler() instead.

      Returns:
      the task scheduler for this entity.
      See Also:
    • getScoreboardEntryName Link icon

      @NotNull @NotNull String getScoreboardEntryName()
      Gets the string name of the entity used to track it in Scoreboards.
      Returns:
      the scoreboard entry name
      See Also:
    • broadcastHurtAnimation Link icon

      void broadcastHurtAnimation(@NotNull Collection<Player> players)
      Broadcasts a hurt animation. This fakes incoming damage towards the target entity.

      The target players cannot include this player. For self-damage, use Player.sendHurtAnimation(float).

      Parameters:
      players - the players to broadcast to (cannot include this
      Throws:
      IllegalArgumentException - if this is contained in players