#!/usr/bin/env bash
# bot_v1 — REINICIO COMPLETO (botón "Reload BOT Server" de la UI):
#   mata el emulador 6004 + lo relanza desde el snapshot 'bot_ready' + frida-server + juego + backend.
# Best-effort (sin set -e): continúa aunque un paso falle.
HERE="$(cd "$(dirname "$0")" && pwd)"
D="emulator-6004"
log(){ echo "[full] $*"; }
log "=== REINICIO COMPLETO solicitado ==="

# 1) Matar el emulador (graceful via adb; si no responde -> pkill del proceso en el Mac)
log "matando emulador 6004 (adb emu kill)..."
adb -s "$D" emu kill >/dev/null 2>&1
sleep 4
if [ "$(adb -s "$D" get-state 2>/dev/null | tr -d '\r')" = "device" ] || pgrep -f "emulator.*-port 6004" >/dev/null 2>&1; then
  log "el emulador sigue vivo (congelado / adb no respondió) -> pkill del proceso..."
  pkill -9 -f "emulator.*-port 6004" 2>/dev/null
  pkill -9 -f "qemu.*evony_bot_1" 2>/dev/null
  pkill -9 -f "evony_bot_1" 2>/dev/null
  sleep 5
fi
adb kill-server >/dev/null 2>&1; sleep 1; adb start-server >/dev/null 2>&1

# 2) Relanzar TODO: emulador desde snapshot + frida-server + backend (que lanza el juego + attacha el agente).
#    start_bot.sh respeta BOT_BIND del entorno (lo pasa el endpoint /api/reload).
log "relanzando todo (start_bot.sh)..."
bash "$HERE/start_bot.sh"
log "=== reinicio completo lanzado ✅ ==="
