@echo off
title Mod׹
setlocal enabledelayedexpansion

REM һ: ⵱ǰļǷΪb1
for %%I in ("%cd%") do (
    if /I "%%~nI" neq "b1" (
        echo 뽫ļõں·b1ļ
        pause
        exit /b
    )
)

:main
cls
REM ˵: ѡ
echo.
echo ѡҪеĲ:
echo 1. Lua Mod
echo 2. Pak Mod
echo 3. ˳
set /p choice_main="ѡ1-3: "
if "%choice_main%"=="1" (
    goto manage_lua_mod
) else if "%choice_main%"=="2" (
    goto manage_pak_mod
) else if "%choice_main%"=="3" (
    echo ˳...
    pause
    exit /b
) else (
    echo Ч
    goto main
)

:manage_lua_mod
cls
echo ⵽ǰװLua Mod...
echo رյLua Modᱻɾenabled.txtﵽͣĿ
set "mod_dir=.\Binaries\Win64\ue4ss\Mods"
setlocal enabledelayedexpansion
set count=0

REM ˵Ҫļ
for /d %%I in ("%mod_dir%\*") do (
    set "folder=%%~nxI"
    if /I "!folder!" neq "ActorDumperMod" if /I "!folder!" neq "AllowModsMod" if /I "!folder!" neq "BPML_GenericFunctions" if /I "!folder!" neq "BPModLoaderMod" if /I "!folder!" neq "CheatManagerEnablerMod" if /I "!folder!" neq "ConsoleCommandsMod" if /I "!folder!" neq "ConsoleEnablerMod" if /I "!folder!" neq "jsbLuaProfilerMod" if /I "!folder!" neq "Keybinds" if /I "!folder!" neq "KismetDebuggerMod" if /I "!folder!" neq "LineTraceMod" if /I "!folder!" neq "shared" if /I "!folder!" neq "SplitScreenMod" (
        set /a count+=1
        set "enabled=!mod_dir!\!folder!\enabled.txt"
        set "main_lua=!mod_dir!\!folder!\Scripts\main.lua"
        
        if exist "!enabled!" (
            if exist "!main_lua!" (
                echo !count!. [Lua MOD] Ѽ: !folder!
            ) else (
                echo !count!. [Lua MOD] 쳣: !folder!
            )
        ) else (
            if exist "!main_lua!" (
                echo !count!. [Lua MOD] δ: !folder!
            ) else (
                echo !count!. [Lua MOD] 쳣: !folder!
            )
        )
        set "mod_list[!count!]=!folder!"
    )
)

if !count! equ 0 (
    echo δҵɹLua Mod
    pause
    goto main
)

:lua_mod_selection
echo.
set /p lua_choice="ҪModԼرգb˵: "

if /I "%lua_choice%"=="b" (
    goto main
)

if not defined mod_list[%lua_choice%] (
    echo Ч
    goto lua_mod_selection
)

set "selected_mod=!mod_list[%lua_choice%]!"
set "enabled_file=%mod_dir%\!selected_mod!\enabled.txt"

if not exist "%mod_dir%\!selected_mod!\Scripts\main.lua" (
    echo [] Mod쳣޷
    pause
    goto lua_mod_selection
)

if exist "%enabled_file%" (
    echo ͣMod: !selected_mod!
    del /q "%enabled_file%"
) else (
    echo ڼMod: !selected_mod!
    echo. > "%enabled_file%"
)

goto manage_lua_mod
:manage_pak_mod
cls
echo ⵽ǰװPak Mod...
echo رյPak Modb1\PakMod_bak·
set "pak_dir=.\Content\Paks\~mods"
set "bak_dir=.\PakMod_bak"
set count=1

REM bakĿ¼
if not exist "%bak_dir%" mkdir "%bak_dir%"

REM pakĿ¼еļ
for %%I in ("%pak_dir%\*.pak") do (
    set "file=%%~nxI"
    echo !count!. [Pak MOD] Ѽ: !file!
    set "pak_list[!count!]=!file!"
    set /a count+=1
)

REM bakĿ¼еļ
for %%I in ("%bak_dir%\*.pak") do (
    set "file=%%~nxI"
    echo !count!. [Pak MOD] δ: !file!
    set "pak_list[!count!]=!file!"
    set /a count+=1
)

if %count% equ 1 (
    echo δҵPak Mod
    pause
    goto main
)

:pak_mod_selection
echo.
set /p pak_choice="ҪModԼرmodb˵: "

if /I "%pak_choice%"=="b" (
    goto main
)

if not defined pak_list[%pak_choice%] (
    echo Ч
    goto pak_mod_selection
)

set "selected_pak=!pak_list[%pak_choice%]!"
set "full_path=%pak_dir%\!selected_pak!"
set "bak_path=%bak_dir%\!selected_pak!"

REM жļĿ¼ƶļ
if exist "%full_path%" (
    echo ͣMod: !selected_pak!
    move /y "%full_path%" "%bak_path%"
) else (
    echo ڼMod: !selected_pak!
    move /y "%bak_path%" "%full_path%"
)

goto manage_pak_mod
