mirror of
https://github.com/kwsch/PKHeX.git
synced 2026-04-09 10:56:04 -05:00
Add Count to IPersonalTable Revise EncounterOrigin for evo chain search to use Context instead of Version Use ITrainerID*ReadOnly as pivot for Trainer ID verification skip Add more xmldoc Reconfigure pla dex task fetch to be nullable, match fbs field ordering for clarity
25 lines
1.3 KiB
C#
25 lines
1.3 KiB
C#
namespace PKHeX.Core;
|
|
|
|
/// <summary>
|
|
/// Exposes logic for determining if a move can be learned in a HOME-compatible game context.
|
|
/// Used for validating move legality when transferring Pokémon through Pokémon HOME.
|
|
/// </summary>
|
|
public interface IHomeSource
|
|
{
|
|
/// <summary>
|
|
/// Gets the game environment this source represents (e.g., SW/SH, BD/SP, S/V).
|
|
/// </summary>
|
|
LearnEnvironment Environment { get; }
|
|
|
|
/// <summary>
|
|
/// Determines if the specified <paramref name="move"/> can be learned by the given <paramref name="pk"/> (with evolution criteria <paramref name="evo"/>)
|
|
/// in the context of Pokémon HOME's move relearner, considering the allowed <paramref name="types"/> of move sources.
|
|
/// </summary>
|
|
/// <param name="pk">The Pokémon entity to check.</param>
|
|
/// <param name="evo">The evolution criteria representing the species/form context.</param>
|
|
/// <param name="move">The move ID to check for learnability.</param>
|
|
/// <param name="types">The types of move sources to consider (default is all).</param>
|
|
/// <returns>Information about how the move can be learned, or a default value if it cannot be learned.</returns>
|
|
MoveLearnInfo GetCanLearnHOME(PKM pk, EvoCriteria evo, ushort move, MoveSourceType types = MoveSourceType.All);
|
|
}
|