//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());
        }
Ejemplo n.º 3
0
        //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());
        }
Ejemplo n.º 4
0
    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());
        }
    }
Ejemplo n.º 5
0
    // 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;
        }
    }