// Parses player summaries. private static PlayerSummary Parse(XElement xml) { if (xml == null) { return(null); } ElementParser parser = new ElementParser(xml); PlayerSummary result = new PlayerSummary { Id = parser.GetAttributeLong("steamid"), DisplayName = parser.GetAttributeString("personaname"), Url = parser.GetAttributeString("profileurl"), AvatarSmall = parser.GetAttributeString("avatar"), AvatarMedium = parser.GetAttributeString("avatarmedium"), AvatarLarge = parser.GetAttributeString("avatarfull"), Status = parser.GetAttributeInteger("personastate"), Visibility = parser.GetAttributeInteger("communityvisibilitystate"), Configured = parser.GetAttributeBoolean("profilestate"), LastSeen = parser.GetAttributeDate("lastlogoff"), AllowsComments = parser.GetAttributeBoolean("commentpermission"), Name = parser.GetAttributeString("realname"), PrimaryClan = parser.GetAttributeLong("primaryclanid"), CreationDate = parser.GetAttributeDate("timecreated"), AppId = parser.GetAttributeInteger("gameid"), AppInfo = parser.GetAttributeString("gameextrainfo"), ServerIp = parser.GetAttributeIpAdress("gameserverip"), ServerPort = parser.GetAttributePort("gameserverip"), CityId = parser.GetAttributeInteger("loccityid"), Country = parser.GetAttributeString("loccountrycode"), State = parser.GetAttributeString("locstatecode") }; return(result); }