Я предлагаю превратить switch
в if / else
, где вы можете вполне легально изменить option
:
while (true) {
if (0 == option) {
ConsoleKeyInfo TurnChoice = Console.ReadKey();
if (TurnChoice.key == ConsoleKey.M)
option = 2;
else if (TurnChoice.key == case ConsoleKey.S)
option = 1;
}
if (1 == option) {
...
}
else if (2 == option) { // drop "else" if option can be changed within if (option == 1)
...
}
}
Другая (менее читаемая) возможность - поставить continue
вместо break
:
while(true) {
switch(option) {
case 0:
ConsoleKeyInfo TurnChoice = Console.ReadKey();
switch(TurnChoice.key)
{
case ConsoleKey.M
option = 2;
continue; // <- continue instead of break
case ConsoleKey.S
option = 1;
continue; // <- continue instead of break
}
...
в этом случае мы меняем option
возвращаемся к while
и снова вводим в switch