类 EntityProjectileComponent实验性

The projectile component controls the properties of a projectile entity and allows it to be shot in a given direction. This component is present when the entity has the minecraft:projectile component.

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

function shootArrow(targetLocation: DimensionLocation) {
const velocity = { x: 0, y: 1, z: 5 };

const arrow = targetLocation.dimension.spawnEntity("minecraft:arrow", {
x: targetLocation.x,
y: targetLocation.y + 2,
z: targetLocation.z,
});

const projectileComp = arrow.getComponent("minecraft:projectile") as EntityProjectileComponent;

projectileComp?.shoot(velocity);
}

层级 (查看完整内容)

属性

airInertia: number

The fraction of the projectile's speed maintained every tick while traveling through air.

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

catchFireOnHurt: boolean

If true, the entity will be set on fire when hurt. The default burn duration is 5 seconds. This duration can be modified via the onFireTime property. The entity will not catch fire if immune or if the entity is wet.

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

critParticlesOnProjectileHurt: boolean

If true, the projectile will spawn crit particles when hit by a player. E.g. Player attacking a Shulker bullet.

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

destroyOnProjectileHurt: boolean

If true, the projectile will be destroyed when it takes damage. E.g. Player attacking a Shulker bullet.

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

entity: Entity

The entity that owns this component. The entity will be undefined if it has been removed.

gravity: number

The gravity applied to the projectile. When the entity is not on the ground, subtracts this amount from the projectile’s change in vertical position every tick. The higher the value, the faster the projectile falls. If negative, the entity will rise instead of fall.

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

hitEntitySound?: string

The sound that plays when the projectile hits an entity.

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

hitGroundSound?: string

The sound that plays when the projectile hits a block.

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

hitParticle?: string

The particle that spawns when the projectile hits something.

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

lightningStrikeOnHit: boolean

If true and the weather is thunder and the entity has line of sight to the sky, the entity will be struck by lightning when hit. E.g. A thrown Trident with the Channeling enchantment.

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

liquidInertia: number

The fraction of the projectile's speed maintained every tick while traveling through a liquid.

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

onFireTime: number

Duration in seconds that the entity hit will be on fire for when catchFireOnHurt is set to true.

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

owner?: Entity

The owner of the projectile. This is used to determine what the projectile can collide with and damage. It also determines which entity is assigned as the attacker.

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

shouldBounceOnHit: boolean

If true, the projectile will bounce off mobs when no damage is taken. E.g. A spawning wither.

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

stopOnHit: boolean

If true, the projectile will stop moving when an entity is hit as thought it had been blocked. E.g. Thrown trident on hit behavior.

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

typeId: string

Identifier of the component.

componentId: "minecraft:projectile" = 'minecraft:projectile'

方法

  • 实验性

    返回 boolean

    Whether the component is valid.

    Returns whether the component is valid. A component is considered valid if its owner is valid, in addition to any addition to any additional validation required by the component.

  • 实验性

    参数

    • velocity: Vector3

      The velocity to fire the projectile. This controls both the speed and direction which which the projectile will be shot.

    • 可选options: ProjectileShootOptions

      Optional configuration for the shoot.

    返回 void

    Shoots the projectile with a given velocity. The projectile will be shot from its current location.

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

    Throws if the component or entity no longer exist.