public override Karte SpieleKarte(string eigenschaft) { var reversed = GameMaster.GetInstance().kartenset.reversals.Contains(eigenschaft); var cards = Stapel.GetKarten(32); var properties = cards.Where(c => double.TryParse(c.GetProperty(eigenschaft).ToString(), out var res)) .Select(c => double.Parse(c.GetProperty(eigenschaft).ToString())).ToArray(); var played = GameMaster.GetInstance().GetGespielteKarten() .Select(c => double.Parse(c.GetProperty(eigenschaft).ToString())).ToArray(); var index = dna.Calculate(properties, played, reversed, eigenschaft); Stapel.LöscheKarte(index); return(cards.ElementAt(index)); }