Defines what blocks this entity can breathe in and gives them the ability to suffocate.

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

const pig = world
.getDimension("overworld")
.getEntities({ type: "minecraft:pig" })[0];
const breathable = pig.getComponent("breathable");
breathable.breathesAir;
breathable.breathesLava;
breathable.breathesSolids;
breathable.breathesWater;
breathable.generatesBubbles;
breathable.inhaleTime;
breathable.suffocateTime;
breathable.totalSupply;
breathable.getBreatheBlocks();
breathable.getNonBreatheBlocks();
breathable.setAirSupply(100); // Assuming 100 as an example value

Hierarchy (View Summary)

Properties

airSupply: number

The current air supply of the entity.

This property can't be edited in read-only mode.

Will throw an error if the air supply is out of bounds [suffocationTime, maxAirSupply].

breathesAir: boolean

If true, this entity can breathe in air.

This property can throw when used.

breathesLava: boolean

If true, this entity can breathe in lava.

This property can throw when used.

breathesSolids: boolean

If true, this entity can breathe in solid blocks.

This property can throw when used.

breathesWater: boolean

If true, this entity can breathe in water.

This property can throw when used.

canBreathe: boolean

If true, the entity is able to breathe.

This property can throw when used.

entity: Entity

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

generatesBubbles: boolean

If true, this entity will have visible bubbles while in water.

This property can throw when used.

inhaleTime: number

Time in seconds to recover breath to maximum.

This property can throw when used.

suffocateTime: number

Time in seconds between suffocation damage.

This property can throw when used.

totalSupply: number

Time in seconds the entity can hold its breath.

This property can throw when used.

typeId: string

Identifier of the component.

componentId: "minecraft:breathable" = 'minecraft:breathable'

Methods

  • Returns BlockPermutation[]

    List of blocks this entity can breathe in, in addition to the separate properties for classes of blocks.

    This function can throw errors.

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