private void CheckHealth() { var currentLife = _minionController.lifeController.GetCurrentLife(); // Gets Current Life. CheckHealCooldown(); // Check Heal Cooldown currentLife = _minionController.lifeController.GetCurrentLife(); if (currentLife < _minionController._lowHealth) // If Minion is Low Health { var fleeDirection = _flee.GetDirection() + _minionController.transform.position; _avoid.SetTargetByVector(fleeDirection); // Set flee World Position as Target _minionController.Move(_avoid.GetDirection()); // Move to Flee Position } // Recover Health & Flee. if (currentLife < _minionController._recoverHealth) { if (_minionController.isBoss) { _minionController.AlertFlee(); if (fleeTimer <= 0) { _minionController.Kamikaze(); } } } // Recover Health & Not Flee. if (currentLife >= _minionController._recoverHealth) { _minionController._speed = _minionController._ogSpeed; _fsm.Transition(MinionController.States.IDLE); } // Back to Battle. }