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.


Dodatki SourceMod













