private void OnTriggerEnter(Collider other)
 {
     if (AlternativeCamera == null)
     {
         AlternativeCamera = transform.parent.GetComponentInChildren <Cinemachine.ICinemachineCamera>();
     }
     if (other.gameObject.tag == "Player")
     {
         ElementalViewController buffer = other.gameObject.GetComponent <ElementalViewController>();
         if (brain.ContainsKey(buffer.cinemachineBrain))
         {
             return;
         }
         int currentValue = brain.Count;
         brain.Add(buffer.cinemachineBrain, brain.Count);
         buffer.cinemachineBrain.m_DefaultBlend = new Cinemachine.CinemachineBlendDefinition(Cinemachine.CinemachineBlendDefinition.Style.EaseInOut, blendingTime);
         deactivatedCamera.Add(buffer.normalView);
         //deactivatedTopCamera.Add(buffer.topView);
         AlternativeCamera.Priority = 15;
         AlternativeCamera.LookAt   = other.transform;
         if (mustFollow)
         {
             AlternativeCamera.Follow = other.transform;
         }
         deactivatedCamera[currentValue].Priority = 0;
     }
 }
    private void SlowTime()
    {
        Time.timeScale      = 0.1f;
        Time.fixedDeltaTime = Time.timeScale * .02f;
        ElementalViewController view = GetComponent <ElementalViewController>();

        if (view == null)
        {
            return;
        }
        view.Pan(40f, 0.1f);


        view.ZoomIn(0.1f);
    }
    private void RestoreTime()
    {
        Time.timeScale      = 1f;
        Time.fixedDeltaTime = Time.timeScale * .02f;

        ElementalViewController view = GetComponent <ElementalViewController>();

        if (view == null)
        {
            return;
        }

        view.Pan(60f, 0.3f);

        view.ZoomOut(0.3f);
    }
    private void OnTriggerExit(Collider other)
    {
        if (AlternativeCamera == null)
        {
            AlternativeCamera = transform.parent.GetComponentInChildren <Cinemachine.ICinemachineCamera>();
        }
        if (other.gameObject.tag == "Player")
        {
            ElementalViewController buffer = other.gameObject.GetComponent <ElementalViewController>();
            if (brain.ContainsKey(buffer.cinemachineBrain))
            {
                int currentValue = brain[buffer.cinemachineBrain];

                deactivatedCamera[currentValue].Priority = 15;

                AlternativeCamera.Priority = 0;
                deactivatedCamera.RemoveAt(currentValue);
                brain.Remove(buffer.cinemachineBrain);
                buffer.cinemachineBrain.m_DefaultBlend = new Cinemachine.CinemachineBlendDefinition(Cinemachine.CinemachineBlendDefinition.Style.EaseInOut, defaultBlending);
            }
        }
    }