# Sobe os tres servidores do emulador.
#
# Nota sobre o Python desta maquina: a instalacao esta partida (o executavel em C:\Python314,
# a biblioteca em AppData) e o sys.prefix cai no diretorio atual. O pyodbc foi instalado
# direto em C:\Python314, que esta sempre no sys.path, entao NAO precisa de PYTHONHOME.
# Ver docs/findings.md.
Set-Location D:\RoshEmulator\server

Get-CimInstance Win32_Process -Filter "Name='python.exe'" |
    Where-Object { $_.CommandLine -match 'login_server|channel_server|world_server' } |
    ForEach-Object { Stop-Process -Id $_.ProcessId -Force }

foreach ($s in 'login_server','channel_server','world_server') {
    Start-Process 'C:\Python314\python.exe' -ArgumentList '-u', "$s.py" `
        -RedirectStandardOutput "D:\RoshEmulator\server\log\$($s.Split('_')[0])_stdout.log" `
        -RedirectStandardError  "D:\RoshEmulator\server\log\$($s.Split('_')[0])_stderr.log" `
        -WindowStyle Hidden
    Write-Host "$s iniciado"
}
Start-Sleep -Seconds 2
netstat -ano | Select-String "19999|20199|20299" | Select-String "LISTENING"
