示例#1
0
        public List<Game> generateGameList()
        {
            List<Game> generatedList = new List<Game>();

            if(!File.Exists(Settings.Default.xmlPath)){
                return generatedList;
            }

            // parse the XML file
            XmlDocument parser = new XmlDocument();
            parser.Load(Settings.Default.xmlPath);
            foreach (XmlNode gameNode in parser.GetElementsByTagName("game")) {
                Game g = new Game();
                foreach (XmlNode game_element in gameNode.ChildNodes) {

                    List<string> exes = new List<string>();
                    if (game_element.Name == "title") {
                        g.title = game_element.InnerText;
                    }
                    if (game_element.Name == "size") {
                        g.size = game_element.InnerText;
                    }
                    if (game_element.Name == "players") {
                        g.players = game_element.InnerText;
                    }

                    if (game_element.Name == "message") {
                        g.message = game_element.InnerText.Trim();
                    }

                    if (game_element.Name == "exes") {
                        foreach (XmlNode exe in game_element.ChildNodes) {
                            Exe newExe = new Exe();
                            foreach (XmlNode exe_element in exe.ChildNodes) {

                                if (exe_element.Name == "file") {
                                    newExe.file = exe_element.InnerText;
                                }
                                if (exe_element.Name == "icon") {
                                    newExe.icon = exe_element.InnerText;
                                }
                                if (exe_element.Name == "name") {
                                    newExe.title = exe_element.InnerText;
                                }
                            }
                            g.AddExe(newExe);
                        }
                    }
                }

                // new list? Add!
                generatedList.Add(g);
            }

            return generatedList;
        }
示例#2
0
文件: Game.cs 项目: GEPWNAGE/Steel
        public void AddExe(Exe pvExe)
        {
            _executables.Add(pvExe);
            string iconFile = Settings.Default.Directory + "icons\\" + pvExe.icon;

            // check if we need to download the icon
            if (File.Exists(iconFile))
            {
                return;
            }

            try {
                _downloader.DownloadFile(iconURL(pvExe.icon), iconFile);
            } catch {
                return;
                //todo
            }
        }