Builds a simple player form with buttons that let the player take action.

import { world, DimensionLocation } from "@minecraft/server";
import { ActionFormData, ActionFormResponse } from "@minecraft/server-ui";

function showActionForm(log: (message: string, status?: number) => void, targetLocation: DimensionLocation) {
const playerList = world.getPlayers();

if (playerList.length >= 1) {
const form = new ActionFormData()
.title("Test Title")
.body("Body text here!")
.button("btn 1")
.button("btn 2")
.button("btn 3")
.button("btn 4")
.button("btn 5");

form.show(playerList[0]).then((result: ActionFormResponse) => {
if (result.canceled) {
log("Player exited out of the dialog. Note that if the chat window is up, dialogs are automatically canceled.");
return -1;
} else {
log("Your result was: " + result.selection);
}
});
}
}
import { world, DimensionLocation } from "@minecraft/server";
import { ActionFormData, ActionFormResponse } from "@minecraft/server-ui";

function showFavoriteMonth(log: (message: string, status?: number) => void, targetLocation: DimensionLocation) {
const players = world.getPlayers();

if (players.length >= 1) {
const form = new ActionFormData()
.title("Months")
.body("Choose your favorite month!")
.button("January")
.button("February")
.button("March")
.button("April")
.button("May");

form.show(players[0]).then((response: ActionFormResponse) => {
if (response.selection === 3) {
log("I like April too!");
return -1;
}
});
}
}

Constructors

Methods

  • Beta

    Forces a form to show even if the player has another form or menu open. If the player has another form or menu open then it will wait until they close it.

    Parameters

    • player: Player

      The player to show the form to

    • Optionaltimeout: number

      The number of ticks before the function will give up and throw an error, it defaults to 9999

    Returns Promise<ActionFormResponse>

    The response of the form