#!/usr/bin/env bash
# Task #52 round 6: wait for the RESPAWN mech to finish coming up (its own
# chase-camera install = the SECOND one in B's log), then settle 30s and
# confirm B ticks continuously on the new mech (no late abort).
set -x
cd /c/git/bt411/content || exit 1
rm -f mp_a.log mp_b.log

BT_LOG=mp_b.log BT_AFFINITY=0x2 BT_MP_LOG=1 BT_MP_NET=1 BT_DEATH_LOG=1 BT_SCORE_LOG=1 \
  ../build/Debug/btl4.exe -egg MP.EGG -net 1601 &
sleep 2
BT_LOG=mp_a.log BT_AFFINITY=0x1 BT_MP_FORCE_DMG=1 BT_MP_LOG=1 \
  ../build/Debug/btl4.exe -egg MP.EGG -net 1501 &
sleep 4
python ../tools/btconsole.py MP.EGG 127.0.0.1:1501 127.0.0.1:1601 &
PC=$!

# wait (max 200s) until B has installed a SECOND chase camera (respawn mech up)
n=0
until [ "$(grep -c 'external debug chase camera' mp_b.log 2>/dev/null)" -ge 2 ] || [ $n -ge 200 ]; do sleep 2; n=$((n+2)); done
echo "=== respawn mech up after ~${n}s (chase-cam count=$(grep -c 'external debug chase camera' mp_b.log)); settling 30s ==="
sleep 30

kill $PC 2>/dev/null
taskkill //F //IM btl4.exe 2>/dev/null
taskkill //F //IM python.exe 2>/dev/null
echo "=== DONE ==="
