using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using TMPro;        //TextMeshProを使用するときに必要
    
    public class ScoreText : MonoBehaviour
    {
        //このスクリプトはDigitMaxで指定した桁まで対応可能
        const int DigitMax = 7;
    
        GameObject playerObj;      //プレイヤーオブジェクト
        Player player;                      //
    
        TextMeshProUGUI tMesh;  //tMeshを変数で扱いたいので TextMeshProUGUI 型で宣言する
    
        int number = 0;                  //今の数値
        int number_old = 0;           //前回の数値
        
        // Start is called before the first frame update
        void Start()
        {
            //TextMeshPro のコンポーネントを取得
            tMesh = this.GetComponent<TextMeshProUGUI>();
    
            //Playerからスコアを取得
            playerObj = GameObject.FindGameObjectWithTag("Player");
            player = playerObj.GetComponent<Player>();
            number = player.playerScore;
            number_old = number;        
            
            //テキスト表示に反映
            tMesh.text = ZeroFill(number.ToString());
        }
    
         // Update is called once per frame
        void Update()
        {
            number = player.playerScore;
    
            //今の数値と以前の数値が異なったらテキスト更新
            if( number != number_old)
            {
                tMesh.text = ZeroFill(number.ToString());
            }
    
            number_old = number;     
        }
    
        string  ZeroFill(string _text)
        {
            string str = _text;
            int len = _text.Length;
    
            for( int i = 0; i <( DigitMax - len) ; i++ )
            {
                str = "0" + str;
            }
    
            return str;
        }
    }