private List <Versus> FetchVersus(string heroReference, string path)
        {
            HtmlNode root = mainController.HtmlDocumentController.GetDotabuffHeroRoot(heroReference);

            IEnumerable <HtmlNode> heroesTableNodes = root.SelectSingleNode(path).ChildNodes;
            List <HtmlNode>        heroesTableList  = heroesTableNodes.ToList();

            List <Versus> versusList = new List <Versus>();

            for (int i = 1; i < heroesTableList.Count + 1; i++)
            {
                HtmlNode node = heroesTableList.ToList()[i - 1];

                Versus versus = new Versus();
                versus.Hero = new Hero {
                    Reference = node.Descendants(MainController.HTML_A_TAG).First().Attributes[MainController.HTML_ATTRIBUTE_HREF].Value.Replace(HtmlAttributes.Hero.Replace.Value, "")
                };
                versus.Advantage = node.ChildNodes[2].InnerText;
                versus.WinRate   = node.ChildNodes[3].InnerText;
                versus.Matches   = int.Parse(node.ChildNodes[4].InnerText.Replace(",", ""));

                versusList.Add(versus);
            }

            return(versusList);
        }
Exemple #2
0
        public void Init()
        {
            Singleplayer = Utility.GetDependancy <SingleplayerMode>();
            Versus       = Utility.GetDependancy <VersusMode>();
            Multiplayer  = Utility.GetDependancy <MultiplayerMode>();

            Singleplayer.Init();
            Versus.Init();
            Multiplayer.Init();
        }