/// <summary> /// Set Moves, EVs and Items for a specific PKM. These should not affect legality after being vetted by GeneratePKMs /// </summary> /// <param name="pk">PKM to modify</param> /// <param name="SSet">Showdown Set to refer</param> public static void SetMovesEVsItems(PKM pk, ShowdownSet SSet) { pk.SetMoves(SSet.Moves, true); pk.EVs = SSet.EVs; pk.CurrentFriendship = SSet.Friendship; pk.ApplyHeldItem(SSet.HeldItem, SSet.Format); var legal = new LegalityAnalysis(pk); if (legal.Parsed && !pk.WasEvent) { pk.RelearnMoves = pk.GetSuggestedRelearnMoves(legal); } }
/// <summary> /// Set Moves, EVs and Items for a specific PKM. These should not affect legality after being vetted by GeneratePKMs /// </summary> /// <param name="pk">PKM to modify</param> /// <param name="set">Showdown Set to refer</param> public static void SetMovesEVsItems(this PKM pk, ShowdownSet set) { pk.SetMoves(set.Moves, true); pk.CurrentFriendship = set.Friendship; if (pk is IAwakened pb7) { pb7.SetSuggestedAwakenedValues(pk); } else { pk.EVs = set.EVs; pk.ApplyHeldItem(set.HeldItem, set.Format); var la = new LegalityAnalysis(pk); if (la.Parsed && !pk.WasEvent) { pk.RelearnMoves = pk.GetSuggestedRelearnMoves(la); } } }