Пример #1
0
 private void MainForm_Load(object sender, EventArgs e)
 {
     bW = new BackgroundWorker();
     bW.WorkerSupportsCancellation = true;
     bW.DoWork += (s, ev) =>
     {
         while (true)
         {
             try
             {
                 if (emuInit && gameInit && formInit)
                 {
                     Dolphin.UpdateTrackerInfo(this);
                 }
                 FormUtils.Refresh();
             }
             catch
             {
                 emuInit  = false;
                 gameInit = false;
                 formInit = false;
                 FormUtils.Close();
                 break;
             }
             Thread.Sleep(200);
         }
     };
 }
Пример #2
0
 private void timer1_Tick(object sender, EventArgs e)
 {
     try
     {
         if (!emuInit)
         {
             emuInit = Dolphin.Init();
         }
         if (emuInit && !gameInit)
         {
             gameInit = Dolphin.GameInit();
         }
         if (emuInit && gameInit && !formInit)
         {
             Dolphin.InitMP();
             Dolphin.InitTracker(this);
             formInit = true;
             bW.RunWorkerAsync();
             this.timer1.Stop();
         }
     }
     catch
     {
         emuInit  = false;
         gameInit = false;
         formInit = false;
         FormUtils.Close();
     }
 }
Пример #3
0
 protected override void OnPaint(PaintEventArgs e)
 {
     base.OnPaint(e);
     base.SetStyle(ControlStyles.SupportsTransparentBackColor, true);
     base.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
     base.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
     try
     {
         if (!formInit)
         {
             e.Graphics.DrawString("Waiting for Metroid Prime 1/2/3...", new Font("Arial", 10), Brushes.Black, new Point(10, 5));
         }
         if (emuInit && gameInit && formInit)
         {
             Dolphin.UpdateTracker(e.Graphics);
         }
     }
     catch
     {
         emuInit  = false;
         gameInit = false;
         formInit = false;
         FormUtils.Close();
     }
 }