Exemplo n.º 1
0
        public ValidEncounterMoves(PKM pkm, LevelUpRestriction restrict, IEncounterable encounter)
        {
            var level = MoveList.GetValidMovesAllGens(pkm, restrict.EvolutionChains, minLvLG1: restrict.MinimumLevelGen1, minLvLG2: restrict.MinimumLevelGen2, Tutor: false, Machine: false, RemoveTransferHM: false);

            if (level[encounter.Generation] is List <int> x)
            {
                AddEdgeCaseMoves(x, encounter, pkm);
            }

            LevelUpMoves = level;
            TMHMMoves    = MoveList.GetValidMovesAllGens(pkm, restrict.EvolutionChains, LVL: false, Tutor: false, MoveReminder: false, RemoveTransferHM: false);
            TutorMoves   = MoveList.GetValidMovesAllGens(pkm, restrict.EvolutionChains, LVL: false, Machine: false, MoveReminder: false, RemoveTransferHM: false);
        }
Exemplo n.º 2
0
        public ValidEncounterMoves(PKM pkm, IEncounterTemplate encounter, IReadOnlyList <EvoCriteria>[] chains)
        {
            var level = MoveList.GetValidMovesAllGens(pkm, chains, types: MoveSourceType.Encounter, RemoveTransferHM: false);

            int gen = encounter.Generation;

            if ((uint)gen < level.Length && level[gen] is List <int> x)
            {
                AddEdgeCaseMoves(x, encounter, pkm);
            }

            LevelUpMoves = level;
            TMHMMoves    = MoveList.GetValidMovesAllGens(pkm, chains, types: MoveSourceType.AllMachines);
            TutorMoves   = MoveList.GetValidMovesAllGens(pkm, chains, types: MoveSourceType.AllTutors);
        }
Exemplo n.º 3
0
        public ValidEncounterMoves(PKM pkm, LevelUpRestriction restrict, IEncounterable encounter)
        {
            var level = MoveList.GetValidMovesAllGens(pkm, restrict.EvolutionChains, minLvLG1: restrict.MinimumLevelGen1, minLvLG2: restrict.MinimumLevelGen2, types: MoveSourceType.Encounter, RemoveTransferHM: false);

            int gen = encounter.Generation;

            if ((uint)gen < level.Length && level[gen] is List <int> x)
            {
                AddEdgeCaseMoves(x, encounter, pkm);
            }

            LevelUpMoves = level;
            TMHMMoves    = MoveList.GetValidMovesAllGens(pkm, restrict.EvolutionChains, types: MoveSourceType.AllMachines);
            TutorMoves   = MoveList.GetValidMovesAllGens(pkm, restrict.EvolutionChains, types: MoveSourceType.AllTutors);
        }