Button

El componente Button crea un área interactiva que puede pulsarse o presionarse. Admite formas rectangulares o circulares e informa de su estado mediante manejadores de eventos. Usa el Transform de la entidad para la posición.

Opciones

OpciónTipoValor por defectoDescripción
shapeButtonShapeButtonShape.Rectangle o ButtonShape.Circumference.
widthnumber0Ancho en píxeles. Solo para forma rectangular.
heightnumber0Alto en píxeles. Solo para forma rectangular.
radiusnumber0Radio en píxeles. Solo para forma circular.
touchEnabledbooleantrueHabilita la interacción con pantallas táctiles.
offsetVector2(0, 0)Desplazamiento respecto a la posición de la entidad.
onClick() => voidSe llama cuando se hace clic en el botón.
onPressed() => voidSe llama mientras el botón está presionado.

Propiedades de solo lectura

PropiedadTipoDescripción
pressedbooleantrue mientras el botón está presionado.
mouseOverbooleantrue mientras el cursor está sobre el botón.

Ejemplo

import { Transform, Button, ButtonShape } from "angry-pixel";

this.entityManager.createEntity([
    new Transform(),
    new Button({
        shape: ButtonShape.Rectangle,
        width: 100,
        height: 50,
        onClick: () => console.log("clicked"),
    }),
]);