diff --git a/downloadSaves.ps1 b/downloadSaves.ps1 new file mode 100644 index 0000000..72b09fa --- /dev/null +++ b/downloadSaves.ps1 @@ -0,0 +1,35 @@ +param ( + [string]$destinationFolder = "../savegame4" +) + +# Получаем путь к текущей папке (папка скрипта) +$scriptFolder = Split-Path $MyInvocation.MyCommand.Path -Parent + +# Убедимся, что папка назначения существует, если нет — создаем её +if (-not (Test-Path -Path $destinationFolder)) { + New-Item -Path $destinationFolder -ItemType Directory +} + +# Получаем все файлы и папки в текущей папке, исключая .git, downloadSaves.ps1 и uploadSaves.ps1 +$filesToCopy = Get-ChildItem -Path $scriptFolder -Recurse | Where-Object { + $_.FullName -notmatch '\\\.git' -and + $_.Name -ne 'downloadSaves.ps1' -and + $_.Name -ne 'uploadSaves.ps1' +} + +# Копируем файлы в папку назначения +foreach ($file in $filesToCopy) { + # Если это папка, создаем такую же структуру в папке назначения + if ($file.PSIsContainer) { + $destinationPath = $file.FullName.Replace($scriptFolder, $destinationFolder) + if (-not (Test-Path -Path $destinationPath)) { + New-Item -Path $destinationPath -ItemType Directory + } + } else { + # Если это файл, копируем в папку назначения + $destinationFile = $file.FullName.Replace($scriptFolder, $destinationFolder) + Copy-Item -Path $file.FullName -Destination $destinationFile + } +} + +Write-Host "Копирование завершено." diff --git a/uploadSaves.ps1 b/uploadSaves.ps1 new file mode 100644 index 0000000..4b536b7 --- /dev/null +++ b/uploadSaves.ps1 @@ -0,0 +1,45 @@ +param( + [string]$saveFolder = "savegame2" # Папка с сейвом по умолчанию +) + +# Получаем путь к текущей директории (откуда был запущен скрипт) +$currentDir = Get-Location + +# Путь к родительской директории (папка FarmingSimulator2025) +$parentDir = Split-Path -Path $currentDir -Parent # Поднимаемся на уровень выше + + +# Путь к папке с сейвом (savegame2) +$sourcePath = Join-Path -Path $parentDir -ChildPath $saveFolder + +# Путь к папке, куда копируются файлы (текущая директория) +$gitPath = $currentDir + +Write-Host $currentDir -ForegroundColor Yellow +Write-Host $parentDir -ForegroundColor Yellow +Write-Host $sourcePath -ForegroundColor Yellow + +# Проверка существования папки с сейвом +if (-not (Test-Path $sourcePath)) { + Write-Host "❌ Папка сейва не найдена: $sourcePath" -ForegroundColor Red + exit +} + +# Копирование файлов +Write-Host "📂 Копирование сейва из '$sourcePath' в текущую папку..." +Copy-Item -Path "$sourcePath\*" -Destination $gitPath -Recurse -Force + +# Переход в текущую папку +Set-Location $gitPath + +# Добавление изменений в Git +git add . + +# Формирование текущего времени для коммита +$timeStamp = Get-Date -Format "yyyy-MM-dd_HH-mm-ss" + +# Создание коммита и пуш +git commit -m "Сейв от $timeStamp" +git push + +Write-Host "✅ Сейв синхронизирован и запушен в репозиторий." -ForegroundColor Green