【C#】秒数またはフレーム数で時間を判定する
30秒のミニゲームなんかで
ゲームスタートを押してから30秒をカウントダウンする時に使うやつです。
秒数またはフレーム数で時間を判定する
秒数を取得する
public class hogehoge : MonoBehaviour { private float seconds = 30f; bool IsStart = false; public void StartBtnCallBack() { IsStart =true; } public void Update() { seconds += Time.deltaTime; if(IsStart ) { seconds = 0; } else if(!IsStart &&seconds >=30) { seconds = 0; IsStart =false; } } }
Time.deltaTime; は前フレームから現在のフレームの経過時間を取得するため、Update関数で毎フレーム呼べば経過時間を取れる。
StartBtnCallBack()を適当なボタンに付ければボタンを押してから30秒を取れる。
フレーム数を取る場合は
float secondsを int flamesに変更。
seconds += Time.deltaTime;を sconds ++へ変更。
その他各secondsをflamesに変更すればOK