@echo off
chcp 936 > nul
color 47
title Prefire ONE-CLICK RUN by:RoyZ 2024.4.16

:menu
cls
echo 脚本作者：RoyZ
echo 脚本发布地址https://royz.lanzoub.com/b0kmy8aza 密码:6657
echo =================================================
echo =================================================
echo =================================================
echo ===欢迎使用预瞄插件一键安装启动脚本 v2024.4.16===
echo 请选择功能：
echo 1. 一键创建预瞄服务器文件并创建快捷方式
echo 2. 游戏或插件更新后重新创建服务器
echo 3. 创建桌面快捷方式
echo 4. 删除预瞄服务器（释放硬盘）
echo 5. 退出

set /p choice=请输入功能编号：

if /I "%choice%"=="1" (
    call :create_server
) else if /I "%choice%"=="2" (
    call :update_plugin
) else if /I "%choice%"=="3" (
    call :shortcut
) else if /I "%choice%"=="4" (
    call :delserver
) else if /I "%choice%"=="5" (
    exit
) else (
    echo 无效选择，请重新输入。
    timeout /t 3 > nul
    goto menu
)

:create_server
cls
echo 正在复制game文件夹...
xcopy /E /I /Y /C "game" "gamePFS"
echo game文件夹复制完成.

echo 正在安装插件...
xcopy /E /I /Y /C "PFServer\bin" "gamePFS\bin"
xcopy /E /I /Y /C "PFServer\csgo" "gamePFS\csgo"
echo 安装插件完成.

echo 正在创建桌面快捷方式...
echo Set oWS = WScript.CreateObject("WScript.Shell") > CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut("%USERPROFILE%\Desktop\启动预瞄服务器.lnk") >> CreateShortcut.vbs
echo oLink.TargetPath = "%cd%\gamePFS\bin\win64\preaimserver.bat" >> CreateShortcut.vbs
echo oLink.Save >> CreateShortcut.vbs
cscript CreateShortcut.vbs
del CreateShortcut.vbs
echo Set oWS = WScript.CreateObject("WScript.Shell") > CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut("%USERPROFILE%\Desktop\连接预瞄服务器.lnk") >> CreateShortcut.vbs
echo oLink.TargetPath = "%cd%\gamePFS\bin\win64\connectserver.bat" >> CreateShortcut.vbs
echo oLink.Save >> CreateShortcut.vbs
cscript CreateShortcut.vbs
del CreateShortcut.vbs

echo 预瞄服务器创建完成，已在桌面创建快捷方式.
set /p run_server=是否现在运行预瞄服务器？（Y/N）
set run_server=%run_server:~0,1%
if /I "%run_server%"=="Y" (
    start gamePFS\bin\win64\preaimserver.bat
    echo 按下任意键可进入预瞄服务器，否则请直接关闭窗口。
    pause
    start steam://connect/127.0.0.1?appid=730
    echo 正在返回菜单
    timeout /t 3 > nul
    goto menu
) else (
    echo 正在返回菜单
    timeout /t 3 > nul
    goto menu
)
echo 正在返回菜单
timeout /t 3 > nul
goto menu
goto :eof

:update_plugin
cls
set /p confirm=这将删除已经复制的game文件夹，非本脚本创建的文件夹不会删除需要手动操作。（Y/N）
set confirm=%confirm:~0,1%
if /I "%confirm%"=="Y" (
    rmdir /s /q "gamePFS"
    echo gamePFS文件夹已删除.
) else (
    echo 正在返回菜单
    timeout /t 3 > nul
    goto menu
)

echo 正在复制game文件夹...
xcopy /E /I /Y /C "game" "gamePFS"
echo game文件夹复制完成.

echo 正在安装插件...
xcopy /E /I /Y /C "PFServer\bin" "gamePFS\bin"
xcopy /E /I /Y /C "PFServer\csgo" "gamePFS\csgo"
echo 安装插件完成.
echo 正在返回菜单
timeout /t 3 > nul
goto menu

goto :eof

:shortcut
cls
echo 正在创建桌面快捷方式...
echo Set oWS = WScript.CreateObject("WScript.Shell") > CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut("%USERPROFILE%\Desktop\启动预瞄服务器.lnk") >> CreateShortcut.vbs
echo oLink.TargetPath = "%cd%\gamePFS\bin\win64\preaimserver.bat" >> CreateShortcut.vbs
echo oLink.Save >> CreateShortcut.vbs
cscript CreateShortcut.vbs
del CreateShortcut.vbs
echo Set oWS = WScript.CreateObject("WScript.Shell") > CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut("%USERPROFILE%\Desktop\连接预瞄服务器.lnk") >> CreateShortcut.vbs
echo oLink.TargetPath = "%cd%\gamePFS\bin\win64\connectserver.bat" >> CreateShortcut.vbs
echo oLink.Save >> CreateShortcut.vbs
cscript CreateShortcut.vbs
del CreateShortcut.vbs
echo 正在返回菜单
timeout /t 3 > nul
goto menu

goto :eof

:delserver
cls
set /p confirm=这将删除已经复制的game文件夹，非本脚本创建的文件夹不会删除，需要手动操作。（Y/N）
set confirm=%confirm:~0,1%
if /I "%confirm%"=="Y" (
    rmdir /s /q "gamePFS"
    echo gamePFS文件夹已删除，请手动删除桌面快捷方式！！！
) else (
    echo 正在返回菜单
    timeout /t 3 > nul
    goto menu
)
echo 正在返回菜单
timeout /t 3 > nul
goto menu

goto :eof