This commit is contained in:
@@ -38,6 +38,7 @@ public static class CopyableMoves
|
||||
"follow_me",
|
||||
"helping_hand",
|
||||
"hold_hands",
|
||||
"instruct",
|
||||
"kings_shield",
|
||||
"mat_block",
|
||||
"me_first",
|
||||
@@ -65,4 +66,66 @@ public static class CopyableMoves
|
||||
"trick",
|
||||
"whirlwind",
|
||||
];
|
||||
|
||||
/// <summary>
|
||||
/// Validates if a move can be selected by Metronome.
|
||||
/// </summary>
|
||||
public static bool CanBeSelectedByMetronome(this IMoveData move) =>
|
||||
!MetronomeUnselectable.Contains(move.Name);
|
||||
|
||||
/// <summary>
|
||||
/// The names of moves that cannot be selected by Metronome. This differs from <see cref="NonCopyable"/>:
|
||||
/// Metronome additionally cannot select moves such as After You and Wide Guard, while moves that are only
|
||||
/// excluded for other copying moves (such as semi-invulnerable and forced-switch moves) remain selectable.
|
||||
/// </summary>
|
||||
private static readonly HashSet<StringKey> MetronomeUnselectable =
|
||||
[
|
||||
"after_you",
|
||||
"assist",
|
||||
"baneful_bunker",
|
||||
"beak_blast",
|
||||
"belch",
|
||||
"bestow",
|
||||
"celebrate",
|
||||
"chatter",
|
||||
"copycat",
|
||||
"counter",
|
||||
"covet",
|
||||
"crafty_shield",
|
||||
"destiny_bond",
|
||||
"detect",
|
||||
"endure",
|
||||
"feint",
|
||||
"focus_punch",
|
||||
"follow_me",
|
||||
"helping_hand",
|
||||
"hold_hands",
|
||||
"instruct",
|
||||
"kings_shield",
|
||||
"mat_block",
|
||||
"me_first",
|
||||
"metronome",
|
||||
"mimic",
|
||||
"mirror_coat",
|
||||
"mirror_move",
|
||||
"nature_power",
|
||||
"protect",
|
||||
"quash",
|
||||
"quick_guard",
|
||||
"rage_powder",
|
||||
"shell_trap",
|
||||
"sketch",
|
||||
"sleep_talk",
|
||||
"snatch",
|
||||
"snore",
|
||||
"spectral_thief",
|
||||
"spiky_shield",
|
||||
"spotlight",
|
||||
"struggle",
|
||||
"switcheroo",
|
||||
"thief",
|
||||
"transform",
|
||||
"trick",
|
||||
"wide_guard",
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user