protected new void FetchData()
        {
            if (IsPublic)
            {
                var stats = doc.GetXmlElement("stats");

                Accuracy           = float.Parse(stats.GetInnerText("accuracy"));
                AliensBurned       = int.Parse(stats.GetInnerText("aliensburned"));
                AliensKilled       = int.Parse(stats.GetInnerText("alienskilled"));
                Campaigns          = int.Parse(stats.GetInnerText("campaigns"));
                DamageTaken        = int.Parse(stats.GetInnerText("damagetaken"));
                Experience         = int.Parse(stats.GetInnerText("experience"));
                ExperienceRequired = int.Parse(stats.GetInnerText("xprequired"));
                FastHacks          = int.Parse(stats.GetInnerText("fasthacks"));
                GamesSuccessful    = int.Parse(stats.GetInnerText("gamessuccess"));
                Healing            = int.Parse(stats.GetInnerText("healing"));
                KillsPerHour       = float.Parse(stats.GetInnerText("killsperhour"));
                Level           = int.Parse(stats.GetInnerText("level"));
                Promotion       = int.Parse(stats.GetInnerText("promotion"));
                NextUnlock      = stats.GetInnerText("nextunlock");
                NextUnlockImage = stats.GetInnerText("nextunlockimg");
                TotalGames      = int.Parse(stats.GetInnerText("totalgames"));

                if (Promotion > 0)
                {
                    PromotionImage = "http://steamcommunity.com/public/images/gamestats/swarm/" + stats.GetInnerText("promotionpic");
                }

                GamesSusscessfulPercentage = (TotalGames > 0 ? (float)GamesSuccessful / TotalGames : 0);

                WeaponStats = new AlienSwarmWeaponStats(stats.GetXmlElement("weapons"));

                var xmlweapons = stats.GetXmlElement("weapons");
                List <AlienSwarmWeapon> weaponlist = new List <AlienSwarmWeapon>();
                foreach (string weapon in weapons)
                {
                    weaponlist.Add(new AlienSwarmWeapon(xmlweapons.GetXmlElement(weapon)));
                }
                Weapons = weaponlist.ToArray();

                Favorites = new AlienSwarmFavorites(stats.GetXmlElement("favorites"));

                List <AlienSwarmMission> missionlist = new List <AlienSwarmMission>();
                foreach (XmlElement mission in stats.GetXmlElement("missions"))
                {
                    if (mission.NodeType == XmlNodeType.Text)
                    {
                        continue;
                    }
                    missionlist.Add(new AlienSwarmMission(mission));
                }

                Missions = missionlist.ToArray();
            }
        }
        protected new void FetchData()
        {
            if (IsPublic)
            {
                var stats = doc.GetXmlElement("stats");

                Accuracy           = float.Parse(stats.GetInnerText("accuracy"));
                AliensBurned       =   int.Parse(stats.GetInnerText("aliensburned"));
                AliensKilled       =   int.Parse(stats.GetInnerText("alienskilled"));
                Campaigns          =   int.Parse(stats.GetInnerText("campaigns"));
                DamageTaken        =   int.Parse(stats.GetInnerText("damagetaken"));
                Experience         =   int.Parse(stats.GetInnerText("experience"));
                ExperienceRequired =   int.Parse(stats.GetInnerText("xprequired"));
                FastHacks          =   int.Parse(stats.GetInnerText("fasthacks"));
                GamesSuccessful    =   int.Parse(stats.GetInnerText("gamessuccess"));
                Healing            =   int.Parse(stats.GetInnerText("healing"));
                KillsPerHour       = float.Parse(stats.GetInnerText("killsperhour"));
                Level              =   int.Parse(stats.GetInnerText("level"));
                Promotion          =   int.Parse(stats.GetInnerText("promotion"));
                NextUnlock         =             stats.GetInnerText("nextunlock");
                NextUnlockImage    =             stats.GetInnerText("nextunlockimg");
                TotalGames         =   int.Parse(stats.GetInnerText("totalgames"));

                if (Promotion > 0)
                    PromotionImage = "http://steamcommunity.com/public/images/gamestats/swarm/" + stats.GetInnerText("promotionpic");

                GamesSusscessfulPercentage = (TotalGames > 0 ? (float)GamesSuccessful / TotalGames : 0);

                WeaponStats = new AlienSwarmWeaponStats(stats.GetXmlElement("weapons"));

                var xmlweapons = stats.GetXmlElement("weapons");
                List<AlienSwarmWeapon> weaponlist = new List<AlienSwarmWeapon>();
                foreach (string weapon in weapons) {
                    weaponlist.Add(new AlienSwarmWeapon(xmlweapons.GetXmlElement(weapon)));
                }
                Weapons = weaponlist.ToArray();

                Favorites = new AlienSwarmFavorites(stats.GetXmlElement("favorites"));

                List<AlienSwarmMission> missionlist = new List<AlienSwarmMission>();
                foreach (XmlElement mission in stats.GetXmlElement("missions")) {
                    if (mission.NodeType == XmlNodeType.Text)
                        continue;
                    missionlist.Add(new AlienSwarmMission(mission));
                }

                Missions = missionlist.ToArray();
            }
        }