スコアの表示
今回はスコアの表示を追加します。
まず、UICanvas以下に、GameObject→UI→TextよりTextを追加します。
名前はScoreTextとします。
インスペクタで位置、サイズ、フォントの大きさを調整し、右揃えにします。
シーンビューは以下のような感じです。
続いて、動作させるためのコードを書いていきます。
スコアを計算し表示する
まずGameManagerにTextの参照を持っておくためのSerializeFieldと、Scoreというプロパティを追加します。
GameManager.cs
-略- [SerializeField] Text _scoreText; -略- //スコア int _score; public int Score { get { return _score; } } -略-
GameManagerにScoreTextを設定します。
野菜が生成されたということは、ゲームオーバーになっていないという事になるので、野菜生成時にスコアを加算するようにします。
ただし、一番最初の生成時には加算しないという条件を付けます。
また、ゲームオーバーの初期化時に、スコアの初期化を行います。
GameManager.cs
-略- //野菜を生成する public void CreateVegetable(){ -略- //スコア加算 if (_vegetableSpriteList.Count > 1){ _score++; _scoreText.text = _score.ToString(); } } -略- //初期化 void Initialize() { -略- //スコアの表示 _score = 0; _scoreText.text = _score.ToString(); -略- }
スコアが表示、加算されるようになりました。
コメント