2025-05-03 14:18:12 +02:00

27 lines
807 B
C#

using PkmnLib.Dynamic.Models;
using PkmnLib.Dynamic.Models.Choices;
using PkmnLib.Static;
namespace PkmnLib.Dynamic.Libraries;
/// <summary>
/// Miscellaneous handlings for battles.
/// </summary>
public interface IMiscLibrary
{
/// <summary>
/// Returns the choice that's used when a Pokemon is unable to make the move choice it wants to, or when it has no
/// moves left, yet wants to make a move.
/// </summary>
ITurnChoice ReplacementChoice(IPokemon user, byte targetSide, byte targetPosition);
/// <summary>
/// Gets the current time of day for the battle.
/// </summary>
TimeOfDay GetTimeOfDay();
/// <summary>
/// Returns whether the given Pokemon can flee from the battle.
/// </summary>
bool CanFlee(IBattle battle, IFleeChoice fleeChoice);
}