public static async Task <RiotVersion> GetInstalledVersion(string leagueDir) { var airInstalled = Directory.EnumerateDirectories(Path.Combine(leagueDir, AirPath)); var airVersions = from dir in airInstalled select Version.Parse(Path.GetFileName(dir)) into v orderby v descending select v; var gameInstalled = Directory.EnumerateDirectories(Path.Combine(leagueDir, GamePath)); var gameVersions = from dir in gameInstalled select Version.Parse(Path.GetFileName(dir)) into v orderby v descending select v; var slnInstalled = Directory.EnumerateDirectories(Path.Combine(leagueDir, SolutionPath)); var slnVersions = from dir in slnInstalled select Version.Parse(Path.GetFileName(dir)) into v orderby v descending select v; var ver = new RiotVersion(airVersions.FirstOrDefault(), gameVersions.FirstOrDefault(), slnVersions.FirstOrDefault()); await ver.GetManifest(); return(ver); }
public static async Task <RiotVersion> GetLatestVersion() { using (var web = new WebClient()) { var airList = await web.DownloadStringTaskAsync(Region.Current.ReleaseListing("projects", "lol_air_client")); var gameList = await web.DownloadStringTaskAsync(Region.Current.ReleaseListing("projects", "lol_game_client")); var solutionList = await web.DownloadStringTaskAsync(Region.Current.ReleaseListing("solutions", "lol_game_client_sln")); Version airVersion, gameVersion, solutionVersion; Version.TryParse(airList.Split('\n').FirstOrDefault(), out airVersion); Version.TryParse(gameList.Split('\n').FirstOrDefault(), out gameVersion); Version.TryParse(solutionList.Split('\n').FirstOrDefault(), out solutionVersion); var v = new RiotVersion(airVersion, gameVersion, solutionVersion); await v.GetManifest(); return(v); } }
public static void Initialize() { rtmpLog = BackEndServer.LogService.CreateLog("RTMP"); logFile = Path.Combine(AppData, "logs", "client", DateTime.Now.ToString("M-d H-mm") + ".txt"); Directory.CreateDirectory(Path.GetDirectoryName(logFile)); #if DEBUG rtmpLogFile = Path.Combine(AppData, "logs", "rtmp", DateTime.Now.ToString("M-d H-mm") + ".txt"); Directory.CreateDirectory(Path.GetDirectoryName(rtmpLogFile)); #endif RiotAPI = RiotAPI.Debug(MFroehlich.League.RiotAPI.Region.NA, "5d8ea4aa-db1c-43ea-aacd-888129dadf11"); Log("Patch: " + (clientVersion = MFroehlich.League.Assets.DataDragon.CurrentVersion)); //Static init// Init = Task.Run(async() => { Latest = await RiotVersion.GetLatestVersion(); Log($"Air: {Latest.AirVersion}"); Log($"Game: {Latest.GameVersion}"); Log($"Solution: {Latest.SolutionVersion}"); }); }