Class: Entity
Represents the state of an entity (a mob, the player, or other moving objects like minecarts) in the world.
Extended by
Constructors
new Entity()
private
new Entity():Entity
Returns
Properties
dimension
readonly
dimension:Dimension
Remarks
Dimension that the entity is currently within.
Throws
This property can throw when used.
fallDistance
Beta
readonly
fallDistance:number
Remarks
The distance an entity has fallen. The value is reset when the entity is teleported. The value is always 1 when gliding with Elytra.
Throws
This property can throw when used.
id
readonly
id:string
Remarks
Unique identifier of the entity. This identifier is intended to be consistent across loads of a world instance. No meaning should be inferred from the value and structure of this unique identifier - do not parse or interpret it. This property is accessible even if Entity.isValid is false.
isClimbing
readonly
isClimbing:boolean
Remarks
Whether the entity is touching a climbable block. For example, a player next to a ladder or a spider next to a stone wall.
Throws
This property can throw when used.
isFalling
readonly
isFalling:boolean
Remarks
Whether the entity has a fall distance greater than 0, or greater than 1 while gliding.
Throws
This property can throw when used.
isInWater
readonly
isInWater:boolean
Remarks
Whether any part of the entity is inside a water block.
Throws
This property can throw when used.
isOnGround
readonly
isOnGround:boolean
Remarks
Whether the entity is on top of a solid block. This property may behave in unexpected ways. This property will always be true when an Entity is first spawned, and if the Entity has no gravity this property may be incorrect.
Throws
This property can throw when used.
isSleeping
readonly
isSleeping:boolean
Remarks
If true, the entity is currently sleeping.
Throws
This property can throw when used.
isSneaking
isSneaking:
boolean
Remarks
Whether the entity is sneaking - that is, moving more slowly and more quietly.
This property can't be edited in read-only mode.
isSprinting
readonly
isSprinting:boolean
Remarks
Whether the entity is sprinting. For example, a player using the sprint action, an ocelot running away or a pig boosting with Carrot on a Stick.
Throws
This property can throw when used.
isSwimming
readonly
isSwimming:boolean
Remarks
Whether the entity is in the swimming state. For example, a player using the swim action or a fish in water.
Throws
This property can throw when used.
lifetimeState
Beta
readonly
lifetimeState:EntityLifetimeState
Remarks
Whether the entity reference that you have is valid or not. For example, an entity may be unloaded if it moves into a chunk that is unloaded, but may be reactivated if the chunk it is within gets reloaded.
location
readonly
location:Vector3
Remarks
Current location of the entity.
Throws
This property can throw when used.
nameTag
nameTag:
string
Remarks
Given name of the entity.
This property can't be edited in read-only mode.
scoreboardIdentity?
optional
readonly
scoreboardIdentity:ScoreboardIdentity
Remarks
Returns a scoreboard identity that represents this entity. Will remain valid when the entity is killed.
target?
Beta
optional
readonly
target:Entity
Remarks
Retrieves or sets an entity that is used as the target of AI-related behaviors, like attacking. If the entity currently has no target returns undefined.
Throws
This property can throw when used.
typeId
readonly
typeId:string
Remarks
Identifier of the type of the entity - for example, 'minecraft:skeleton'. This property is accessible even if Entity.isValid is false.
Methods
addEffect()
addEffect(
effectType
,duration
,options
?):Effect
Parameters
Parameter | Type | Description |
---|---|---|
effectType | string | EffectType | Type of effect to add to the entity. |
duration | number | Amount of time, in ticks, for the effect to apply. There are 20 ticks per second. Use TicksPerSecond constant to convert between ticks and seconds. The value must be within the range [0, 20000000]. |
options ? | EntityEffectOptions | Additional options for the effect. |
Returns
Returns nothing if the effect was added or updated successfully. This can throw an error if the duration or amplifier are outside of the valid ranges, or if the effect does not exist.
Remarks
Adds or updates an effect, like poison, to the entity.
This function can't be called in read-only mode.
Throws
This function can throw errors.
Examples
// Spawns a villager and gives it the poison effect
import {
DimensionLocation,
} from '@minecraft/server';
import { MinecraftEffectTypes } from '@minecraft/vanilla-data';
function spawnPoisonedVillager(location: DimensionLocation) {
const villagerType = 'minecraft:villager_v2<minecraft:ageable_grow_up>';
const villager = location.dimension.spawnEntity(villagerType, location);
const duration = 20;
villager.addEffect(MinecraftEffectTypes.Poison, duration, { amplifier: 1 });
}
// Spawns a fox over a dog
import { DimensionLocation } from '@minecraft/server';
import { MinecraftEntityTypes } from '@minecraft/vanilla-data';
function spawnAdultHorse(location: DimensionLocation) {
// Create fox (our quick brown fox)
const fox = location.dimension.spawnEntity(MinecraftEntityTypes.Fox, {
x: location.x,
y: location.y + 2,
z: location.z,
});
fox.addEffect('speed', 10, {
amplifier: 2,
});
// Create wolf (our lazy dog)
const wolf = location.dimension.spawnEntity(MinecraftEntityTypes.Wolf, location);
wolf.addEffect('slowness', 10, {
amplifier: 2,
});
wolf.isSneaking = true;
}
addTag()
addTag(
tag
):boolean
Parameters
Parameter | Type | Description |
---|---|---|
tag | string | Content of the tag to add. The tag must be less than 256 characters. |
Returns
boolean
Returns true if the tag was added successfully. This can fail if the tag already exists on the entity.
Remarks
Adds a specified tag to an entity.
This function can't be called in read-only mode.
Throws
This function can throw errors.
applyDamage()
applyDamage(
amount
,options
?):boolean
Parameters
Parameter | Type | Description |
---|---|---|
amount | number | Amount of damage to apply. |
options ? | EntityApplyDamageByProjectileOptions | EntityApplyDamageOptions | Additional options about the source of damage, which may add additional effects or spur additional behaviors on this entity. |
Returns
boolean
Whether the entity takes any damage. This can return false if the entity is invulnerable or if the damage applied is less than or equal to 0.
Remarks
Applies a set of damage to an entity.
This function can't be called in read-only mode.
Throws
This function can throw errors.
Example
// A function that applies damage and then heals the entity
import { Entity, EntityComponentTypes, system, world } from '@minecraft/server';
function applyDamageAndHeal(entity: Entity) {
entity.applyDamage(19); // Many mobs have max damage of 20 so this is a near-death mob
system.runTimeout(() => {
const health = entity.getComponent(EntityComponentTypes.Health);
if (health) {
world.sendMessage(`Entity health before heal: ${health.currentValue}`);
health.resetToMaxValue();
world.sendMessage(`Entity after before heal: ${health.currentValue}`);
} else {
console.warn('Entity does not have health component');
}
}, 40); // Run in a few seconds (40 ticks)
}
applyImpulse()
applyImpulse(
vector
):void
Parameters
Parameter | Type | Description |
---|---|---|
vector | Vector3 | Impulse vector. |
Returns
void
Remarks
Applies impulse vector to the current velocity of the entity.
This function can't be called in read-only mode.