最近我創建了一個小型BATCH遊戲。CMD命令的MS-DOS等價物?
事情是,因爲我使用Windows的CMD BATCH語言,遊戲將無法在DOS或DOSbox中正常運行。
開場很好,但是一旦我到達第一個玩家輸入部分,我會得到一個「錯誤的語法」錯誤。
有誰知道Windows CMD命令的MS-DOS等價物?
例如,在基於CMD的BATCH文件中,我將使用「set ...」來設置輸入。 DOS版本的「set ...」是什麼?
:start
cls
echo GUESSING GAME
echo.
echo Created By: John Ingram
echo Copyright 2015
echo.
pause
goto :begin
:begin
cls
echo Please enter the number of your desired difficulty setting.
echo.
echo 1) Easy: Guess a number from 1-10
echo 2) Normal: Guess a number from 1-100
echo 3) Hard: Guess a number from 1-1000
echo.
echo Type "Quit" to exit the game.
echo.
echo Have Fun!
set /p choice=Enter:
if %choice%==1 (
goto :difficulty1
)
if %choice%==2 (
goto :difficulty2
)
if %choice%==3 (
goto difficulty3
)
if %choice%==quit (
goto :endgame
)
if %choice%==Quit (
goto :endgame
)
if %choice% GTR 3 (
echo.
echo I do not understand that command.
echo.
pause
goto :begin
)
pause
一旦玩家在遊戲開始後按下一個鍵並被帶到第一個輸入部分(:begin),麻煩就開始了。
這與DOS/DOSbox無法將「/ p」註冊爲SET命令有什麼關係嗎?
如果是這樣,什麼是DOS等效?
你應該放一些代碼示例 –
[dosbox](http://www.dosbox.com/wiki/Commands)的命令與MS-DOS相比是非常有限的,所以你可能需要cal cmd無論如何.exe。 – npocmaka
和'cmd.exe'是'ms-dos'的超集[ – npocmaka