2014-12-24 5 views
0

Вот что моя партия в настоящее время выглядит следующим образом:Типичная переменная в пакетном файле?

srcds.exe +hostname "[FAST-DL]Ultra-Realistic Apocalypse Roleplay CustomRP ALPHA" +maxplayers 8 -console -authkey 8F1B5086400AC592380B5F303778D008 +gamemode darkrp +map gm_atomic 

Как бы сделать так, когда открывается окно, я могу ввести пользовательскую переменную для +map. | (необязательно), или я могу продолжить использовать переменную, которую я ранее использовал в последний раз, когда была запущена партия (в случае кода примера это будет gm_atomic) |

ответ

1
set "map=" 
set /p "map=Some prompt for map " 

Вы можете обнаружить, заключал ли кто-карту с помощью

if defined map (something) else (something_else) 

или, возможно,

if defined map set "map=+map %map%" 

затем

srcde.exe ...whatever... %map% 

который добавит ничего если map не был указан, или + карта, в любом месте была сделана запись.

Вы могли бы поставить по умолчанию, если вы хотите:

set "map=whateveryourdefaultvalueis" 
set /p "map=Some prompt for map [default:%map%]" 

Так пользователям нужно всего лишь нажать Enter для использования по умолчанию вы поставку ... (может, с небольшим количеством кода, может быть получен из файл - возможности ограничены вашим воображением ...)

+0

Спасибо, он отлично работает. Я сделал то, что вы сказали, и получил следующее, чтобы работать точно так, как планировалось: 'set 'map =" set/p "map = Какая карта вы хотите загрузить?" если задано map set "map = + map% map%" srcds.exe + имя хоста "[FAST-DL] Ультрареалистичный Апокалипсис Ролевая игра CustomRP ALPHA" + maxplayers 8 -console -authkey 8F1B5086400AC592380B5F303778D008 + gamemode darkrp% map% ' – Hoodlook