Advertisement
Urik_Kane

l4d2_generate_addon_filelist

Apr 21st, 2022
1,523
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 2.12 KB | None | 0 0
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. title %~n0
  4.  
  5. set filelist=file_list.txt
  6.  
  7. if not "%~1"=="" ( set "folder1=%~1" & goto :Continue)
  8. if exist addoninfo.txt goto :Continue
  9.  
  10. :Folder1
  11. set f=
  12. echo.
  13. set /p f="Drop mod folder here "
  14. if not '!f!'=='' (
  15.     set f=!f:"=!
  16.     for %%A in ("!f!") do ( if exist "%%~A" set "folder1=%%~A" & set "folder1name=%%~nA" & goto :Continue)
  17. )
  18. goto :Folder1
  19. goto :eof
  20.  
  21. :Continue
  22. if not "%folder1%"=="" if exist "%folder1%" cd /d "%folder1%"
  23. if exist addoninfo.txt CALL :ReadAddoninfo addoninfo.txt
  24. if not "!addontitle!"=="" ( set "msg=!addontitle!") else ( set "msg=%folder1%")
  25.  
  26. :Confirm
  27. set proceed=
  28. set /p "proceed= Confirm %msg% (Y/N)?"
  29. if not "!proceed!"=="" (
  30.     set "proceed=!proceed: =!"
  31.     for /f "delims=yYnN" %%A in ('echo !proceed!') do ( goto :Confirm)
  32. )
  33. if /i !proceed!==y goto :ProcessFolder
  34. if /i !proceed!==n goto :Folder1
  35. goto :Confirm
  36.  
  37.  
  38.  
  39. :ProcessFolder
  40. if exist %filelist% del %filelist%
  41. for /r %%A in (*.*) do CALL :ParseFile "%cd%" "%%~A" %%~xA
  42. set line=
  43. goto :Finish
  44.  
  45. :Finish
  46. echo.
  47. echo ----------------------------------
  48. echo Finished
  49. echo ----------------------------------
  50. pause & goto :eof
  51.  
  52. :ParseFile
  53. for %%A in (addoninfo.txt addonimage.jpg) do ( if /i "%~nx2"=="%%~A" goto :eof)
  54. if /i "%~nx2"=="%~nx0" goto :eof
  55.  
  56. set "line=%~2"
  57. set line=!line:%~dpnx1\=!
  58.  
  59. for %%X in (.ani .bik .bsp .cache .cfg .dat .dict .lst .manifest .mdl .mp3 .nav .nuc .nut .pcf .phy .phz .pre .rad .raw .res .snd .tbl .txt .vbf .vbsp .vcs .vcd .vdf .vfe .vfont .vmt .vtf .vtx .vvd .wav) do ( if /i %3==%%X ( echo !line!& echo !line!>>"%filelist%"& goto :eof))
  60. goto :eof
  61.  
  62. :ReadAddoninfo
  63. for /f "tokens=*" %%L in ('type "addoninfo.txt"') DO ( 
  64.     if "!addontitle!"=="" (
  65.         echo "%%L"| find /i "addontitle" > nul 2>&1
  66.         if !ErrorLevel!==0 (
  67.             set addontitle=%%~L
  68.             set "addontitle=!addontitle:addontitle=!"
  69.             set addontitle=!addontitle:"=!
  70.             for /f "tokens=*" %%A in ("!addontitle!") do set "addontitle=%%~A"
  71.         )
  72.     )
  73. )
  74. goto :eof
  75.  
  76.  
  77.  
  78. cd /d "%~dp0"
  79. if exist addoninfo.txt ( CALL :ReadAddoninfo addoninfo.txt) else ( goto :Folder1)
  80. if not "!addontitle!"=="" goto :Continue
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement