Я разработал новую функцию для своей пакетной игры, которая дает пользователю возможность определять имя собственного файла сохранения, а также систему загрузки. На данный момент новая система сохранения работает исправно.
Однако при тестировании нового кода программа выдает сообщение «Неверный синтаксис команды» и аварийно завершает работу.
:load2
cls
color E
echo Warning: Spaces not allowed!
set /p load2=File:
set ext1=.sav
set ext2=.bat
cls
echo Loading Save File...
ping localhost -n 1 >nul
if exist %load2%%ext1%
if not exist %load2%%ext1% goto :nosave
ping localhost -n 2 >nul
ren %load2%%ext1% %load2%%ext2%
call %load2%%ext2%
ren %load2%%ext2% %load2%%ext1%
cls
color A
echo Game loaded.
ping localhost -n 2 >nul
cls
if %saver%=player1 goto :p1sturn
if %saver%=player2 goto :p2sturn
Спасибо за прочтение, все, кто принял участие, будут добавлены в титры за помощь в кодировании.
решение1
==>if exist x
The syntax of the command is incorrect.
Ошибка, вызванная if exist %load2%%ext1%
. Удалите его полностью: он сверхобильный, как следует изif not exist %load2%%ext1% goto :nosave
Еще одна ошибка:
==>if player1=player1 echo x
=player1 was unexpected at this time.
Правильный синтаксис (обратите внимание на кавычки и двойной =
знак равенства):
if "%saver%"=="player1" goto :p1sturn
if "%saver%"=="player2" goto :p2sturn