mirror of
https://github.com/kwsch/PKHeX
synced 2024-12-02 16:59:15 +00:00
6b472ffd62
Still some pending stuff like bad mystery gifts gen2 static encounters on g/s applying met level and not location gen6 ralts trade (no nickname) being flagged as nicknamed when it shouldn't gen4 manaphy egg not having a hatch location (worked fine if you transferred it up) gen3 antishiny gifts not setting their PIDs (jirachi WC3) gen5 N's pkm gifts setting the wrong nature gen3 unown not being generated correctly, cosplay pikachu being allowed form0, non-BugCatchingContest no longer require Sport ball, oras dexnav marill now uses the azurill eggmove table
48 lines
No EOL
1.7 KiB
C#
48 lines
No EOL
1.7 KiB
C#
namespace PKHeX.Core
|
|
{
|
|
public sealed class EncounterSlot6AO : EncounterSlot
|
|
{
|
|
public override int Generation => 6;
|
|
|
|
public EncounterSlot6AO(EncounterArea6AO area, int species, int form, int min, int max) : base(area)
|
|
{
|
|
Species = species;
|
|
Form = form;
|
|
LevelMin = min;
|
|
LevelMax = max;
|
|
}
|
|
|
|
public bool Pressure { get; set; }
|
|
public bool DexNav { get; set; }
|
|
public bool WhiteFlute { get; set; }
|
|
public bool BlackFlute { get; set; }
|
|
|
|
public bool CanDexNav => Area.Type != SlotType.Rock_Smash;
|
|
|
|
protected override void SetFormatSpecificData(PKM pk)
|
|
{
|
|
var pk6 = (PK6)pk;
|
|
if (CanDexNav)
|
|
{
|
|
var baseSpec = EvoBase.GetBaseSpecies(pk);
|
|
var eggMoves = MoveEgg.GetEggMoves(pk, baseSpec.Species, baseSpec.Form, Version);
|
|
if (eggMoves.Length > 0)
|
|
pk6.RelearnMove1 = eggMoves[Util.Rand.Next(eggMoves.Length)];
|
|
}
|
|
pk6.SetRandomMemory6();
|
|
}
|
|
|
|
public override string GetConditionString(out bool valid)
|
|
{
|
|
valid = true;
|
|
if (WhiteFlute) // Decreased Level Encounters
|
|
return Pressure ? LegalityCheckStrings.LEncConditionWhiteLead : LegalityCheckStrings.LEncConditionWhite;
|
|
if (BlackFlute) // Increased Level Encounters
|
|
return Pressure ? LegalityCheckStrings.LEncConditionBlackLead : LegalityCheckStrings.LEncConditionBlack;
|
|
if (DexNav)
|
|
return LegalityCheckStrings.LEncConditionDexNav;
|
|
|
|
return Pressure ? LegalityCheckStrings.LEncConditionLead : LegalityCheckStrings.LEncCondition;
|
|
}
|
|
}
|
|
} |