private static void AddEdgeCaseMoves(List <int> moves, IEncounterable encounter, PKM pkm) { switch (encounter) { case EncounterStatic8N r when pkm.Met_Location == Encounters8Nest.SharedNest && !EncounterStatic8N.IsHighestLevelTier(pkm.Met_Level): moves.AddRange(MoveLevelUp.GetMovesLevelUp(pkm, r.Species, -1, -1, 60, r.Form, GameVersion.SW, false, 8)); break; } }
private static void AddEdgeCaseMoves(List <int> moves, IEncounterable encounter, PKM pkm) { switch (encounter) { case EncounterStatic8N r when !EncounterStatic8N.IsHighestLevelTier(pkm.Met_Level) && r.IsDownLeveled(pkm): // Downleveled Raid can happen for shared raids and self-hosted raids. moves.AddRange(MoveLevelUp.GetMovesLevelUp(pkm, r.Species, -1, -1, r.LevelMax, r.Form, GameVersion.SW, false, 8)); break; } }
private static void AddEdgeCaseMoves(List <int> moves, IEncounterable encounter, PKM pkm) { switch (encounter) { case EncounterStatic8N r when r.IsDownLeveled(pkm): // Downleveled Raid can happen for shared raids and self-hosted raids. moves.AddRange(MoveLevelUp.GetMovesLevelUp(pkm, r.Species, -1, -1, r.LevelMax, r.Form, GameVersion.SW, false, 8)); break; case EncounterSlot8GO g: moves.AddRange(MoveLevelUp.GetEncounterMoves(g.Species, g.Form, pkm.Met_Level, g.OriginGroup)); break; } }
private static IEnumerable <int> GetMoves(PKM pkm, int species, int minlvlG1, int minlvlG2, int lvl, int form, bool moveTutor, GameVersion Version, bool LVL, bool specialTutors, bool Machine, bool MoveReminder, bool RemoveTransferHM, int Generation) { List <int> r = new List <int>(); if (LVL) { r.AddRange(MoveLevelUp.GetMovesLevelUp(pkm, species, minlvlG1, minlvlG2, lvl, form, Version, MoveReminder, Generation)); } if (Machine) { r.AddRange(MoveTechnicalMachine.GetTMHM(pkm, species, form, Generation, Version, RemoveTransferHM)); } if (moveTutor) { r.AddRange(MoveTutor.GetTutorMoves(pkm, species, form, specialTutors, Generation)); } return(r.Distinct()); }