PkmnLib.NET/PkmnLib.Dynamic/Events/SwitchEvent.cs

35 lines
959 B
C#

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