Add fetching for lgpe encounters (legality checks)

This commit is contained in:
Kurt
2018-11-11 22:46:03 -08:00
parent 101149eb2e
commit 5abbe6dceb
6 changed files with 13 additions and 5 deletions

View File

@@ -10,6 +10,7 @@
using static PKHeX.Core.Encounters5;
using static PKHeX.Core.Encounters6;
using static PKHeX.Core.Encounters7;
using static PKHeX.Core.Encounters7b;
namespace PKHeX.Core
{
@@ -500,6 +501,9 @@ private static IEnumerable<EncounterArea> GetEncounterTable(PKM pkm, GameVersion
case GameVersion.US: return SlotsUS;
case GameVersion.UM: return SlotsUM;
case GameVersion.GP: return SlotsGP;
case GameVersion.GE: return SlotsGE;
default: return Enumerable.Empty<EncounterArea>();
}
}

View File

@@ -9,6 +9,7 @@
using static PKHeX.Core.Encounters5;
using static PKHeX.Core.Encounters6;
using static PKHeX.Core.Encounters7;
using static PKHeX.Core.Encounters7b;
namespace PKHeX.Core
{
@@ -363,6 +364,9 @@ private static IEnumerable<EncounterStatic> GetEncounterStaticTable(PKM pkm, Gam
case GameVersion.US: return StaticUS;
case GameVersion.UM: return StaticUM;
case GameVersion.GP: return StaticGP;
case GameVersion.GE: return StaticGE;
default: return Enumerable.Empty<EncounterStatic>();
}
}

View File

@@ -77,7 +77,7 @@ private static IEnumerable<EncounterTrade> GetEncounterTradeTable(PKM pkm)
case 4: return pkm.HGSS ? Encounters4.TradeGift_HGSS : Encounters4.TradeGift_DPPt;
case 5: return pkm.B2W2 ? Encounters5.TradeGift_B2W2 : Encounters5.TradeGift_BW;
case 6: return pkm.XY ? Encounters6.TradeGift_XY : Encounters6.TradeGift_AO;
case 7: return pkm.SM ? Encounters7.TradeGift_SM : Encounters7.TradeGift_USUM;
case 7: return pkm.GG ? Encounters7b.TradeGift_GG : pkm.SM ? Encounters7.TradeGift_SM : Encounters7.TradeGift_USUM;
}
return null;
}

View File

@@ -16,7 +16,7 @@ public static IEnumerable<MysteryGift> GetPossible(PKM pkm)
public static IEnumerable<MysteryGift> GetPossible(PKM pkm, IReadOnlyList<DexLevel> vs)
{
var table = GetTable(pkm.GenNumber);
var table = GetTable(pkm.GenNumber, pkm);
return table.Where(wc => vs.Any(dl => dl.Species == wc.Species));
}
@@ -28,12 +28,12 @@ public static IEnumerable<MysteryGift> GetValidGifts(PKM pkm)
case 4: return GetMatchingPCD(pkm, MGDB_G4);
case 5: return GetMatchingPGF(pkm, MGDB_G5);
case 6: return GetMatchingWC6(pkm, MGDB_G6);
case 7: return GetMatchingWC7(pkm, MGDB_G7);
case 7: return pkm.GG ? GetMatchingWC7(pkm, MGDB_G7GG) : GetMatchingWC7(pkm, MGDB_G7);
default: return Enumerable.Empty<MysteryGift>();
}
}
private static IEnumerable<MysteryGift> GetTable(int generation)
private static IEnumerable<MysteryGift> GetTable(int generation, PKM pkm)
{
switch (generation)
{
@@ -41,7 +41,7 @@ private static IEnumerable<MysteryGift> GetTable(int generation)
case 4: return MGDB_G4;
case 5: return MGDB_G5;
case 6: return MGDB_G6;
case 7: return MGDB_G7;
case 7: return pkm.GG ? MGDB_G7GG : MGDB_G7;
default: return Enumerable.Empty<MysteryGift>();
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 B

After

Width:  |  Height:  |  Size: 367 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 745 B

After

Width:  |  Height:  |  Size: 786 B