using PkmnLib.Dynamic.Models;

namespace PkmnLib.Dynamic.Events;

/// <summary>
/// Runs when a move is used, before the move is executed.
/// </summary>
public class MoveUseEvent : IEventData
{
    /// <summary>
    /// The move that is being executed.
    /// </summary>
    public IExecutingMove ExecutingMove { get; }

    /// <inheritdoc cref="MoveUseEvent"/>
    public MoveUseEvent(IExecutingMove executingMove)
    {
        ExecutingMove = executingMove;
    }

    /// <inheritdoc />
    public EventBatchId BatchId { get; init; }
}