Батчи

Вот есть такая монструозная вещь, как batch files в виндовсе, намного неудобнее любого sh или perl, но! Зато процессор оных стоит на каждой машине с виндовсом, а значит у каждого художника или геймдизайнера (или бухгалтера, клерка и кто там ещё пользуется компьютером в других отраслях).
Так вот, о чём это я – о том, что на самом деле со времён доса и 98 винды многое изменилось – нынешний cmd стал намного полезней того кошмара, что был много лет назад.
Мне даже удалось написать скрипт для сборки всех 30 наших уровней и практически обойтись без GOTO.

@echo off

set EXPORTER=..\..\tool\il_psp_exporter

set PC_RKB=..\build\pc\maps
set PC_CMD=-pwsp\il_psp.ddhproj -tPC -lRUS -xDX9 -xOpenAL -d

set PSP_RKB=..\build\psp\PSP_GAME\USRDIR\data\maps
set PSP_CMD=-pwsp\il_psp.ddhproj -tPSP -lRUS -xSASCore -d

IF  [%1]==[] (
 echo Usage: "build_level.bat level_number", or "build_level.bat all" for all levels export
 exit

) ELSE IF [%1]==[all] (
 echo building all levels
 FOR /L %%i IN (1, 1, 30) DO (
  CALL :s_export_level %%i
 )

) ELSE CALL :s_export_level %1

GOTO :eof

:s_export_level

 echo =============================
 echo processing level%1...
 echo =============================
 echo ----------------------------- 
 echo exporting briefing
 echo ----------------------------- 
 echo skipped due to technical reasons
 rem %EXPORTER% wsp\brf_level%1.ddlproj -o%PC_RKB%\brf_level%1.rkb %PC_CMD%
 rem %EXPORTER% wsp\brf_level%1.ddlproj -o%PSP_RKB%\brf_level%1.rkb %PSP_CMD%

 echo ----------------------------- 
 echo exporting PC content
 echo ----------------------------- 
 %EXPORTER% wsp\level%1.ddlproj -o%PC_RKB%\level%1.rkb %PC_CMD%

 echo ----------------------------- 
 echo exporting PSP content
 echo ----------------------------- 
 %EXPORTER% wsp\level%1.ddlproj -o%PSP_RKB%\level%1.rkb %PSP_CMD%
 echo =============================
GOTO :eof
_Winnie C++ Colorizer

Что у нас тут имеется:
Инициализация переменных – тут всё вроде бы просто.
Ветвление – обрамляется скобками, открывающая должна быть на той же строке, что и IF (ELSE)
Цикл по цифрам (есть ещё много других циклов, по каталогам, файлам, содержимому файлов).
Ещё имеется функция – это действительно функция (или субрутина, кому как) её можно вызывать и передавать параметры, что, собсно и делается.

Similar Posts

  • Завтра снова рано вставать на военку… Не хачу!!! Хачу выспацца! Share this post: Share on X (Twitter) Share on Facebook Share on LinkedIn Share on Email Share on Reddit

  • Баттлфилд 2

    Игра жжот. Она жжот сильнее чем цивилизация 🙂 Я подсел на нее как на какой-то наркотик – я спешу поскорее попасть домой, чтобы побегать с толпой на сервере, повоевать в составе отделения и пользуясь голосовыми переговорами. Это сила 🙂 Интересная штука эта игра – наглядно показывает, что ходить надо толпой – если ты убежал куда-то…

  • Многопоточность

    Я всегда боялся многопоточности, старался избегать ее всеми возможными путями. Еще в институте, когда у нас на занятиях по программированию началось изучение оной, я старался избежать расплаты 🙂 страшные названия мьютекс, семафор, критическая секция и прочие ввергали меня в панику. Это первая часть вступления, теперь вторая 🙂 Меня давно манили сети, те, которые компьютерные, мне…

  • Win7

    Поскольку концентрация упоминаний вокруг меня ещё не вышедшей ОС превысила все допустимые размеры, я решил посмотреть своими глазами на это счастие. Мне очень понравилось! В жертву была принесена машина, на которой стояла DesktopBSD, на которую я безуспешно пытался поставить KDE4. Машина, кстати, довольно древняя – Athlon 2500+, 2GB RAM, Radeon X850, 320 GB SATA HDD….

  • пушной жжод (+ немного орхетектуры)

    Пушной с его рамштайн-исполнением жжод неподецки, хорошие пародии творит 🙂 ЗЫ: Сегодня сделал первую кросс-платформенную птичку, часть движка, отвечающую за работу с файлами. Оно вроде и прикольно, и в то же время как-то не так выглядит, надо будет больше покурить тру-либы – злиб там, или пнг. Делал в си-стайле, ибо это все-таки библиотека и к…

  • Фотография

    Меня начала интересовать фотография, правда не настолько, чтобы покупать ацкую зеркалку за кучу баксов, но всё же. Изучаю всякие доки, очень полезно, оказывается, знать о композиции кадра – куда помещать главное, а куда второстепенное. Думаю, что очень важно даже для мыльничных фотографий – чтобы показ оных не вызывал у жертв желания сразу же закрыть альбом….