57 lines
2.7 KiB
PowerShell
57 lines
2.7 KiB
PowerShell
# Указываем ссылки и пути
|
|
$repoUrl = "https://github.com/HypoxiE/rimworld-add-my-music-mod/archive/refs/heads/main.zip"
|
|
$zipPath = "$env:TEMP\custom_music.zip"
|
|
$extractPath = "$env:TEMP\custom_music_temp"
|
|
|
|
# Путь к папке Mods
|
|
$scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Definition
|
|
$steamappsPath = Resolve-Path (Join-Path $scriptDir "..\..\..\..")
|
|
if (-not($steamappsPath -like "*steamapps")){
|
|
Write-Host "[ERROR] The download is not possible because the mod is not located in the steamapps\workshop\content\294100\3523549667 folder" -ForegroundColor Red
|
|
Write-Host "[INFO] You can download the mod manually from the page https://github.com/HypoxiE/rimworld-add-my-music-mod if you are using an unlicensed version of the game"
|
|
Pause
|
|
exit
|
|
}
|
|
$rimworldMods = Join-Path $steamappsPath "common\RimWorld\Mods"
|
|
if (-not(Test-Path $rimworldMods)) {
|
|
Write-Host "[ERROR] The download is not possible because the game is not detected on the steamapps\common\RimWorld path" -ForegroundColor Red
|
|
Write-Host "[INFO] You can download the mod manually from the page https://github.com/HypoxiE/rimworld-add-my-music-mod if you are using an unlicensed version of the game"
|
|
Pause
|
|
exit
|
|
}
|
|
$instalationPath = Join-Path $rimworldMods "add_my_music_mod"
|
|
Write-Host "[DEBUG] Detected Steamapps: $steamappsPath"
|
|
Write-Host "[DEBUG] RimWorld Mods folder: $rimworldMods"
|
|
|
|
# Скачиваем и распаковываем архив
|
|
Write-Host "[INFO] Downloading mod from GitHub..."
|
|
Invoke-WebRequest -Uri $repoUrl -OutFile $zipPath
|
|
Write-Host "[INFO] Extracting..."
|
|
Expand-Archive -Path $zipPath -DestinationPath $extractPath -Force
|
|
|
|
# Удаляем старую папку мода, если есть
|
|
if (Test-Path $instalationPath) {
|
|
Write-Host "[INFO] Removing old mod files..."
|
|
Remove-Item -Recurse -Force $instalationPath
|
|
}
|
|
|
|
# Переносим файлы в Mods
|
|
Write-Host "[INFO] Installing mod..."
|
|
$sourceFolder = Get-ChildItem $extractPath | Select-Object -First 1
|
|
Move-Item -Path $sourceFolder.FullName -Destination $instalationPath
|
|
|
|
# Создаём нужные папки
|
|
New-Item -ItemType Directory -Path (Join-Path $instalationPath "Defs\SongDefs") -Force | Out-Null
|
|
New-Item -ItemType Directory -Path (Join-Path $instalationPath "Sounds\Gameplay") -Force | Out-Null
|
|
|
|
# Удаляем временные файлы
|
|
Write-Host "[INFO] Cleaning up..."
|
|
Remove-Item $zipPath
|
|
Remove-Item $extractPath -Recurse -Force
|
|
|
|
Write-Host "[INFO] Done! Mod installed to $instalationPath"
|
|
Write-Host "The installation is complete and the window can be closed. If you want to copy the path to the mod folder, press Enter" -ForegroundColor Green
|
|
Pause
|
|
Set-Clipboard -Value "$instalationPath"
|
|
Write-Host "[INFO] The path is copied"
|
|
Pause |