//void Update() //{ // if (SpawnType == 0) // { // m_textMeshPro.SetText("{0}", m_frame); // } // else // { // m_textMesh.text = m_frame.ToString(); // } // m_frame = (m_frame + 1) % 1000; //} public IEnumerator DisplayTextMeshProFloatingText() { var CountDuration = 2.0f; // How long is the countdown alive. var starting_Count = Random.Range(5f, 20f); // At what number is the counter starting at. var current_Count = starting_Count; var start_pos = m_floatingText_Transform.position; Color32 start_color = m_textMeshPro.color; float alpha = 255; var int_counter = 0; var fadeDuration = 3 / starting_Count * CountDuration; while (current_Count > 0) { current_Count -= Time.deltaTime / CountDuration * starting_Count; if (current_Count <= 3) { //Debug.Log("Fading Counter ... " + current_Count.ToString("f2")); alpha = Mathf.Clamp(alpha - Time.deltaTime / fadeDuration * 255, 0, 255); } int_counter = (int)current_Count; m_textMeshPro.text = int_counter.ToString(); //m_textMeshPro.SetText("{0}", (int)current_Count); m_textMeshPro.color = new Color32(start_color.r, start_color.g, start_color.b, (byte)alpha); // Move the floating text upward each update m_floatingText_Transform.position += new Vector3(0, starting_Count * Time.deltaTime, 0); // Align floating text perpendicular to Camera. if (!lastPOS.Compare(m_cameraTransform.position, 1000) || !lastRotation.Compare(m_cameraTransform.rotation, 1000)) { lastPOS = m_cameraTransform.position; lastRotation = m_cameraTransform.rotation; m_floatingText_Transform.rotation = lastRotation; var dir = m_transform.position - lastPOS; m_transform.forward = new Vector3(dir.x, 0, dir.z); } yield return(new WaitForEndOfFrame()); } //Debug.Log("Done Counting down."); yield return(new WaitForSeconds(Random.Range(0.1f, 1.0f))); m_floatingText_Transform.position = start_pos; StartCoroutine(DisplayTextMeshProFloatingText()); }
//void Update() //{ // if (SpawnType == 0) // { //commented out code was ommited here // } // else // { //commented out code was ommited here // } //commented out code was ommited here //} public IEnumerator DisplayTextMeshProFloatingText() { float CountDuration = 2.0f; // How long is the countdown alive. float starting_Count = Random.Range(5f, 20f); // At what number is the counter starting at. float current_Count = starting_Count; Vector3 start_pos = m_floatingText_Transform.position; Color32 start_color = m_textMeshPro.color; float alpha = 255; int int_counter = 0; float fadeDuration = 3 / starting_Count * CountDuration; while (current_Count > 0) { current_Count -= (Time.deltaTime / CountDuration) * starting_Count; if (current_Count <= 3) { //commented out code was ommited here alpha = Mathf.Clamp(alpha - (Time.deltaTime / fadeDuration) * 255, 0, 255); } int_counter = (int)current_Count; m_textMeshPro.text = int_counter.ToString(); //commented out code was ommited here m_textMeshPro.color = new Color32(start_color.r, start_color.g, start_color.b, (byte)alpha); // Move the floating text upward each update m_floatingText_Transform.position += new Vector3(0, starting_Count * Time.deltaTime, 0); // Align floating text perpendicular to Camera. if (!lastPOS.Compare(m_cameraTransform.position, 1000) || !lastRotation.Compare(m_cameraTransform.rotation, 1000)) { lastPOS = m_cameraTransform.position; lastRotation = m_cameraTransform.rotation; m_floatingText_Transform.rotation = lastRotation; Vector3 dir = m_transform.position - lastPOS; m_transform.forward = new Vector3(dir.x, 0, dir.z); } yield return(new WaitForEndOfFrame()); } //commented out code was ommited here yield return(new WaitForSeconds(Random.Range(0.1f, 1.0f))); m_floatingText_Transform.position = start_pos; StartCoroutine(DisplayTextMeshProFloatingText()); }
//void Update() //{ // if (SpawnType == 0) // { // m_textMeshPro.SetText("{0}", m_frame); // } // else // { // m_textMesh.text = m_frame.ToString(); // } // m_frame = (m_frame + 1) % 1000; //} public IEnumerator DisplayTextMeshProFloatingText() { float countDuration = 2.0f; // How long is the countdown alive. float startingCount = Random.Range(5f, 20f); // At what number is the counter starting at. float currentCount = startingCount; Vector3 startPos = _mFloatingTextTransform.position; Color32 startColor = _mTextMeshPro.color; float alpha = 255; int intCounter = 0; float fadeDuration = 3 / startingCount * countDuration; while (currentCount > 0) { currentCount -= (Time.deltaTime / countDuration) * startingCount; if (currentCount <= 3) { //Debug.Log("Fading Counter ... " + current_Count.ToString("f2")); alpha = Mathf.Clamp(alpha - (Time.deltaTime / fadeDuration) * 255, 0, 255); } intCounter = (int)currentCount; _mTextMeshPro.text = intCounter.ToString(); //m_textMeshPro.SetText("{0}", (int)current_Count); _mTextMeshPro.color = new Color32(startColor.r, startColor.g, startColor.b, (byte)alpha); // Move the floating text upward each update _mFloatingTextTransform.position += new Vector3(0, startingCount * Time.deltaTime, 0); // Align floating text perpendicular to Camera. if (!_lastPos.Compare(_mCameraTransform.position, 1000) || !_lastRotation.Compare(_mCameraTransform.rotation, 1000)) { _lastPos = _mCameraTransform.position; _lastRotation = _mCameraTransform.rotation; _mFloatingTextTransform.rotation = _lastRotation; Vector3 dir = _mTransform.position - _lastPos; _mTransform.forward = new Vector3(dir.x, 0, dir.z); } yield return(new WaitForEndOfFrame()); } //Debug.Log("Done Counting down."); yield return(new WaitForSeconds(Random.Range(0.1f, 1.0f))); _mFloatingTextTransform.position = startPos; StartCoroutine(DisplayTextMeshProFloatingText()); }
public IEnumerator DisplayTextMeshProFloatingText() { while (true) { m_textMeshPro.text = m_navAgent.remainingDistance.ToString("f2"); // Align floating text perpendicular to Camera. if (!lastPOS.Compare(m_cameraTransform.position, 1000) || !lastRotation.Compare(m_cameraTransform.rotation, 1000)) { lastPOS = m_cameraTransform.position; lastRotation = m_cameraTransform.rotation; m_floatingText_Transform.rotation = lastRotation; //Vector3 dir = m_transform.position - lastPOS; //m_transform.forward = new Vector3(dir.x, 0, dir.z); } yield return(new WaitForEndOfFrame()); } }
// Update is called once per frame void Update() { if (playerTransform == null) { if (Player.instance != null) { playerTransform = Player.instance.transform; } } else { // Align floating text perpendicular to Camera. if (!lastPOS.Compare(playerTransform.position, 1000) || !lastRotation.Compare(playerTransform.rotation, 1000)) { lastPOS = playerTransform.position; lastRotation = playerTransform.rotation; transform.rotation = lastRotation; Vector3 dir = transform.position - lastPOS; transform.forward = new Vector3(dir.x, 0, dir.z); } // Scale floating text to keep it consistent in distances dist = Vector3.Distance(playerTransform.position, transform.position); if (dist > 10) { newScale = (dist * fontScale) / 10; } else { if (dist < 5) { newScale = fontScale / 2; } else { newScale = fontScale; } } textMesh.fontSize = newScale; } }