private bool TryParseScriptHookVWebPage(out Version supportedGtaVersion, out string availableScriptHookVVersion, out string downloadUrlAddress) { availableScriptHookVVersion = null; supportedGtaVersion = new Version(); downloadUrlAddress = null; var urlAddress = "http://www.dev-c.com/gtav/scripthookv/"; var webPageText = Util.ReadWebPageContent(urlAddress); if (webPageText == null) { return(false); } if (!ParseVersionInfo(ref availableScriptHookVVersion, webPageText)) { return(false); } if (!ParseSupportedGtaVersionsInfo(ref supportedGtaVersion, webPageText)) { return(false); } if (!ParseDownloadUrlAddressInfo(ref downloadUrlAddress, webPageText, urlAddress)) { return(false); } return(true); }
private bool TryParseModInfoWebPage(out Version modVersion, out string modBundleDownloadUrl, out bool block) { modVersion = new Version(0, 0); modBundleDownloadUrl = null; block = true; var xmlText = Util.ReadWebPageContent("https://raw.githubusercontent.com/alex8b/gta5eyetracking/master/update.xml"); if (xmlText == null) { return(false); } var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xmlText); var modVersionNode = xmlDoc.SelectSingleNode("Update/ModVersion"); if (!((modVersionNode != null) && (Version.TryParse(modVersionNode.InnerText, out modVersion)))) { return(false); } var modBundleDownloadUrlNode = xmlDoc.SelectSingleNode("Update/ModBundleDownloadUrl"); if (modBundleDownloadUrlNode != null) { modBundleDownloadUrl = modBundleDownloadUrlNode.InnerText; } else { return(false); } var blockNode = xmlDoc.SelectSingleNode("Update/Block"); if (!((blockNode != null) && (bool.TryParse(blockNode.InnerText, out block)))) { return(false); } return(true); }