Clase TriggerData

package me.leo_s.featheredelection.objects.trigger;

import lombok.Getter;
import lombok.Setter;
import org.bukkit.block.Block;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.Event;
import org.bukkit.inventory.ItemStack;

@Getter
@Setter
public class TriggerData {
    private Player player;
    private Entity entity;
    private Block block;
    private ItemStack[] items;
    private Event event;
    private double[] doubles;
    private float[] floats;
    private int[] ints;

    public TriggerData player(Player player){
        this.player = player;
        return this;
    }

    public TriggerData entity(Entity entity) {
        this.entity = entity;
        return this;
    }

    public TriggerData items(ItemStack... items) {
        this.items = items;
        return this;
    }

    public TriggerData doubles(double... doubles) {
        this.doubles = doubles;
        return this;
    }

    public TriggerData floats(float... floats) {
        this.floats = floats;
        return this;
    }

    public TriggerData ints(int... ints) {
        this.ints = ints;
        return this;
    }

    public TriggerData block(Block block) {
        this.block = block;
        return this;
    }

    public TriggerData event(Event event){
        this.event = event;
        return this;
    }
}

Descripción de la Clase TriggerData

La clase TriggerData es una parte fundamental de la API, diseñada para gestionar datos relacionados con eventos y desencadenadores en el juego. Esta clase permite encapsular y transportar información relevante sobre eventos específicos que pueden ocurrir durante la ejecución del plugin. A continuación, se ofrece una explicación detallada de los elementos clave de esta clase:

Propiedades

  • player: Almacena la instancia del jugador (Player) asociado al evento. Puede ser nulo si el evento no está relacionado con un jugador.

  • entity: Almacena la instancia de entidad (Entity) asociada al evento. Puede representar diversas entidades presentes en el juego, como mobs o jugadores.

  • block: Almacena la instancia de bloque (Block) asociada al evento. Esto es útil para eventos que involucran interacciones con bloques en el mundo del juego.

  • items: Almacena un arreglo de ItemStack, lo que permite manejar múltiples ítems asociados al evento.

  • doubles: Almacena un arreglo de valores de tipo double. Puede ser utilizado para transportar datos numéricos decimales relacionados con el evento.

  • floats: Almacena un arreglo de valores de tipo float. Similar a doubles, pero con menor precisión decimal.

  • ints: Almacena un arreglo de valores de tipo int. Utilizado para datos numéricos enteros asociados al evento.

  • event: Almacena la instancia del evento (Event) en sí. Esta propiedad permite acceder a detalles específicos del evento que desencadenó la acción.

Last updated