private void NextRound() { _numberOfRounds += 1; _usedSigils.Add(CurrentSigil); CurrentSigils.Clear(); CreateNextSetOfSigils(); if (_numberOfRounds >= _totalRounds) { GameActive = false; } }
private void CreateNextSetOfSigils() { List <Sigil> s = Sigils.Where(x => !_usedSigils.Contains(x) && !CurrentSigils.Contains(x)).ToList(); CurrentSigil = s.OrderBy(x => Guid.NewGuid()).First(); CurrentSigils.Add(CurrentSigil); _usedSigils.Add(CurrentSigil); for (int i = 0; i < 3; i++) { List <Sigil> sigils = Sigils.Where(x => !CurrentSigils.Contains(x)).ToList(); CurrentSigils.Add(sigils[new Random().Next(sigils.Count)]); } CurrentSigils = CurrentSigils.OrderBy(x => Guid.NewGuid()).ToList();; }