public void AddCodeGuess(Code codeGuess, CodeValidationResult codeValidationResult) { if (guesses.Count == boardSize) { throw new Exception("Tried to add new guess to a full board!"); } var codeWithValidation = new CodeWithValidationResult(codeGuess, codeValidationResult); guesses.Add(codeWithValidation); GuessAddedEvent(codeWithValidation); }
private void OnCodeGuessReady(Code codeGuess) { CodeValidationResult codeValidationResult = codeValidator.ValidateCode(codeGuess); board.AddCodeGuess(codeGuess, codeValidationResult); if (codeValidationResult.IsValid) { CodeBreakerVictory(); } else if (board.IsFull) { CodeMakerVictory(); } else { PlayRound(); } }
public CodeWithValidationResult(Code code, CodeValidationResult validationResult) { this.code = code; this.validationResult = validationResult; }