예제 #1
0
        public static bool IsPlanetLocked(PlanetType planet)
        {
            if (AllProgressionUnlocked)
            {
                return(false);
            }

            SG.Lonestar.Inventory.BattleProgress progress = GetDuelApi().Progress;

            // TODO: I don't like having this is code, but we don't have a better way just yet.
            switch (planet)
            {
            case PlanetType.Naboo:
                return(false);

            case PlanetType.Garel:
                return(!progress.HasCompleted(DuelAPI.Duelist.DarthMaul, 1));

            case PlanetType.Lothal:
                return(!progress.HasCompleted(DuelAPI.Duelist.SeventhSister, 1));

            case PlanetType.Hoth:
                return(!progress.HasCompleted(DuelAPI.Duelist.GrandInquisitor, 1));

            case PlanetType.Takodana:
                return(!progress.HasCompleted(DuelAPI.Duelist.DarthVader, 1));

            case PlanetType.Core:
                return(!progress.HasCompleted(DuelAPI.Duelist.KyloRen, 2));
            }

            return(false);
        }
예제 #2
0
        public static JediRank GetJediRank()
        {
            if (IsMedalUnlocked(MedalType.Mastery))
            {
                return(JediRank.Master);
            }

            SG.Lonestar.Inventory.BattleProgress progress = GetDuelApi().Progress;

            if (progress.HasCompleted(DuelAPI.Duelist.Archivist, 2))
            {
                return(JediRank.Knight);
            }

            if (progress.HasCompleted(DuelAPI.Duelist.KyloRen, 1))
            {
                return(JediRank.Padawan);
            }

            return(JediRank.Initiate);
        }
예제 #3
0
        public static bool IsMedalUnlocked(MedalType medal)
        {
            if (AllProgressionUnlocked)
            {
                return(true);
            }

            SG.Lonestar.Inventory.BattleProgress progress = GetDuelApi().Progress;

            switch (medal)
            {
            // All Duelists on Hard (Not Archivist)
            case MedalType.AdvancedCombat:
                bool maul  = progress.HasCompleted(DuelAPI.Duelist.DarthMaul, 3);
                bool sis   = progress.HasCompleted(DuelAPI.Duelist.SeventhSister, 3);
                bool inq   = progress.HasCompleted(DuelAPI.Duelist.GrandInquisitor, 3);
                bool vader = progress.HasCompleted(DuelAPI.Duelist.DarthVader, 3);
                bool ren   = progress.HasCompleted(DuelAPI.Duelist.KyloRen, 3);
                return(maul && sis && inq && vader && ren);

            // Defeat Archivist on Med.
            case MedalType.Combat:
                return(progress.HasCompleted(DuelAPI.Duelist.Archivist, 2));

            // Beat Holochess on the Core planet, 3rd pillar
            case MedalType.Insight:
                return(GetChessApi().RatingForStage(PlanetType.Core, 3) > 0);

            // Only 1 level for TD
            case MedalType.Leadership:
                return(GetTDAPI().IsBattleUnlocked(TDAPI.Battles.Final_1));

            // Beat the archivist on hard
            case MedalType.Mastery:
                return(progress.HasCompleted(DuelAPI.Duelist.Archivist, 3));
            }

            return(false);
        }