Ejemplo n.º 1
0
    public static void AlertAllInRadius(Vector2 position, float radius)
    {
        if (radius <= 0)
        {
            return;
        }

        if (alertsManager == null) //Should never happen. alertsManager acts as a Singleton
        {
            return;
        }

        alertsManager.StartCoroutine(alertsManager.DebugAlertRadius(position, radius));

        foreach (Collider2D objInRange in Physics2D.OverlapCircleAll(position, radius))
        {
            Alertable alertable = objInRange.GetComponent <Alertable>();
            if (alertable != null)
            {
                if ((!(alertable.character.brain is ChasingBrain)) && (!(GameManager.Instance.playerManager.state is ReviveState)))
                {
                    alertable.Alert(position);
                }
            }
        }
    }