/// <summary> /// Returns a random name /// </summary> /// <param name="race">Race</param> /// <param name="gender">Gender</param> /// <returns>Random name</returns> string GetRandomName(HeroRace race, HeroGender gender) { if (Names == null) return string.Empty; var res = (from name in Names.Descendants("race") where name.Attribute("name").Value == race.ToString() select new { Entries = name.Element(gender.ToString()).Elements("name") }).FirstOrDefault(); if (res == null || res.Entries.Count() == 0) return string.Empty; return res.Entries.ElementAt(GameBase.Random.Next(res.Entries.Count() - 1)).Value; }