public int SingleAttack(List <IUnit> A, List <IUnit> B) { IUnit AUnit = Picker.AttackerAvailable(A); IUnit BUnit = Picker.UnitAlive(B); if (AUnit == null && BUnit != null) { return(1); // A not available or dead } if (BUnit == null && AUnit != null) { return(2); // B dead } if (BUnit == null && AUnit == null) { return(3); // A notavailable B dead } AUnit.Attack(BUnit); Debug.Log(AUnit + " attacked " + BUnit); tileController.addCoroutine(AUnit.AttackCoroutine(BUnit.UnitController.unit, BUnit.Alive)); return(0); //attack completed }