1. Najpierw otwieramy folder tam gdzie mamy pliki sp.
2. Tworzymy nowy plik o rozszerzeniu .bat z formatowaniem tekstu OEM 852 i wklejamy do niego taką zawartość
@echo off title Kompilacja plików .sp cls rem Parametry set notpause=0 if "%~1"=="-np" ( set notpause=1 shift ) rem Ścieżka do kompilatora set compiler=D:\Programy\Source Mod\1.6.4\addons\sourcemod\scripting\spcomp.exe if not exist "%compiler%" ( echo Kompilator %compiler% nie istnieje & goto WYJSCIE ) rem Ścieżka do plików .inc set include=D:\Programy\Source Mod\1.6.4\addons\sourcemod\scripting\include rem Ścieżka do własnych plików .inc set my_include=E:\Documents\pluginy\sm\include if not exist "%include%" ( echo Folder %include% nie istnieje & goto WYJSCIE ) rem Miejsce gdzie zostaną wrzucone pliki .smx rem Zostaw tak jak jest jeśli pliki .smx mają być w tym samym folderze co pliki .sp rem UWAGA! Na końcu ścieżki zawsze musi być dodany znak \ rem . oznacza aktualny folder gdzie został uruchomiony skrypt set output=.\ rem Usuwanie starych logów oraz tworzenie folderu gdzie mają być wrzucone pliki .smx if exist logi.log del logi.log if "%output%" == ".\" ( goto KOMPILACJA ) else ( if not exist "%output%" ( ( mkdir "%output%" && echo Folder %output% został utworzony ) || ( echo Nie udało się utworzyć folderu %output% & goto WYJSCIE ) ) ) :KOMPILACJA if %1X == X ( goto KOMPILACJA_ALL ) else ( goto KOMPILACJA_1 ) :KOMPILACJA_ALL echo Rozpoczynam kompilację plików .sp rem Przeszukanie całego aktualnego folderu (skąd został uruchomiony skrypt) oraz kompilacja for %%f in (*.sp) do ( echo *********** Plik: %%f *********** >> logi.log "%compiler%" -i"%include%" -i"include" -i"%my_include%" -o"%output%%%f" "%%f" >> logi.log echo ******************************************** >> logi.log echo Plik %%f skompilowany ) goto KOMPILACJA_END :KOMPILACJA_1 set plik=%1 for /f "useback tokens=*" %%a in ('%plik%') do set plik=%%~a echo Kompilacja pliku %plik% echo ****** Plik: %plik% ****** >> logi.log "%compiler%" -i"%include%" -i"include" -i"%my_include%" -o"%plik:~0,-2%smx" "%plik%" >> logi.log :KOMPILACJA_END echo Kompilacja zakończona. echo Komunikaty z kompilacji znajdują się w pliku logi.log :WYJSCIE echo. if %notpause% == 0 pause3. Edytujemy kod na potrzeby własne, czyli zmieniamy ścieżki, itp.
4. Tam gdzie znajdują się pliki sp można także wrzucić folder include z plikami inc, ta ścieżka jest zawsze dodawana przy kompilacji.
5. Uruchamiamy plik .bat i czekamy aż zakończy się kompilacja wszystkich plików lub jeśli chcemy skompilować tylko jeden plik sp, to nie uruchamiamy pliku .bat, a po prostu przeciągamy na niego wybrany plik sp.
Teraz za pomocą takiego skryptu, możemy masowo kompilować pluginy z wybranego folderu do miejsca gdzie sobie ustawimy.