/// <summary> /// Generate town cards /// </summary> private List <TownPair> GetData(int count) { _createdNames.Clear(); var result = new List <TownPair>(); var firstPair = new TownPair( CompileWord(_possibleLetters, _minWordSize), CompileWord(_possibleLetters, _minWordSize)); result.Add(firstPair); var currentPair = firstPair; for (int i = 0; i < count - 2; i++) { var newPair = GetNewPairBasedOnExisting(_possibleLetters, currentPair, _minWordSize); result.Add(newPair); currentPair = newPair; } return(result); }
/// <summary> /// To mimic real data we need to know previous pair to build next /// </summary> private TownPair GetNewPairBasedOnExisting(List <char> letters, TownPair pair, int wordSize) { return(new TownPair(pair.To, CompileWord(letters, wordSize))); }