diff --git a/BizHawk.MultiClient/Config.cs b/BizHawk.MultiClient/Config.cs index a79b0c0954..bb2bd99101 100644 --- a/BizHawk.MultiClient/Config.cs +++ b/BizHawk.MultiClient/Config.cs @@ -129,6 +129,7 @@ public bool BackupSavestates = true; public int AutofireOn = 1; public int AutofireOff = 1; + public bool AutofireLagFrames = true; // Run-Control settings public int FrameProgressDelayMs = 500; //how long until a frame advance hold turns into a frame progress? diff --git a/BizHawk.MultiClient/MainForm.cs b/BizHawk.MultiClient/MainForm.cs index b9b6aea030..e2a3a2d908 100644 --- a/BizHawk.MultiClient/MainForm.cs +++ b/BizHawk.MultiClient/MainForm.cs @@ -1643,7 +1643,7 @@ namespace BizHawk.MultiClient UpdateTools(); - if (Global.Emulator.IsLagFrame) + if (Global.Emulator.IsLagFrame && Global.Config.AutofireLagFrames) { Global.AutoFireController.IncrementStarts(); } diff --git a/BizHawk.MultiClient/config/AutofireConfig.Designer.cs b/BizHawk.MultiClient/config/AutofireConfig.Designer.cs index fb091e7c5d..f7c31c3f48 100644 --- a/BizHawk.MultiClient/config/AutofireConfig.Designer.cs +++ b/BizHawk.MultiClient/config/AutofireConfig.Designer.cs @@ -36,6 +36,7 @@ this.label1 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label(); this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.LagFrameCheck = new System.Windows.Forms.CheckBox(); ((System.ComponentModel.ISupportInitialize)(this.OnNumeric)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.OffNumeric)).BeginInit(); this.groupBox1.SuspendLayout(); @@ -44,7 +45,7 @@ // Ok // this.Ok.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.Ok.Location = new System.Drawing.Point(42, 117); + this.Ok.Location = new System.Drawing.Point(120, 148); this.Ok.Name = "Ok"; this.Ok.Size = new System.Drawing.Size(75, 23); this.Ok.TabIndex = 5; @@ -56,7 +57,7 @@ // this.Cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.Cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this.Cancel.Location = new System.Drawing.Point(123, 117); + this.Cancel.Location = new System.Drawing.Point(201, 148); this.Cancel.Name = "Cancel"; this.Cancel.Size = new System.Drawing.Size(75, 23); this.Cancel.TabIndex = 7; @@ -139,13 +140,24 @@ this.groupBox1.TabStop = false; this.groupBox1.Text = "Autofire Pattern"; // + // LagFrameCheck + // + this.LagFrameCheck.AutoSize = true; + this.LagFrameCheck.Location = new System.Drawing.Point(13, 100); + this.LagFrameCheck.Name = "LagFrameCheck"; + this.LagFrameCheck.Size = new System.Drawing.Size(164, 17); + this.LagFrameCheck.TabIndex = 8; + this.LagFrameCheck.Text = "Take lag frames into account"; + this.LagFrameCheck.UseVisualStyleBackColor = true; + // // AutofireConfig // this.AcceptButton = this.Ok; this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.CancelButton = this.Cancel; - this.ClientSize = new System.Drawing.Size(210, 152); + this.ClientSize = new System.Drawing.Size(288, 183); + this.Controls.Add(this.LagFrameCheck); this.Controls.Add(this.groupBox1); this.Controls.Add(this.Cancel); this.Controls.Add(this.Ok); @@ -161,6 +173,7 @@ this.groupBox1.ResumeLayout(false); this.groupBox1.PerformLayout(); this.ResumeLayout(false); + this.PerformLayout(); } @@ -173,5 +186,6 @@ private System.Windows.Forms.Label label2; private System.Windows.Forms.GroupBox groupBox1; public System.Windows.Forms.NumericUpDown OnNumeric; + private System.Windows.Forms.CheckBox LagFrameCheck; } } \ No newline at end of file diff --git a/BizHawk.MultiClient/config/AutofireConfig.cs b/BizHawk.MultiClient/config/AutofireConfig.cs index e04bddf712..0f0ad10d92 100644 --- a/BizHawk.MultiClient/config/AutofireConfig.cs +++ b/BizHawk.MultiClient/config/AutofireConfig.cs @@ -31,12 +31,15 @@ namespace BizHawk.MultiClient OffNumeric.Value = OffNumeric.Maximum; else OffNumeric.Value = Global.Config.AutofireOff; + + LagFrameCheck.Checked = Global.Config.AutofireLagFrames; } private void Ok_Click(object sender, EventArgs e) { Global.AutoFireController.On = Global.Config.AutofireOn = (int)OnNumeric.Value; Global.AutoFireController.Off = Global.Config.AutofireOff = (int)OffNumeric.Value; + Global.Config.AutofireLagFrames = LagFrameCheck.Checked; this.Close(); } diff --git a/BizHawk.MultiClient/config/AutofireConfig.resx b/BizHawk.MultiClient/config/AutofireConfig.resx index 1b9e98add1..ea30c15079 100644 --- a/BizHawk.MultiClient/config/AutofireConfig.resx +++ b/BizHawk.MultiClient/config/AutofireConfig.resx @@ -112,12 +112,12 @@ 2.0 - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + AAABAAYAAAAAAAEAIAAoIAQAZgAAAICAAAABACAAKAgBAI4gBABAQAAAAQAgAChCAAC2KAUAMDAAAAEA