#!/bin/bash
# ============================================================================
#  ARRANCAR la V5 pixel (escáner, puerto 8773) bajo SUPERVISOR (con respawn)
#  Lanza supervise_pixel.sh: prepara frida-server + juego (si hace falta) +
#  backend con auto-respawn (si frida peta, lo relanza solo).
# ============================================================================
export PATH="/opt/homebrew/bin:/usr/bin:/bin:$PATH"
DIR="/Users/danicosta/Desktop/Evony/evony-scout-pixel-v5"
echo "==> Arrancando V5 pixel (:8773)..."

if lsof -nP -iTCP:8773 -sTCP:LISTEN >/dev/null 2>&1; then
  echo "==> ⚠ Ya hay algo escuchando en :8773 (¿V5 ya corriendo?)."
  echo "    Usa 'Reiniciar_V5' si quieres reiniciarla."
  echo ""
  exit 0
fi
if [ ! -d "$DIR" ]; then echo "==> ❌ No existe la carpeta $DIR"; exit 1; fi

cd "$DIR" || exit 1
# nohup + disown: sobrevive al cerrar esta ventana de Terminal.
SCANNER_W=192.168.0.30:5555 SCANNER_E=192.168.0.31:5555 \
  nohup bash ./supervise_pixel.sh </dev/null >/dev/null 2>&1 & disown
echo "    · supervisor lanzado (su log: /tmp/evony_pixel.log)."
echo "    · esperando a que el backend bindee :8773 (el prep de dispositivos tarda un poco)..."

UP=0
for i in $(seq 1 60); do
  if lsof -nP -iTCP:8773 -sTCP:LISTEN >/dev/null 2>&1; then UP=1; break; fi
  sleep 3
done

echo ""
if [ "$UP" = 1 ]; then
  echo "==> ✅ V5 ARRIBA en :8773."
  echo "    · Tras un arranque puede tardar 1-2 min en pelar los popups de inicio de Evony."
  echo "    · Web: https://blissful-morse.5-196-224-241.plesk.page/"
else
  echo "==> ⚠ Aún no bindea :8773. Mira el log:  tail -f /tmp/evony_pixel.log"
fi
echo ""
