mirror of
https://github.com/kwsch/PKHeX
synced 2024-11-23 12:33:06 +00:00
Minor tweaks
verify relearn: move split check before method call movelist: don't capture pkm in local method; meowstic ID pkm: flip argument for easier understanding
This commit is contained in:
parent
a6a3c6eaaa
commit
d3863f9c63
3 changed files with 9 additions and 11 deletions
|
@ -118,8 +118,8 @@ namespace PKHeX.Core
|
||||||
// Inherited moves appear after the required base moves.
|
// Inherited moves appear after the required base moves.
|
||||||
// If the pkm is capable of split-species breeding and any inherited move is from the other split scenario, flag accordingly.
|
// If the pkm is capable of split-species breeding and any inherited move is from the other split scenario, flag accordingly.
|
||||||
bool splitInvalid = FlagInvalidInheritedMoves(result, reqBase, RelearnMoves, inheritMoves, splitMoves);
|
bool splitInvalid = FlagInvalidInheritedMoves(result, reqBase, RelearnMoves, inheritMoves, splitMoves);
|
||||||
if (splitInvalid)
|
if (splitInvalid && e is EncounterEggSplit x)
|
||||||
FlagSplitbreedMoves(result, reqBase, e, pkm);
|
FlagSplitbreedMoves(result, reqBase, x);
|
||||||
|
|
||||||
info.RelearnBase = baseMoves;
|
info.RelearnBase = baseMoves;
|
||||||
return result;
|
return result;
|
||||||
|
@ -167,17 +167,15 @@ namespace PKHeX.Core
|
||||||
return splitInvalid;
|
return splitInvalid;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void FlagSplitbreedMoves(CheckResult[] res, int required, EncounterEgg e, PKM pkm)
|
private static void FlagSplitbreedMoves(CheckResult[] res, int required, EncounterEggSplit x)
|
||||||
{
|
{
|
||||||
if (!(e is EncounterEggSplit x))
|
|
||||||
return;
|
|
||||||
var other = x.OtherSpecies;
|
var other = x.OtherSpecies;
|
||||||
for (int i = required; i < 4; i++)
|
for (int i = required; i < 4; i++)
|
||||||
{
|
{
|
||||||
if (res[i] != null)
|
if (res[i] != null)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
string message = string.Format(LMoveEggFIncompatible0_1, SpeciesStrings[other], SpeciesStrings[e.Species]);
|
string message = string.Format(LMoveEggFIncompatible0_1, SpeciesStrings[other], SpeciesStrings[x.Species]);
|
||||||
res[i] = new CheckResult(Severity.Invalid, message, CheckIdentifier.RelearnMove);
|
res[i] = new CheckResult(Severity.Invalid, message, CheckIdentifier.RelearnMove);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,7 +18,7 @@ namespace PKHeX.Core
|
||||||
var r = new List<int>();
|
var r = new List<int>();
|
||||||
r.AddRange(MoveEgg.GetRelearnLVLMoves(pkm, species, 1, form, version));
|
r.AddRange(MoveEgg.GetRelearnLVLMoves(pkm, species, 1, form, version));
|
||||||
|
|
||||||
if (pkm.Format == 6 && pkm.Species != 678)
|
if (pkm.Format == 6 && pkm.Species != (int)Species.Meowstic)
|
||||||
form = 0;
|
form = 0;
|
||||||
|
|
||||||
r.AddRange(MoveEgg.GetEggMoves(pkm, species, form, version));
|
r.AddRange(MoveEgg.GetEggMoves(pkm, species, form, version));
|
||||||
|
@ -59,13 +59,13 @@ namespace PKHeX.Core
|
||||||
case GameVersion.GSC:
|
case GameVersion.GSC:
|
||||||
case GameVersion.GS:
|
case GameVersion.GS:
|
||||||
// If checking back-transfer specimen (GSC->RBY), remove moves that must be deleted prior to transfer
|
// If checking back-transfer specimen (GSC->RBY), remove moves that must be deleted prior to transfer
|
||||||
int[] getRBYCompatibleMoves(int[] moves) => pkm.Format == 1 ? moves.Where(m => m <= MaxMoveID_1).ToArray() : moves;
|
static int[] getRBYCompatibleMoves(int format, int[] moves) => format == 1 ? moves.Where(m => m <= MaxMoveID_1).ToArray() : moves;
|
||||||
if (pkm.InhabitedGeneration(2))
|
if (pkm.InhabitedGeneration(2))
|
||||||
return getRBYCompatibleMoves(LevelUpGS[species].GetMoves(lvl));
|
return getRBYCompatibleMoves(pkm.Format, LevelUpGS[species].GetMoves(lvl));
|
||||||
break;
|
break;
|
||||||
case GameVersion.C:
|
case GameVersion.C:
|
||||||
if (pkm.InhabitedGeneration(2))
|
if (pkm.InhabitedGeneration(2))
|
||||||
return getRBYCompatibleMoves(LevelUpC[species].GetMoves(lvl));
|
return getRBYCompatibleMoves(pkm.Format, LevelUpC[species].GetMoves(lvl));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GameVersion.R:
|
case GameVersion.R:
|
||||||
|
|
|
@ -638,7 +638,7 @@ namespace PKHeX.Core
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// Sanity Check Species ID
|
// Sanity Check Species ID
|
||||||
if (Legal.GetMaxSpeciesOrigin(generation) < species && !Legal.GetFutureGenEvolutions(generation).Contains(species))
|
if (species > Legal.GetMaxSpeciesOrigin(generation) && !Legal.GetFutureGenEvolutions(generation).Contains(species))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// Trade generation 1 -> 2
|
// Trade generation 1 -> 2
|
||||||
|
|
Loading…
Reference in a new issue