public void Chance_scores_sum_of_all_dice() { int expected = 15; int actual = YatzyGame.Chance(2, 3, 4, 5, 1); Assert.Equal(expected, actual); Assert.Equal(16, YatzyGame.Chance(3, 3, 4, 5, 1)); }
public void Save() { bool CorrectCommand = false; TurnSaved = false; while (!CorrectCommand) { string s = GetUserInput("Skriv hvad du vil gemme").ToLower(); if (!yatzy.scoreboard.UpperSectionFinished()) { switch (s) { default: Console.Beep(); throw new InvalidCommandException($"Du har ikke skrevet en korrekt kommando (du skrev '{s}')"); case "aces": if (yatzy.scoreboard.scores["Aces"] == -1) { yatzy.scoreboard.scores["Aces"] = yatzy.ValueOfDots(1); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "twos": if (yatzy.scoreboard.scores["Twos"] == -1) { yatzy.scoreboard.scores["Twos"] = yatzy.ValueOfDots(2); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "threes": if (yatzy.scoreboard.scores["Threes"] == -1) { yatzy.scoreboard.scores["Threes"] = yatzy.ValueOfDots(3); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "fours": if (yatzy.scoreboard.scores["Fours"] == -1) { yatzy.scoreboard.scores["Fours"] = yatzy.ValueOfDots(4); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "fives": if (yatzy.scoreboard.scores["Fives"] == -1) { yatzy.scoreboard.scores["Fives"] = yatzy.ValueOfDots(5); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "sixes": if (yatzy.scoreboard.scores["Sixes"] == -1) { yatzy.scoreboard.scores["Sixes"] = yatzy.ValueOfDots(6); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "help": Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("Mulige kommandoer: aces, twos, threes, fours, fives, sixes"); Console.ResetColor(); break; } } else { switch (s) { default: Console.Beep(); throw new InvalidCommandException($"Du har ikke skrevet en korrekt kommando (du skrev '{s}')"); case "pair": if (yatzy.scoreboard.scores["Pair"] == -1) { yatzy.scoreboard.scores["Pair"] = yatzy.OnePair(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt."); Console.Beep(); } break; case "two pairs": if (yatzy.scoreboard.scores["Two Pair"] == -1) { yatzy.scoreboard.scores["Two Pair"] = yatzy.TwoPairs(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "three of a kind": if (yatzy.scoreboard.scores["Three of a kind"] == -1) { yatzy.scoreboard.scores["Three of a kind"] = yatzy.ThreeOfAKind(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "four of a kind": if (yatzy.scoreboard.scores["Four of a kind"] == -1) { yatzy.scoreboard.scores["Four of a kind"] = yatzy.FourOfAKind(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "full house": if (yatzy.scoreboard.scores["Full House"] == -1) { yatzy.scoreboard.scores["Full House"] = yatzy.FullHouse(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "small straight": if (yatzy.scoreboard.scores["Small Straight"] == -1) { yatzy.scoreboard.scores["Small Straight"] = yatzy.SmallStraight(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "large straight": if (yatzy.scoreboard.scores["Large Straight"] == -1) { yatzy.scoreboard.scores["Large Straight"] = yatzy.LargeStraight(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "yatzy": if (yatzy.scoreboard.scores["Yatzy"] == -1) { yatzy.scoreboard.scores["Yatzy"] = yatzy.Yatzy(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "chance": if (yatzy.scoreboard.scores["Chance"] == -1) { yatzy.scoreboard.scores["Chance"] = yatzy.Chance(); CorrectCommand = true; Console.WriteLine($"{s} er nu gemt"); } else { Console.WriteLine($"{s} er allerede gemt"); Console.Beep(); } break; case "help": Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("Mulige kommandoer: pair, two pair, three of a kind, four of a kind, full house, small straight, large straight, yatzy, chance"); Console.ResetColor(); break; } } TurnSaved = true; } }