●実現したいこと
プレイヤーがクリアした時に、タイマーをとめたい。
●作っているゲーム
現在、自作でスペースキーを押すとジャンプができて
上にのぼっていくゲームを作っています。
●プレイヤーがクリアする条件
ゴール(写真右上に見えるオブジェクト)に"Finish"というタグをつけて
ゴールにぶつかったらゴールのテキストが表示される仕様です。
(Debug.Logは検知済みです)
C#
1 2PlayerManager.cs 3 4private void OnCollisionEnter2D(Collision2D collision) 5 { 6 if (collision.gameObject.tag == "Finish") 7 { 8 Debug.Log("ゲームクリア"); 9 //ゲームクリアテキストを表示する 10 gameClearText.SetActive(true); 11 12 } 13 }
●カウントダウンの実装
C#
1Timer.CS 2 3void Update() 4 { 5 //1秒ずつ減らしていく 6 time -= Time.deltaTime; 7 8 if (time <= 0) 9 { 10 //ゲームオーバーテキストを表示する 11 gameOverText.SetActive(true); 12 //コンティニューボタンを表示する 13 continueButton.SetActive(true); 14 //タイトルに戻るボタンを表示する 15 backToTitleButton.SetActive(true); 16 //爆発エフェクトを表示する 17 explosion.SetActive(true); 18 //プレイヤーを破壊 19 Destroy(playerImageGameObject); 20 } 21 22 if (time < 0) time = 0; 23 { 24 GetComponent<Text>().text = ((int)time).ToString(); 25 } 26 }
●やったこと・やろうとしていること
Timer.csに
if(クリアした時)
{
return;
}
とやろうとしています。
お助けいただけますと幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/05/16 13:09