Script API - v1.21.120.21
    Preparing search index...

    Class EntityExhaustionComponent

    Defines the interactions with this entity for Exhaustion. Wraps the minecraft.player.exhaustion attribute.

    import {
    world,
    EntityExhaustionComponent,
    EntityHungerComponent,
    EntitySaturationComponent,
    Player,
    system,
    } from "@minecraft/server";

    // Example: Create a feeding function that manages all nutrition aspects
    function feedPlayer(player: Player) {
    const exhaustionComponent = player.getComponent("minecraft:player.exhaustion");
    const hungerComponent = player.getComponent("minecraft:player.hunger");
    const saturationComponent = player.getComponent("minecraft:player.saturation");

    if (hungerComponent && saturationComponent && exhaustionComponent) {
    // Restore hunger
    hungerComponent.resetToMaxValue();

    // Restore saturation
    saturationComponent.resetToMaxValue();

    // Reset exhaustion
    exhaustionComponent.resetToMinValue();

    console.log(`Fed ${player.name} - restored hunger, saturation, and reset exhaustion`);
    }
    }

    // Example: Monitor player nutrition status
    function monitorPlayerNutrition() {
    const players = world.getAllPlayers();

    players.forEach((player) => {
    const hungerComponent = player.getComponent("minecraft:player.hunger");
    const saturationComponent = player.getComponent("minecraft:player.saturation");
    const exhaustionComponent = player.getComponent("minecraft:player.exhaustion");

    if (hungerComponent && saturationComponent && exhaustionComponent) {
    const hungerPercent = (hungerComponent.currentValue / hungerComponent.defaultValue) * 100;
    const saturationPercent = (saturationComponent.currentValue / saturationComponent.defaultValue) * 100;
    const exhaustionPercent = (exhaustionComponent.currentValue / exhaustionComponent.defaultValue) * 100;

    // Warn if nutrition levels are low
    if (hungerPercent < 30) {
    console.log(`Warning: ${player.name} has low hunger (${hungerPercent.toFixed(1)}%)`);
    }

    if (saturationPercent < 20) {
    console.log(`Warning: ${player.name} has low saturation (${saturationPercent.toFixed(1)}%)`);
    }

    if (exhaustionPercent > 80) {
    console.log(`Warning: ${player.name} has high exhaustion (${exhaustionPercent.toFixed(1)}%)`);
    // Auto-feed if exhaustion is too high
    feedPlayer(player);
    }
    }
    });
    }

    // Monitor nutrition every 30 seconds
    system.runInterval(() => {
    monitorPlayerNutrition();
    }, 600); // 600 ticks = 30 seconds

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    currentValue: number

    Current value of this attribute for this instance.

    This property can throw when used.

    This property can't be read in early-execution mode.

    defaultValue: number

    Returns the default defined value for this attribute.

    This property can throw when used.

    This property can't be read in early-execution mode.

    effectiveMax: number

    Returns the effective max of this attribute given any other ambient components or factors.

    This property can throw when used.

    This property can't be read in early-execution mode.

    effectiveMin: number

    Returns the effective min of this attribute given any other ambient components or factors.

    This property can throw when used.

    This property can't be read in early-execution mode.

    entity: Entity

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

    This property can throw when used.

    InvalidEntityError

    This property can't be read in early-execution mode.

    isValid: boolean

    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.

    This property can't be read in early-execution mode.

    typeId: string

    Identifier of the component.

    This property can't be read in early-execution mode.

    componentId: "minecraft:player.exhaustion" = 'minecraft:player.exhaustion'

    Methods

    • Returns void

      Resets the current value of this attribute to the defined default value.

      This function can't be called in read-only mode.

      This function can throw errors.

      This function can't be called in early-execution mode.

    • Returns void

      Resets the current value of this attribute to the maximum defined value.

      This function can't be called in read-only mode.

      This function can throw errors.

      This function can't be called in early-execution mode.

    • Returns void

      Resets the current value of this attribute to the minimum defined value.

      This function can't be called in read-only mode.

      This function can throw errors.

      This function can't be called in early-execution mode.