:: Описание:
:: Описание:
:: Описание:
:: Описание:
:: Описание:
:: Описание:
@echo off
chcp 65001 >nul
setlocal EnableDelayedExpansion

:STAR
:: Настройки
cls
title Установщик сборки MMP
set "PATH1=/Minecraft/Minecraft-MultiPlatform/MMP_Season_0/MMP.zip"
set "PATH2=/Minecraft/Minecraft-MultiPlatform/MMP_Season_0/MMP.mrpack"
set "FILENAME1=MMP.zip"
set "FILENAME2=MMP.mrpack"
set "SERV=http://192.168.30.10:8000"
set "DOWNLOADS=%USERPROFILE%\Downloads"
set "STAN=%Roaming%"
set "DESK=%USERPROFILE%\DESKTOP"
set "PATHTEST=/public.map"
set "FILETEST=public.map"
set "SERV2=http://gateos.soloshin.su:8000"


:: Проверка сервера
curl -L --connect-timeout 0.1 -o "%DOWNLOADS%\%FILETEST%" "%SERV%%PATHTEST%"

if %errorlevel% NEQ 0 (
set "SERV=http://gateos.soloshin.su:8000"
curl -L --connect-timeout 5 -o "%DOWNLOADS%\%FILETEST%" "!SERV!%PATHTEST%"
)

if %errorlevel% NEQ 0 (
echo.
echo ============================================
echo         Сервер установки недоступен!!
echo ============================================
echo.
echo.
echo   1 - Попробовать снова
echo   2 - Выйти
choice /C 12 /N

if !errorlevel! equ 1 (
goto STAR
) else (
echo Пока!
exit
)
)

del /q "%DOWNLOADS%\%FILETEST%"

:menu
cls
echo ============================================
echo     	 Как будем устанавливать?
echo ============================================
echo.
echo   Под стандартными лаунчерами имеются ввиду лаунчеры использующие директорию .minecraft
echo   Например "Microsoft Minecraft Launcher", "TLaucher", "Feather Client". 
echo   Если у вас лаунчер похожий на Modrinth App либо на Legacy Launcher , тогда
echo   воспользуйтесь либо установкой .mrpack(если поддерживает лаунчер), либо ручной установкой с рабочего стола.
echo.   
echo   Выберите подходящий вам вариант:
echo   Нажимайте только на цифры*  
echo.
echo.
echo   1 - Установить в стандартный лаучер (подробнее выше)
echo   2 - Установить в Modrinth App (Установка .mrpack)
echo   3 - Загрузить на рабочий стол (Без установки)
echo   4 - Выйти из загрузщика 
echo.
echo. 
choice /C 1234 /N /M "Выберите вариант: "

if %errorlevel% equ 1 goto STAN
if %errorlevel% equ 2 goto MODR
if %errorlevel% equ 3 goto DESK
if %errorlevel% equ 4 exit

:STAN
cls
echo Установка сборки в .minecraft...
echo.

:: Проверяем, есть ли curl (более надежный вариант)
where curl >nul 2>&1
if %errorlevel% equ 0 (
    curl -L -o "%DOWNLOADS%\!FILENAME1!" "%SERV%%PATH1%"
) else (
    :: Если curl нет, используем PowerShell
    powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest '%SERV%%PATH1%' -OutFile '%DOWNLOADS%\!FILENAME1!'"

)

dir /b "%APPDATA%\.minecraft\mods*" >nul 2>&1
if %errorlevel% equ 0 (
md "%USERPROFILE%\DESKTOP\Old_mods" >nul 2>&1
robocopy "%APPDATA%\.minecraft\mods" "%USERPROFILE%\DESKTOP\Old_mods"/MOVE >nul 2>&1
    echo.
    echo Старые моды были скопированы на рабочий стол!

)

cd "%USERPROFILE%\DOWNLOADS"
tar -xf !FILENAME1! -C %APPDATA%\.minecraft
    echo.
    echo Установка завершена!
    echo.
pause
exit

:MODR
cls
echo Загрузка сборки .mrpack...
echo.

:: Проверяем, есть ли curl (более надежный вариант)
where curl >nul 2>&1
if %errorlevel% equ 0 (
    curl -L -o "%DOWNLOADS%\!FILENAME2!" "%SERV%%PATH2%"
) else (
    :: Если curl нет, используем PowerShell
    powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest '%SERV%%PATH2%' -OutFile '%DOWNLOADS%\!FILENAME2'"
)

%USERPROFILE%\Downloads\MMPS1.mrpack
    echo.
    echo Установка завершена!
    echo.
pause
exit

:DESK
cls
echo Загрузка сборки на рабочий стол...
echo.

:: Проверяем, есть ли curl (более надежный вариант)
where curl >nul 2>&1
if %errorlevel% equ 0 (
    curl -L -o "%DOWNLOADS%\!FILENAME1!" "%SERV%%PATH1%"
) else (
    :: Если curl нет, используем PowerShell
    powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest '%SERV%%PATH1%' -OutFile '%DOWNLOADS%\!FILENAME1!'"

)
cd "%USERPROFILE%\DOWNLOADS"
tar -xf !FILENAME1! -C %USERPROFILE%\Desktop\
ren "%USERPROFILE%\Desktop\MMP" "MMP"
del /Q "%DOWNLOADS%\!FILENAME1!"
    echo.
    echo Загрузка завершена!
    echo.
pause
exit