예제 #1
0
    private void OnAgentChanged(ActiveAgentChangedEventBusData data)
    {
        _infoButton.interactable = GameController.Instance.ActiveAgent != null;
        var death = data.ExistsUpstream <AgentDiedEventBusData>();

        if (death != null)
        {
            var tween = BeginFader(GameController.Instance.ActiveAgent == null, data);
            if (death.DeadAgent.Succeeded)
            {
                tween.onComplete += () =>
                {
                    _successParticles.Play(true);
                };
            }
        }

        if (GameController.Instance.ActiveAgent != null)
        {
            var isRabbit = GameController.Instance.ActiveAgent is RabbitAgent;
            _nestIndicator.gameObject.SetActive(isRabbit);
            _wormCountRoot.gameObject.SetActive(isRabbit);
            enabled = true;
        }
    }
 private void OnActiveAgentChanged(ActiveAgentChangedEventBusData data)
 {
     if (GameController.Instance.ActiveAgent == this)
     {
         _target = null;
     }
 }