public void Play() { string decision; do { Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("Кто начнёт игру? (Ping/Pong)\n"); Console.ResetColor(); decision = Console.ReadLine(); Console.WriteLine(); if (decision != "Ping" && decision != "ping" && decision != "Pong" && decision != "pong") { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Не понятно! Попробуем еще раз...\n"); Console.ResetColor(); } } while (decision != "Ping" && decision != "ping" && decision != "Pong" && decision != "pong"); bool turn; if (decision == "Pong" || decision == "pong") { turn = true; } else { turn = false; } Random rnd = new Random(); int probability; bool ball; do { // вероятность, что текущий игрок отобъет подачу 4:5 probability = rnd.Next(1, 11); // определение отбита подача или нет if (probability > 2) { ball = true; } else { ball = false; } OnGame?.Invoke(turn, ball); // смена хода if (turn) { turn = false; } else { turn = true; } } while (probability > 2); }