mirror of
https://github.com/kwsch/PKHeX
synced 2024-12-22 18:33:14 +00:00
9deafa851a
* Draft checks for encounter slot mastery * Check encounter mastery flags * Add moves for LA static encounters that don't follow learnset * Add moves on crossover LA static encounters * add alpha moveset population method Now generates and applies moves as the game does Updates some handling of other methods to use Span * Show better message for bad mastery init flags * Insert descending if candidates have same level Level 78 Yanmega: - [01] [10] Quick Attack - [06] [15] Gust - [11] [20] Silver Wind - [18] [28] Hypnosis - [25] [35] Air Slash - [34] [45] Ancient Power - [43] [54] Crunch - [43] [54] Bug Buzz Yields: AlphaMove Crunch* Bug Buzz* Ancient Power * Descending order due to iteration Co-authored-by: Lusamine <30205550+Lusamine@users.noreply.github.com>
26 lines
925 B
C#
26 lines
925 B
C#
using System.Collections.Generic;
|
|
|
|
namespace PKHeX.Core
|
|
{
|
|
/// <summary>
|
|
/// Encounter Slot found in <see cref="GameVersion.RSE"/>.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// Handled differently as these slots have fixed moves that are different from their normal level-up moves.
|
|
/// </remarks>
|
|
/// <inheritdoc cref="EncounterSlot"/>
|
|
internal sealed record EncounterSlot3Swarm : EncounterSlot3, IMoveset
|
|
{
|
|
public IReadOnlyList<int> Moves { get; }
|
|
|
|
public EncounterSlot3Swarm(EncounterArea3 area, ushort species, byte min, byte max, byte slot,
|
|
IReadOnlyList<int> moves) : base(area, species, 0, min, max, slot, 0, 0, 0, 0) => Moves = moves;
|
|
|
|
protected override void SetEncounterMoves(PKM pk, GameVersion version, int level)
|
|
{
|
|
var moves = (int[])Moves;
|
|
pk.SetMoves(moves);
|
|
pk.SetMaximumPPCurrent(moves);
|
|
}
|
|
}
|
|
}
|