mirror of
https://github.com/kwsch/PKHeX
synced 2024-12-19 17:03:12 +00:00
267613270e
Relocate the SetRandomEC at the tail end of the generator into the specific classes that set EC, so that our correlation generators don't have their EC overwritten at the end.
42 lines
1.3 KiB
C#
42 lines
1.3 KiB
C#
namespace PKHeX.Core
|
|
{
|
|
/// <summary>
|
|
/// Generation 6 Static Encounter
|
|
/// </summary>
|
|
/// <inheritdoc cref="EncounterStatic"/>
|
|
public sealed record EncounterStatic6 : EncounterStatic, IContestStats
|
|
{
|
|
public override int Generation => 6;
|
|
|
|
public byte CNT_Cool { get; init; }
|
|
public byte CNT_Beauty { get; init; }
|
|
public byte CNT_Cute { get; init; }
|
|
public byte CNT_Smart { get; init; }
|
|
public byte CNT_Tough { get; init; }
|
|
public byte CNT_Sheen { get; init; }
|
|
|
|
public EncounterStatic6(GameVersion game) : base(game) { }
|
|
|
|
protected override bool IsMatchLocation(PKM pkm)
|
|
{
|
|
if (base.IsMatchLocation(pkm))
|
|
return true;
|
|
|
|
if (Species != (int) Core.Species.Pikachu)
|
|
return false;
|
|
|
|
// Cosplay Pikachu is given from multiple locations
|
|
var loc = pkm.Met_Location;
|
|
return loc is 180 or 186 or 194;
|
|
}
|
|
|
|
protected override void ApplyDetails(ITrainerInfo sav, EncounterCriteria criteria, PKM pk)
|
|
{
|
|
base.ApplyDetails(sav, criteria, pk);
|
|
var pk6 = (PK6)pk;
|
|
this.CopyContestStatsTo(pk6);
|
|
pk6.SetRandomMemory6();
|
|
pk6.SetRandomEC();
|
|
}
|
|
}
|
|
}
|