using PkmnLib.Dynamic.Models;
namespace PkmnLib.Dynamic.Events;
///
/// Event triggered when a Pokémon is switched in.
///
public class SwitchEvent : IEventData
{
///
public SwitchEvent(byte sideIndex, byte position, IPokemon? pokemon)
{
SideIndex = sideIndex;
Position = position;
Pokemon = pokemon;
}
///
/// The index of the side that the Pokémon is switching in on.
///
public byte SideIndex { get; init; }
///
/// The position that the Pokémon is switching in to.
///
public byte Position { get; init; }
///
/// The Pokémon that is switching in. If null, no Pokémon is switching in, and the slot is empty after the switch.
///
public IPokemon? Pokemon { get; init; }
///
public EventBatchId BatchId { get; init; }
}