示例#1
0
 protected override void EndRun()
 {
     base.EndRun();
     WatchdogProcess.Stop();
     RenderProcess.Stop();
     UpdaterProcess.Stop();
     LoaderProcess.Stop();
     SoundProcess.Stop();
 }
示例#2
0
 protected override void BeginRun()
 {
     // At this point, GraphicsDevice is initialized and set up.
     SoundProcess.Start();
     LoaderProcess.Start();
     UpdaterProcess.Start();
     RenderProcess.Start();
     WatchdogProcess.Start();
     base.BeginRun();
 }
示例#3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Game"/> based on the specified <see cref="UserSettings"/>.
 /// </summary>
 /// <param name="settings">The <see cref="UserSettings"/> for the game to use.</param>
 public Game(UserSettings settings)
 {
     Settings        = settings;
     ContentPath     = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath), "Content");
     Exiting        += new System.EventHandler(Game_Exiting);
     WatchdogProcess = new WatchdogProcess(this);
     RenderProcess   = new RenderProcess(this);
     UpdaterProcess  = new UpdaterProcess(this);
     LoaderProcess   = new LoaderProcess(this);
     SoundProcess    = new SoundProcess(this);
     States          = new Stack <GameState>();
 }
示例#4
0
文件: Game.cs 项目: yinwuu/openrails
 public void ProcessReportError(Exception error)
 {
     // Turn off the watchdog since we're going down.
     WatchdogProcess.Stop();
     // Log the error first in case we're burning.
     Trace.WriteLine(new FatalException(error));
     // Stop the world!
     Exit();
     // Show the user that it's all gone horribly wrong.
     if (Settings.ShowErrorDialogs)
         System.Windows.Forms.MessageBox.Show(error.ToString(), Application.ProductName + " " + VersionInfo.VersionOrBuild);
 }