mirror of
https://github.com/kwsch/PKHeX.git
synced 2026-10-23 13:43:00 -05:00
Update EncounterTrade4RanchGift.cs
This commit is contained in:
@@ -80,6 +80,7 @@ public PK4 ConvertToPKM(ITrainerInfo tr, EncounterCriteria criteria)
|
||||
var pk = new PK4
|
||||
{
|
||||
Species = Species,
|
||||
Form = Form,
|
||||
CurrentLevel = actualLevel,
|
||||
Met_Location = Location,
|
||||
Met_Level = Level,
|
||||
@@ -126,11 +127,13 @@ private void SetPINGA(PK4 pk, EncounterCriteria criteria)
|
||||
|
||||
public bool IsMatchExact(PKM pk, EvoCriteria evo)
|
||||
{
|
||||
if (pk.Met_Level != Level)
|
||||
if (!IsMatchLevel(pk, evo))
|
||||
return false;
|
||||
if (pk.ID32 != ID32)
|
||||
return false;
|
||||
if (!IsMatchNatureGenderShiny(pk))
|
||||
return false;
|
||||
if (pk.ID32 != ID32)
|
||||
if (!IsMatchLocation(pk))
|
||||
return false;
|
||||
if (evo.Form != Form && !FormInfo.IsFormChangeable(Species, Form, pk.Form, Context, pk.Context))
|
||||
return false;
|
||||
@@ -143,6 +146,26 @@ public bool IsMatchExact(PKM pk, EvoCriteria evo)
|
||||
return true;
|
||||
}
|
||||
|
||||
private bool IsMatchLocation(PKM pk)
|
||||
{
|
||||
// Met location is lost on transfer
|
||||
if (pk is not G4PKM pk4)
|
||||
return true;
|
||||
|
||||
var met = pk4.Met_Location;
|
||||
return met == Location;
|
||||
}
|
||||
|
||||
private bool IsMatchLevel(PKM pk, EvoCriteria evo)
|
||||
{
|
||||
if (pk.Format != 4) // Met Level lost on PK4=>PK5
|
||||
return evo.LevelMax >= Level;
|
||||
|
||||
if (MetLocation != default)
|
||||
return pk.Met_Level == Level;
|
||||
return pk.Met_Level >= LevelMin;
|
||||
}
|
||||
|
||||
private bool IsMatchNatureGenderShiny(PKM pk)
|
||||
{
|
||||
if (pk.Gender != Gender)
|
||||
|
||||
Reference in New Issue
Block a user