Иисус прав, предлагаю принять его ответ. Вот как вы можете переписать код.
do
{
Console.Write("\nEnter your move: ");
move = Console.ReadLine();
switch (move)
{
case "r":
Console.Write("\nYou have reloaded, press enter for Genius");
Console.ReadLine();
break;
case "s":
Console.Write("\nYou have shielded, press enter for Genius");
Console.ReadLine();
break;
case "f":
Console.Write("\nYou have fired, press enter for Genius");
Console.ReadLine();
break;
default:
Console.Write("\nInvalid move, try again\n\n");
break;
}
}
while (move == "r" || move == "s" || move == "f");
Обратите внимание, что если вы получите что-то, кроме "r", "s" или "f", вы напечатаете Invalid move, try again
и затем выйдете из цикла (они не смогут повторить попытку). Вместо этого вы можете захотеть назначить ключ (может быть, «q» для выхода), который завершает цикл и меняет ваше условие while
на что-то вроде
while (move != "q");