ゲームに問題があります。GameState.MainMenu
との 2 つの状態に分かれていGameState.Playing
ます。プレイ中にタイマーを画面に描画したい。gameTime.TotalGameTime.Minutes
と
gameTime.TotalGameTime.Seconds
変数を使用します。しかし、[今すぐプレイ] ボタンをクリックすると、ゲームの状態が からGameState.MainMenu
に切り替わるとGameState.Playing
、タイマーは 0 から始まりません。MainMenu で過ごしたときに経過した時間から始まります。MainMenu で費やした時間をカウントする次の変数を作成して、最初の変数から減算しようとしましたが、時間が正しく表示されません。
私の減算時間:
minutesPlaying = gameTime.TotalGameTime.Minutes; ;
secondsPlaying = gameTime.TotalGameTime.Seconds;
switch (currentGameState)
{
case GameState.MainMenu:
minutesMenu = gameTime.TotalGameTime.Minutes;
secondsMenu = gameTime.TotalGameTime.Seconds;
if (btnPlay.isTapped == true)
{
currentGameState = GameState.Playing;
soundEffectInstance.Stop();
}
btnPlay.Update(collection);
break;
case GameState.Playing:
minutesTotal = minutesPlaying - minutesMenu;
secondsTotal = secondsPlaying - secondsMenu;
break;
}
私のメソッドを呼び出します:
timer.Update(minutesTotal, secondsTotal);
更新方法:
public void Update(int min, int sec)
{
string seconds, minutes;
seconds = sec.ToString();
minutes = min.ToString();
if (sec <= 9) seconds = "0" + seconds;
if (min <= 9) minutes = "0" + minutes;
nowString = minutes + ":" + seconds;
}
ご回答ありがとうございます :)