void Update() { if (Input.GetMouseButtonDown(0)) { ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit) && !isFollowing) { if ((hit.transform.tag == "Agent" || hit.transform.tag == "InfectedAgent") && checkForDoubleClick(Time.realtimeSinceStartup, hit.transform.gameObject)) { followCoroutine = follow(hit.transform.gameObject); StartCoroutine(followCoroutine); } if (hit.transform.tag == "Agent" || hit.transform.tag == "InfectedAgent") { if (agent != null) { agent.dishighlight(); } agent = hit.transform.GetComponentInChildren <AgentScript>(); agent.highlight(); if (statusCoroutine != null) { StopCoroutine(statusCoroutine); } statusCoroutine = setStatus(agent); StartCoroutine(statusCoroutine); } else { //StopCoroutine(statusCoroutine); //UIManagerScript.instance.hideStatus(); } } } if (Input.GetMouseButtonDown(1)) { StartCoroutine(unfollow()); } moveCamera(); }