类 SimulatedPlayer实验性

A simulated player can be used within GameTests to represent how a player moves throughout the world and to support testing of how entities and the environment will react to a player. This type derives much of its structure and methods from the minecraftserver.Player type. Note that many types of events that may be available for entities more broadly, such as item use events, may not fire in the same capacity for simulated players.

层级 (查看完整内容)

属性

方法

属性

camera: Camera

The player's Camera.

This property can throw when used.

clientSystemInfo: ClientSystemInfo

Contains the player's device information.

This property can throw when used.

Error

dimension: Dimension

Dimension that the entity is currently within.

This property can throw when used.

headRotation: Vector2

Rotation of the head across pitch and yaw angles.

This property can throw when used.

id: string

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.

inputInfo: InputInfo

Contains the player's input information.

inputPermissions: PlayerInputPermissions

Input permissions of the player.

isClimbing: boolean

Whether the entity is touching a climbable block. For example, a player next to a ladder or a spider next to a stone wall.

This property can throw when used.

isEmoting: boolean

If true, the player is currently emoting.

This property can throw when used.

isFalling: boolean

Whether the entity has a fall distance greater than 0, or greater than 1 while gliding.

This property can throw when used.

isFlying: boolean

Whether the player is flying. For example, in Creative or Spectator mode.

This property can throw when used.

isGliding: boolean

Whether the player is gliding with Elytra.

This property can throw when used.

isInWater: boolean

Whether any part of the entity is inside a water block.

This property can throw when used.

isJumping: boolean

Whether the player is jumping. This will remain true while the player is holding the jump action.

This property can throw when used.

isOnGround: boolean

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.

This property can throw when used.

isSleeping: boolean

If true, the entity is currently sleeping.

This property can throw when used.

isSneaking: boolean

Whether the entity is sneaking - that is, moving more slowly and more quietly.

无法在只读模式下修改此属性,详见 WorldBeforeEvents

isSprinting: boolean

Returns whether the simulated player is sprinting.

无法在只读模式下修改此属性,详见 WorldBeforeEvents

isSwimming: boolean

Whether the entity is in the swimming state. For example, a player using the swim action or a fish in water.

This property can throw when used.

level: number

The current overall level for the player, based on their experience.

This property can throw when used.

location: Vector3

Current location of the entity.

This property can throw when used.

name: string

Name of the player.

This property can throw when used.

nameTag: string

Given name of the entity.

无法在只读模式下修改此属性,详见 WorldBeforeEvents

onScreenDisplay: ScreenDisplay

Contains methods for manipulating the on-screen display of a Player.

This property can throw when used.

scoreboardIdentity?: ScoreboardIdentity

Returns a scoreboard identity that represents this entity. Will remain valid when the entity is killed.

selectedSlotIndex: number

无法在只读模式下修改此属性,详见 WorldBeforeEvents

target?: Entity

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.

This property can throw when used.

totalXpNeededForNextLevel: number

The overall total set of experience needed to achieve the next level for a player.

This property can throw when used.

typeId: string

Identifier of the type of the entity - for example, 'minecraft:skeleton'. This property is accessible even if Entity.isValid is false.

xpEarnedAtCurrentLevel: number

The current set of experience achieved for the player.

This property can throw when used.

方法

  • 实验性

    参数

    • 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.

    返回 Effect

    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.

    Adds or updates an effect, like poison, to the entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { DimensionLocation } from "@minecraft/server";
    import { MinecraftEffectTypes } from "@minecraft/vanilla-data";

    function spawnPoisonedVillager(
    targetLocation: DimensionLocation
    ) {
    const villagerType = "minecraft:villager_v2<minecraft:ageable_grow_up>";
    const villager = targetLocation.dimension.spawnEntity(villagerType, targetLocation);
    const duration = 20;

    villager.addEffect(MinecraftEffectTypes.Poison, duration, { amplifier: 1 });
    }
    import { DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes, MinecraftEffectTypes } from "@minecraft/vanilla-data";

    function quickFoxLazyDog(log: (message: string, status?: number) => void, targetLocation: DimensionLocation) {
    const fox = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Fox, {
    x: targetLocation.x + 1,
    y: targetLocation.y + 2,
    z: targetLocation.z + 3,
    });

    fox.addEffect(MinecraftEffectTypes.Speed, 10, {
    amplifier: 2,
    });
    log("Created a fox.");

    const wolf = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Wolf, {
    x: targetLocation.x + 4,
    y: targetLocation.y + 2,
    z: targetLocation.z + 3,
    });
    wolf.addEffect(MinecraftEffectTypes.Slowness, 10, {
    amplifier: 2,
    });
    wolf.isSneaking = true;
    log("Created a sneaking wolf.", 1);
    }
  • 实验性

    参数

    • amount: number

      Amount of experience to add. Note that this can be negative. Min/max bounds at -2^24 ~ 2^24

    返回 number

    Returns the current experience of the Player.

    Adds/removes experience to/from the Player and returns the current experience of the Player.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • amount: number

      Amount to add to the player. Min/max bounds at -2^24 ~ 2^24

    返回 number

    Returns the current level of the Player.

    Adds/removes level to/from the Player and returns the current level of the Player.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • tag: string

      Content of the tag to add. The tag must be less than 256 characters.

    返回 boolean

    Returns true if the tag was added successfully. This can fail if the tag already exists on the entity.

    Adds a specified tag to an entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { EntityQueryOptions, DimensionLocation } from "@minecraft/server";

    function tagsQuery(targetLocation: DimensionLocation) {
    const mobs = ["creeper", "skeleton", "sheep"];

    // create some sample mob data
    for (let i = 0; i < 10; i++) {
    const mobTypeId = mobs[i % mobs.length];
    const entity = targetLocation.dimension.spawnEntity(mobTypeId, targetLocation);
    entity.addTag("mobparty." + mobTypeId);
    }

    const eqo: EntityQueryOptions = {
    tags: ["mobparty.skeleton"],
    };

    for (const entity of targetLocation.dimension.getEntities(eqo)) {
    entity.kill();
    }
    }
  • 实验性

    参数

    返回 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.

    Applies a set of damage to an entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { system, EntityHealthComponent, EntityComponentTypes, DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function applyDamageThenHeal(
    log: (message: string, status?: number) => void,
    targetLocation: DimensionLocation
    ) {
    const skelly = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Skeleton, targetLocation);

    skelly.applyDamage(19); // skeletons have max damage of 20 so this is a near-death skeleton

    system.runTimeout(() => {
    const health = skelly.getComponent(EntityComponentTypes.Health) as EntityHealthComponent;
    log("Skeleton health before heal: " + health?.currentValue);
    health?.resetToMaxValue();
    log("Skeleton health after heal: " + health?.currentValue);
    }, 20);
    }
  • 实验性

    参数

    返回 void

    Applies impulse vector to the current velocity of the entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function applyImpulse(targetLocation: DimensionLocation) {
    const zombie = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Zombie, targetLocation);

    zombie.clearVelocity();

    // throw the zombie up in the air
    zombie.applyImpulse({ x: 0, y: 0.5, z: 0 });
    }
  • 实验性

    参数

    • directionX: number

      X direction in horizontal plane.

    • directionZ: number

      Z direction in horizontal plane.

    • horizontalStrength: number

      Knockback strength for the horizontal vector.

    • verticalStrength: number

      Knockback strength for the vertical vector.

    返回 void

    Applies impulse vector to the current velocity of the entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { EntityQueryOptions, DimensionLocation } from "@minecraft/server";

    function bounceSkeletons(targetLocation: DimensionLocation) {
    const mobs = ["creeper", "skeleton", "sheep"];

    // create some sample mob data
    for (let i = 0; i < 10; i++) {
    targetLocation.dimension.spawnEntity(mobs[i % mobs.length], targetLocation);
    }

    const eqo: EntityQueryOptions = {
    type: "skeleton",
    };

    for (const entity of targetLocation.dimension.getEntities(eqo)) {
    entity.applyKnockback(0, 0, 0, 1);
    }
    }
  • 实验性

    返回 boolean

    Causes the simulated player to make an attack 'swipe'. Returns true if the attack was performed - for example, the player was not on cooldown and had a valid target. Target selection is performed by raycasting from the player's head.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    返回 boolean

    Causes the simulated player to attack the provided target. Returns true if the attack was performed - for example, the player was not on cooldown and had a valid target. The attack can be performed at any distance and does not require line of sight to the target entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • blockLocation: Vector3

      Location of the block to interact with.

    • 可选direction: Direction

      Direction to place the specified item within.

    返回 boolean

    Destroys the block at blockLocation, respecting the rules of the server player's game mode. The block will be hit until broken, an item is used or stopBreakingBlock is called. Returns true if the block at blockLocation is solid.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    返回 void

    Sets the current velocity of the Entity to zero. Note that this method may not have an impact on Players.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function applyImpulse(targetLocation: DimensionLocation) {
    const zombie = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Zombie, targetLocation);

    zombie.clearVelocity();

    // throw the zombie up in the air
    zombie.applyImpulse({ x: 0, y: 0.5, z: 0 });
    }
  • 实验性

    返回 void

    Simulates and performs a disconnection of the simulated player from the world.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    返回 void

    Eats an item, providing the item's hunger and saturation effects to the player. Can only be used on food items.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    Throws if the item is not a food item.

  • 实验性

    参数

    • 可选useEffects: boolean

      Whether to show any visual effects connected to the extinguishing.

    返回 boolean

    Returns whether the entity was on fire.

    Extinguishes the fire if the entity is on fire. Note that you can call getComponent('minecraft:onfire') and, if present, the entity is on fire.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { system, EntityOnFireComponent, EntityComponentTypes, DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function setOnFire(log: (message: string, status?: number) => void, targetLocation: DimensionLocation) {
    const skelly = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Skeleton, targetLocation);

    skelly.setOnFire(20, true);

    system.runTimeout(() => {
    const onfire = skelly.getComponent(EntityComponentTypes.OnFire) as EntityOnFireComponent;
    log(onfire?.onFireTicksRemaining + " fire ticks remaining.");

    skelly.extinguishFire(true);
    log("Never mind. Fire extinguished.");
    }, 20);
    }
  • 实验性

    返回 void

    Causes the simulated player to start flying as though they were flying in creative mode. For flying with Elytra, see function glide.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • identifier: string

      The property identifier.

    返回
        | string
        | number
        | boolean
        | Vector3

    Returns the value for the property, or undefined if the property has not been set.

    Returns a property value.

    This function can throw errors.

  • 实验性

    返回 string[]

    A string array of the dynamic properties set on this entity.

    Returns the available set of dynamic property identifiers that have been used on this entity.

    This function can throw errors.

  • 实验性

    返回 number

    Returns the total size, in bytes, of all the dynamic properties that are currently stored for this entity. This includes the size of both the key and the value. This can be useful for diagnosing performance warning signs - if, for example, an entity has many megabytes of associated dynamic properties, it may be slow to load on various devices.

    This function can throw errors.

  • 实验性

    参数

    • effectType: string | EffectType

      The effect identifier.

    返回 Effect

    Effect object for the specified effect, undefined if the effect is not present, or throws an error if the effect does not exist.

    Returns the effect for the specified EffectType on the entity, undefined if the effect is not present, or throws an error if the effect does not exist.

    This function can throw errors.

  • 实验性

    参数

    • cooldownCategory: string

      Specifies the cooldown category to retrieve the current cooldown for.

    返回 number

    Gets the current item cooldown time for a particular cooldown category.

    This function can throw errors.

  • 实验性

    参数

    • identifier: string

      The entity Property identifier.

    返回 string | number | boolean

    Returns the current property value. For enum properties, a string is returned. For float and int properties, a number is returned. For undefined properties, undefined is returned.

    Gets an entity Property value. If the property was set using the setProperty function within the same tick, the updated value will not be reflected until the subsequent tick.

    Throws if the entity is invalid.

  • 实验性

    返回 string[]

    An array containing all tags as strings.

    Returns all tags associated with the entity.

    This function can throw errors.

  • 实验性

    返回 Vector3

    Returns the current velocity vector of the entity.

    Returns the current velocity vector of the entity.

    This function can throw errors.

    import { system, DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function getFireworkVelocity(
    log: (message: string, status?: number) => void,
    targetLocation: DimensionLocation
    ) {
    const fireworkRocket = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.FireworksRocket, targetLocation);

    system.runTimeout(() => {
    const velocity = fireworkRocket.getVelocity();

    log("Velocity of firework is: (x: " + velocity.x + ", y:" + velocity.y + ", z:" + velocity.z + ")");
    }, 5);
    }
  • 实验性

    参数

    • itemStack: ItemStack

      Item to give.

    • 可选selectSlot: boolean

      Whether to set the selected slot once given.

    返回 boolean

    Gives the simulated player a particular item stack.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    返回 boolean

    Returns true if the simulated player begins to glide. Returns false if the player is already gliding, or the player does not have Elytra equipped, is in water or is on the ground.

    Causes the simulated player to start gliding. Elytra must be equipped and the player must be in the air.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • componentId: string

      The identifier of the component (e.g., 'minecraft:rideable') to retrieve. If no namespace prefix is specified, 'minecraft:' is assumed.

    返回 boolean

    Returns true if the specified component is present on this entity.

    Returns true if the specified component is present on this entity.

  • 实验性

    参数

    • tag: string

      Identifier of the tag to test for.

    返回 boolean

    Returns whether an entity has a particular tag.

    Returns whether an entity has a particular tag.

    This function can throw errors.

  • 实验性

    返回 boolean

    Performs a raycast from the player’s head and interacts with the first intersected block or entity. Returns true if the interaction was successful. Maximum range is 6 blocks.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • blockLocation: Vector3

      Location of the block to interact with.

    • 可选direction: Direction

      Direction to place the specified item within.

    返回 boolean

    Causes the simulated player to interact with a block. The block at the specified block location must be solid. Returns true if the interaction was performed.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • entity: Entity

      Entity to interact with.

    返回 boolean

    Causes the simulated player to interact with a mob. Returns true if the interaction was performed.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    返回 boolean

    Returns true if this player has operator-level permissions.

    This function can throw errors.

  • 实验性

    返回 boolean

    Whether the entity is valid.

    Returns whether the entity can be manipulated by script. A Player is considered valid when it's EntityLifetimeState is set to Loaded.

  • 实验性

    返回 boolean

    True if a jump was performed.

    Causes the simulated player to jump.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    返回 boolean

    Returns true if entity can be killed (even if it is already dead), otherwise it returns false.

    Kills this entity. The entity will drop loot as normal.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { EntityQueryOptions, DimensionLocation } from "@minecraft/server";

    function tagsQuery(targetLocation: DimensionLocation) {
    const mobs = ["creeper", "skeleton", "sheep"];

    // create some sample mob data
    for (let i = 0; i < 10; i++) {
    const mobTypeId = mobs[i % mobs.length];
    const entity = targetLocation.dimension.spawnEntity(mobTypeId, targetLocation);
    entity.addTag("mobparty." + mobTypeId);
    }

    const eqo: EntityQueryOptions = {
    tags: ["mobparty.skeleton"],
    };

    for (const entity of targetLocation.dimension.getEntities(eqo)) {
    entity.kill();
    }
    }
  • 实验性

    参数

    • targetLocation: Vector3

      The target location that this entity should face/look towards.

    返回 void

    Sets the rotation of the entity to face a target location. Both pitch and yaw will be set, if applicable, such as for mobs where the pitch controls the head tilt and the yaw controls the body rotation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    返回 void

    Rotates the simulated player's head/body to look at the given block location.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    返回 boolean

    Returns true if the entity matches the criteria in the passed in EntityQueryOptions, otherwise it returns false.

    Matches the entity against the passed in options. Uses the location of the entity for matching if the location is not specified in the passed in EntityQueryOptions.

    Throws if the query options are misconfigured.

  • 实验性

    参数

    • westEast: number
    • northSouth: number
    • 可选speed: number

    返回 void

    Orders the simulated player to walk in the given direction relative to the GameTest.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • leftRight: number
    • backwardForward: number
    • 可选speed: number

    返回 void

    Orders the simulated player to walk in the given direction relative to the player's current rotation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    返回 void

    Orders the simulated player to move to the given block location in a straight line. If a move or navigation is already playing, this will override the last move/navigation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    返回 void

    Orders the simulated player to move to the given location in a straight line. If a move or navigation is already playing, this will override the last move/navigation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • blockLocation: Vector3
    • 可选speed: number

    返回 NavigationResult

    Orders the simulated player to move to a specific block location using navigation. If a move or navigation is already playing, this will override the last move/walk. Note that if the simulated player gets stuck, that simulated player will stop. The player must be touching the ground in order to start navigation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • location: Vector3
    • 可选speed: number

    返回 NavigationResult

    Orders the simulated player to move to a specific location using navigation. If a move or navigation is already playing, this will override the last move/walk. Note that if the simulated player gets stuck, that simulated player will stop. The player must be touching the ground in order to start navigation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • locations: Vector3[]

      A list of locations to use for routing.

    • 可选speed: number

      Net speed to use for doing the navigation.

    返回 void

    Use navigation to follow the route provided via the locations parameter. If a move or navigation is already playing, this will override the last move/navigation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • animationName: string

      The animation identifier. e.g. animation.creeper.swelling

    • 可选options: PlayAnimationOptions

      Additional options to control the playback and transitions of the animation.

    返回 void

    Cause the entity to play the given animation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • trackId: string

      Identifier of the music track to play.

    • 可选musicOptions: MusicOptions

      Additional options for the music track.

    返回 void

    Plays a music track that only this particular player can hear.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • soundId: string
    • 可选soundOptions: PlayerSoundOptions

      Additional optional options for the sound.

    返回 void

    Plays a sound that only this particular player can hear.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { world, MusicOptions, WorldSoundOptions, PlayerSoundOptions, DimensionLocation } from "@minecraft/server";

    function playMusicAndSound(targetLocation: DimensionLocation) {
    const players = world.getPlayers();

    const musicOptions: MusicOptions = {
    fade: 0.5,
    loop: true,
    volume: 1.0,
    };
    world.playMusic("music.menu", musicOptions);

    const worldSoundOptions: WorldSoundOptions = {
    pitch: 0.5,
    volume: 4.0,
    };
    world.playSound("ambient.weather.thunder", targetLocation, worldSoundOptions);

    const playerSoundOptions: PlayerSoundOptions = {
    pitch: 1.0,
    volume: 1.0,
    };

    players[0].playSound("bucket.fill_water", playerSoundOptions);
    }
  • 实验性

    参数

    • id: string
    • value: string

    返回 void

    This is an internal-facing method for posting a system message to downstream clients.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • trackId: string

      Identifier of the music track to play.

    • 可选musicOptions: MusicOptions

      Additional options for the music track.

    返回 void

    Queues an additional music track that only this particular player can hear. If a track is not playing, a music track will play.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    An error will be thrown if volume is less than 0.0. An error will be thrown if fade is less than 0.0.

  • 实验性

    返回 void

    Immediately removes the entity from the world. The removed entity will not perform a death animation or drop loot upon removal.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • effectType: string | EffectType

      The effect identifier.

    返回 boolean

    Returns true if the effect has been removed. Returns false if the effect is not found or does not exist.

    Removes the specified EffectType on the entity, or returns false if the effect is not present.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • tag: string

      Content of the tag to remove.

    返回 boolean

    Returns whether the tag existed on the entity.

    Removes a specified tag from an entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • identifier: string

      The Entity Property identifier.

    返回 string | number | boolean

    Returns the default property value. For enum properties, a string is returned. For float and int properties, a number is returned. For undefined properties, undefined is returned.

    Resets an Entity Property back to its default value, as specified in the Entity's definition. This property change is not applied until the next tick.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    Throws if the entity is invalid.

    minecraftcommon.EngineError

    Error

  • 实验性

    参数

    • angleInDegrees: number

    返回 void

    Causes the simulated player to turn by the provided angle, relative to the player's current rotation.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • commandString: string

      Command to run. Note that command strings should not start with slash.

    返回 Promise<CommandResult>

    For commands that return data, returns a JSON structure with command response values.

    Runs a particular command asynchronously from the context of this entity. Note that there is a maximum queue of 128 asynchronous commands that can be run in a given tick.

    This function can throw errors.

  • 实验性

    参数

    返回 void

    Sends a message to the player.

    This method can throw if the provided RawMessage is in an invalid format. For example, if an empty name string is provided to score.

    import { world, DimensionLocation } from "@minecraft/server";

    function nestedTranslation(targetLocation: DimensionLocation) {
    // Displays "Apple or Coal"
    const rawMessage = {
    translate: "accessibility.list.or.two",
    with: { rawtext: [{ translate: "item.apple.name" }, { translate: "item.coal.name" }] },
    };
    world.sendMessage(rawMessage);
    }
    import { world, DimensionLocation } from "@minecraft/server";

    function scoreWildcard(targetLocation: DimensionLocation) {
    // Displays the player's score for objective "obj". Each player will see their own score.
    const rawMessage = { score: { name: "*", objective: "obj" } };
    world.sendMessage(rawMessage);
    }
    import { world, DimensionLocation } from "@minecraft/server";

    function sendBasicMessage(targetLocation: DimensionLocation) {
    const players = world.getPlayers();

    players[0].sendMessage("Hello World!");
    }
    import { world, DimensionLocation } from "@minecraft/server";

    function sendPlayerMessages(targetLocation: DimensionLocation) {
    for (const player of world.getAllPlayers()) {
    // Displays "First or Second"
    const rawMessage = { translate: "accessibility.list.or.two", with: ["First", "Second"] };
    player.sendMessage(rawMessage);

    // Displays "Hello, world!"
    player.sendMessage("Hello, world!");

    // Displays "Welcome, Amazing Player 1!"
    player.sendMessage({ translate: "authentication.welcome", with: ["Amazing Player 1"] });

    // Displays the player's score for objective "obj". Each player will see their own score.
    const rawMessageWithScore = { score: { name: "*", objective: "obj" } };
    player.sendMessage(rawMessageWithScore);

    // Displays "Apple or Coal"
    const rawMessageWithNestedTranslations = {
    translate: "accessibility.list.or.two",
    with: { rawtext: [{ translate: "item.apple.name" }, { translate: "item.coal.name" }] },
    };
    player.sendMessage(rawMessageWithNestedTranslations);
    }
    }
    import { world, DimensionLocation } from "@minecraft/server";

    function sendTranslatedMessage(
    targetLocation: DimensionLocation
    ) {
    const players = world.getPlayers();

    players[0].sendMessage({ translate: "authentication.welcome", with: ["Amazing Player 1"] });
    }
  • 实验性

    参数

    • angleInDegrees: number

    返回 void

    Causes the simulated player to turn to face the provided angle, relative to the GameTest.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • identifier: string

      The property identifier.

    • 可选value:
          | string
          | number
          | boolean
          | Vector3

      Data value of the property to set.

    返回 void

    Sets a specified property to a value.

    This function can throw errors.

  • 实验性

    参数

    • itemStack: ItemStack

      Item to set.

    • slot: number

      Slot to place the given item in.

    • 可选selectSlot: boolean

      Whether to set the selected slot once set.

    返回 boolean

    Sets a particular item for the simulated player.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • seconds: number

      Length of time to set the entity on fire.

    • 可选useEffects: boolean

      Whether side-effects should be applied (e.g. thawing freeze) and other conditions such as rain or fire protection should be taken into consideration.

    返回 boolean

    Whether the entity was set on fire. This can fail if seconds is less than or equal to zero, the entity is wet or the entity is immune to fire.

    Sets an entity on fire (if it is not in water or rain). Note that you can call getComponent('minecraft:onfire') and, if present, the entity is on fire.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { system, EntityOnFireComponent, EntityComponentTypes, DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function setOnFire(log: (message: string, status?: number) => void, targetLocation: DimensionLocation) {
    const skelly = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Skeleton, targetLocation);

    skelly.setOnFire(20, true);

    system.runTimeout(() => {
    const onfire = skelly.getComponent(EntityComponentTypes.OnFire) as EntityOnFireComponent;
    log(onfire?.onFireTicksRemaining + " fire ticks remaining.");

    skelly.extinguishFire(true);
    log("Never mind. Fire extinguished.");
    }, 20);
    }
  • 实验性

    参数

    • isOp: boolean

    返回 void

    Will change the specified players permissions, and whether they are operator or not.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • identifier: string

      The Entity Property identifier.

    • value: string | number | boolean

      The property value. The provided type must be compatible with the type specified in the entity's definition.

    返回 void

    Sets an Entity Property to the provided value. This property change is not applied until the next tick.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    Throws if the entity is invalid. Throws if an invalid identifier is provided. Throws if the provided value type does not match the property type. Throws if the provided value is outside the expected range (int, float properties). Throws if the provided string value does not match the set of accepted enum values (enum properties

  • 实验性

    参数

    • rotation: Vector2

      The x and y rotation of the entity (in degrees). For most mobs, the x rotation controls the head tilt and the y rotation controls the body rotation.

    返回 void

    Sets the main rotation of the entity.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • effectName: string

      Identifier of the particle to create.

    • location: Vector3

      The location at which to create the particle emitter.

    • 可选molangVariables: MolangVariableMap

      A set of optional, customizable variables that can be adjusted for this particle.

    返回 void

    Creates a new particle emitter at a specified location in the world. Only visible to the target player.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    import { world, MolangVariableMap, Vector3 } from '@minecraft/server';

    world.afterEvents.playerSpawn.subscribe(event => {
    const targetLocation = event.player.location;
    for (let i = 0; i < 100; i++) {
    const molang = new MolangVariableMap();

    molang.setColorRGB('variable.color', {
    red: Math.random(),
    green: Math.random(),
    blue: Math.random()
    });

    const newLocation: Vector3 = {
    x: targetLocation.x + Math.floor(Math.random() * 8) - 4,
    y: targetLocation.y + Math.floor(Math.random() * 8) - 4,
    z: targetLocation.z + Math.floor(Math.random() * 8) - 4,
    };
    event.player.spawnParticle('minecraft:colored_flame_particle', newLocation, molang);
    }
    });
  • 实验性

    参数

    • cooldownCategory: string

      Specifies the cooldown category to retrieve the current cooldown for.

    • tickDuration: number

      Duration in ticks of the item cooldown.

    返回 void

    Sets the item cooldown time for a particular cooldown category.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    返回 void

    Stops destroying the block that is currently being hit.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    返回 void

    Stops moving/walking/following if the simulated player is moving.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • location: Vector3

      New location for the entity.

    • 可选teleportOptions: TeleportOptions

      Options regarding the teleport operation.

    返回 void

    Teleports the selected entity to a new location

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

    import { system, DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function teleport(targetLocation: DimensionLocation) {
    const cow = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Cow, targetLocation);

    system.runTimeout(() => {
    cow.teleport(
    { x: targetLocation.x + 2, y: targetLocation.y + 2, z: targetLocation.z + 2 },
    {
    facingLocation: targetLocation,
    }
    );
    }, 20);
    }
    import { system, DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function teleportMovement(targetLocation: DimensionLocation) {
    const pig = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Pig, targetLocation);

    let inc = 1;
    const runId = system.runInterval(() => {
    pig.teleport(
    { x: targetLocation.x + inc / 4, y: targetLocation.y + inc / 4, z: targetLocation.z + inc / 4 },
    {
    facingLocation: targetLocation,
    }
    );

    if (inc > 100) {
    system.clearRun(runId);
    }
    inc++;
    }, 4);
    }
  • 实验性

    参数

    • eventName: string

      Name of the entity type event to trigger. If a namespace is not specified, minecraft: is assumed.

    返回 void

    Triggers an entity type event. For every entity, a number of events are defined in an entities' definition for key entity behaviors; for example, creepers have a minecraft:start_exploding type event.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    If the event is not defined in the definition of the entity, an error will be thrown.

    // A function that spawns a creeper and triggers it to explode immediately
    import { DimensionLocation } from '@minecraft/server';
    import { MinecraftEntityTypes } from '@minecraft/vanilla-data';

    function spawnExplodingCreeper(location: DimensionLocation) {
    const creeper = location.dimension.spawnEntity(MinecraftEntityTypes.Creeper, location);

    creeper.triggerEvent('minecraft:start_exploding_forced');
    }
    import { DimensionLocation } from "@minecraft/server";
    import { MinecraftEntityTypes } from "@minecraft/vanilla-data";

    function triggerEvent(targetLocation: DimensionLocation) {
    const creeper = targetLocation.dimension.spawnEntity(MinecraftEntityTypes.Creeper, targetLocation);

    creeper.triggerEvent("minecraft:start_exploding_forced");
    }
  • 实验性

    参数

    • location: Vector3

      Location to teleport the entity to.

    • 可选teleportOptions: TeleportOptions

      Options regarding the teleport operation.

    返回 boolean

    Returns whether the teleport succeeded. This can fail if the destination chunk is unloaded or if the teleport would result in intersecting with blocks.

    Attempts to try a teleport, but may not complete the teleport operation (for example, if there are blocks at the destination.)

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    返回 boolean

    Causes the simulated player to use an item. Does not consume the item. Returns false if the item is on cooldown.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • slot: number

      Index of the inventory slot.

    返回 boolean

    Causes the simulated player to hold and use an item in their inventory.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • slot: number

      Index of the slot to use.

    • blockLocation: Vector3

      Location to use the item upon.

    • 可选direction: Direction

      Direction to place the specified item within.

    • 可选faceLocation: Vector3

      Location relative to the bottom north-west corner of the block where the item is placed.

    返回 boolean

    Causes the simulated player to use an item in their inventory on a block. The block at the specified block location must be solid. Returns true if the item was used.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.

  • 实验性

    参数

    • itemStack: ItemStack

      Item to use.

    • blockLocation: Vector3

      Location to use the item upon.

    • 可选direction: Direction

      Direction to place the specified item within.

    • 可选faceLocation: Vector3

      Location relative to the bottom north-west corner of the block where the item is placed.

    返回 boolean

    Causes the simulated player to use an item on a block. The block at the specified block location must be solid. Returns true if the item was used.

    无法在只读模式下调用此函数,详见 WorldBeforeEvents

    This function can throw errors.