static void StartGame() { score = 0; bool exit = false; Thread thread = new Thread(new ThreadStart(ReadKeyThread)); int life = 3; string name = GetName(); if (name.Length == 0) { name = "Инкогнито"; } Keyboard(); InitScene(life); thread.IsBackground = true; thread.Start(); do { if (crash) { InitScene(--life); } if (!thread.IsAlive) { exit = true; } } while ((!exit && life > 0)); timer.Dispose(); Console.Clear(); Console.SetCursorPosition(widthScreen / 2 - 5, heightScreen / 2 - 5); Console.ForegroundColor = ConsoleColor.White; Console.Write($"Вы набрали {score}"); HistoryArr.AddResult(score, name); if (thread.IsAlive) { thread.Abort(); //не вытаскивает из Console.ReadKey(true) exeptuon вознимает после нажатия клавиши while (thread.IsAlive) //знаючто это не правильно но не знаю как ещё вытащит из ожидания клавиши и сделать вид что мы ожидаем клавишу для продолжения { } } else { Console.ReadKey(); } }