Почему вставка пробелов в пользовательском вводе не работает? - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь просто сделать текстовую игру на основе выбора для развлечения. У меня проблема с вводом текста. Мне действительно нужна помощь, потому что я не видел, чтобы кто-то еще спрашивал об этом раньше (возможно, я просто не выглядел достаточно усердно). Вот проблема

@echo off
echo You hear something
echo ..Wake up or Sleep?
set /p WoS= 
if %WoS% == "Wake up" goto Wake up
if %WoS% == Sleep goto Sleep

:"Wake up"
echo There was no one there.
pause
echo There are 2 doors, Left or Right?
set /p Door=
if %Door% == Left goto Left
if %Door% == Right goto Right

:Left
pause

:Right 
pause

:Sleep
exit

Определенно не самый аккуратный, но я пытаюсь.

Я видел кое-что о цитатах, но это не сработало. Я хочу, чтобы пользователь мог вводить Wake up, а не только одно слово. Я думаю, что wake и up рассматриваются как разные строки. Как мне это исправить?

1 Ответ

0 голосов
/ 16 апреля 2019

Вот расширение моего комментария, чтобы помочь вам:

@Echo Off
Choice /C ws /N /M "You hear something, [W]ake up or [S]leep?"
If ErrorLevel 2 GoTo Sleep

:Wake
Echo There was no one there.
Timeout 3 /NoBreak>Nul
Choice /C lr /N /M "There are 2 doors, [L]eft or [R]ight?"
If ErrorLevel 2 GoTo Right

:Left
Pause
Rem You need a GoTo, or Exit statement here, to prevent running :Right below

:Right 
Pause

:Sleep
Exit /B
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...