namespace PKHeX.Core
{
/// Ribbons introduced in Generation 3 and were transferred to future Generations (4 and 5 only).
internal interface IRibbonSetUnique3
{
/// Ribbon awarded for clearing Hoenn's Battle Tower's Lv. 50 challenge.
bool RibbonWinning { get; set; }
/// Ribbon awarded for clearing Hoenn's Battle Tower's Lv. 100 challenge.
bool RibbonVictory { get; set; }
}
internal static partial class RibbonExtensions
{
private static readonly string[] RibbonSetNamesUnique3 =
{
nameof(IRibbonSetUnique3.RibbonWinning), nameof(IRibbonSetUnique3.RibbonVictory),
};
internal static bool[] RibbonBits(this IRibbonSetUnique3 set)
{
if (set == null)
return new bool[2];
return new[]
{
set.RibbonWinning,
set.RibbonVictory,
};
}
internal static string[] RibbonNames(this IRibbonSetUnique3 _) => RibbonSetNamesUnique3;
}
}