<#
  Install-FwsGameboot.ps1 — installe le composant de RETOUR FWS dans Windows.

  A lancer UNE FOIS, EN ADMIN, dans le Windows gaming. Deploie les scripts,
  desactive l'hibernation/Fast Startup de Windows (pour un reboot PLEIN → NTFS
  jamais "sale"), et cree une tache ONSTART (SYSTEM) qui arme le boot suivant
  vers FWS des le demarrage — filet anti-crash : si Windows redemarre tout seul
  (Windows Update, plantage) sans passer par fws-play, le boot suivant repart
  vers FWS.

  Empreinte minimale et SANS interference avec Vanguard : aucune injection,
  aucun pilote/hook noyau — juste des scripts, une tache planifiee et un reglage
  d'alimentation.
#>
#Requires -RunAsAdministrator
$ErrorActionPreference = 'Stop'

$dest = Join-Path $Env:ProgramData 'FWS'
New-Item -ItemType Directory -Force -Path $dest | Out-Null
Copy-Item (Join-Path $PSScriptRoot 'fws-return.ps1') $dest -Force
Copy-Item (Join-Path $PSScriptRoot 'fws-play.ps1')   $dest -Force

# (1) Pas d'hibernation Windows / Fast Startup : reboot PLEIN → volumes propres.
& powercfg /h off 2>$null

# (2) Tache ONSTART (SYSTEM) : armer le boot suivant vers FWS au demarrage.
$action = New-ScheduledTaskAction -Execute 'powershell.exe' `
    -Argument ('-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File "{0}\fws-return.ps1" -Target FWS' -f $dest)
$trigger   = New-ScheduledTaskTrigger -AtStartup
$principal = New-ScheduledTaskPrincipal -UserId 'SYSTEM' -LogonType ServiceAccount -RunLevel Highest
$settings  = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
Register-ScheduledTask -TaskName 'FWS-Return-OnStart' -Action $action -Trigger $trigger `
    -Principal $principal -Settings $settings -Force | Out-Null

Write-Host ""
Write-Host "Composant FWS installe dans $dest et tache 'FWS-Return-OnStart' creee." -ForegroundColor Green
Write-Host ""
Write-Host "RAPPELS IMPORTANTS :" -ForegroundColor Yellow
Write-Host " - NE PAS activer BitLocker (Device Encryption) sans sauvegarder la cle :"
Write-Host "   le passage de Secure Boot OFF->ON cote FWS change PCR7 et declencherait"
Write-Host "   l'ecran de recuperation BitLocker. (Verifie : manage-bde -status)"
Write-Host " - Pour un lancement AUTO de Valorant : ajouter fws-play.ps1 au demarrage"
Write-Host "   de session du compte gaming (autologin), sinon lance-le a la main."
Write-Host " - Vanguard exige Secure Boot + TPM 2.0 + VBS/HVCI : ne les desactive pas."
