public IEnumerator TakeEnemyTurn() { GameObject acting = currentOrder[0]; Debug.Log("acting enemy is: " + acting.name); yield return(aiBehavior.TakeAction(acting.GetComponent <UnitInfo>())); currentOrder.RemoveAt(0); currentOrder.Add(acting); acting.transform.Find("Pointer").gameObject.SetActive(false); ShowOrder(); }
void Update() { if (!ship.CanTakeAction()) { return; } bool actionTaken = false; for (int i = 0; i < behaviors.Length && !actionTaken; i++) { AIBehavior behavior = behaviors[i]; if (!behavior.AbilityIsReady()) { continue; } actionTaken = behavior.TakeAction(); } }