WisdomSoft - for your serial experiences.

ゲームの終了

明示的にプログラムからゲームを終了する方法を紹介します。

プログラムからゲームを終了する

Windows 用のゲームでウィンドウを表示している場合、ウィンドウの閉じるボタンからゲームを終了させることができます。しかし、フルスクリーンで実行しているゲームや Xbox 360 ゲームでは、明示的にゲームを終了させる方法が必要になります。強制終了させる方法はありますが、スマートではありません。タイトル画面にある「終了」メニューなどからゲームを終了させられるべきでしょう。プログラムからゲームを終了させるには Exit() メソッドを呼び出します。

Game クラス Exit() メソッド
public void Exit ()

このメソッドが呼び出されると、ゲームループを抜け出してゲームを終了します。

コード1
using Microsoft.Xna.Framework;

public class TestGame : Game
{
    public static void Main(string[] args)
    {
        using (Game game = new TestGame()) game.Run();
    }
    protected override void Update(GameTime gameTime)
    {
        Window.Title = gameTime.TotalGameTime.ToString();
        if (gameTime.TotalGameTime.TotalSeconds > 10) Exit();
        base.Update(gameTime);
    }
}

コード1は、ゲーム時間が 10 秒を経過した時点で Exit() メソッドを呼び出してゲームを終了します。実際には、コントローラの入力を受けて Exit() メソッドを呼び出してゲームを終了するという形になるでしょう。開発段階では Windows PC 上でデバッグしやすいように Escape キーに割り当てると便利です。