diff --git a/Basketball Scoreboard System/App.config b/Basketball Scoreboard System/App.config index ad085f0..2ba9980 100644 --- a/Basketball Scoreboard System/App.config +++ b/Basketball Scoreboard System/App.config @@ -25,6 +25,9 @@ 5 + + 14000 + \ No newline at end of file diff --git a/Basketball Scoreboard System/Program.cs b/Basketball Scoreboard System/Program.cs index e0fc099..fb58cca 100644 --- a/Basketball Scoreboard System/Program.cs +++ b/Basketball Scoreboard System/Program.cs @@ -1,6 +1,7 @@ using Basketball_Scoreboard_System.classes; using Basketball_Scoreboard_System.forms; using System.Drawing.Text; +using System.Media; namespace Basketball_Scoreboard_System { @@ -18,6 +19,9 @@ namespace Basketball_Scoreboard_System public static Clock MainClock = new(Settings.Default.MainClockDefaultTime, false, true); public static Clock ShotClock = new(Settings.Default.ShotClockDefaultTime, true, false); + public static readonly SoundPlayer BuzzerMainClock = new(Properties.Resources.BuzzerMainClock); + public static readonly SoundPlayer BuzzerShotClock = new(Properties.Resources.BuzzerShotClock); + public static int Period = 1; [STAThread] diff --git a/Basketball Scoreboard System/Settings.Designer.cs b/Basketball Scoreboard System/Settings.Designer.cs index 1fe56ce..ffb0fc6 100644 --- a/Basketball Scoreboard System/Settings.Designer.cs +++ b/Basketball Scoreboard System/Settings.Designer.cs @@ -12,7 +12,7 @@ namespace Basketball_Scoreboard_System { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.3.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.11.0.0")] public sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); @@ -94,5 +94,17 @@ namespace Basketball_Scoreboard_System { this["BonusFoulThreshold"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("14000")] + public int ShotClockDefaultSecondaryTime { + get { + return ((int)(this["ShotClockDefaultSecondaryTime"])); + } + set { + this["ShotClockDefaultSecondaryTime"] = value; + } + } } } diff --git a/Basketball Scoreboard System/Settings.settings b/Basketball Scoreboard System/Settings.settings index 3ea321a..9e62ef0 100644 --- a/Basketball Scoreboard System/Settings.settings +++ b/Basketball Scoreboard System/Settings.settings @@ -20,5 +20,8 @@ 5 + + 14000 + \ No newline at end of file diff --git a/Basketball Scoreboard System/classes/Clock.cs b/Basketball Scoreboard System/classes/Clock.cs index e88930e..f12ac37 100644 --- a/Basketball Scoreboard System/classes/Clock.cs +++ b/Basketball Scoreboard System/classes/Clock.cs @@ -60,10 +60,16 @@ else return ParsedTime.Seconds.ToString(); } - public void SCUpdateButtonLabel() + public static void SCUpdateButtonLabel() { - TimeSpan SCS = TimeSpan.FromMilliseconds(DefaultTime); + TimeSpan SCS = TimeSpan.FromMilliseconds(Settings.Default.ShotClockDefaultTime); Program.ControlPanel.ButtonSCSetToDefault.Text = "Shot Clock\nSet " + SCS.Seconds.ToString() + "s"; } + + public static void SCUpdateSecondaryButtonLabel() + { + TimeSpan SCS = TimeSpan.FromMilliseconds(Settings.Default.ShotClockDefaultSecondaryTime); + Program.ControlPanel.ButtonSCSet14S.Text = "Shot Clock\nSet " + SCS.Seconds.ToString() + "s"; + } } } \ No newline at end of file diff --git a/Basketball Scoreboard System/forms/AudienceWindow.cs b/Basketball Scoreboard System/forms/AudienceWindow.cs index 1fe103a..5128012 100644 --- a/Basketball Scoreboard System/forms/AudienceWindow.cs +++ b/Basketball Scoreboard System/forms/AudienceWindow.cs @@ -1,12 +1,7 @@ -using System.Media; - -namespace Basketball_Scoreboard_System.forms +namespace Basketball_Scoreboard_System.forms { public partial class AudienceWindow : Form { - private readonly SoundPlayer BuzzerMainClock = new(Properties.Resources.BuzzerMainClock); - private readonly SoundPlayer BuzzerShotClock = new(Properties.Resources.BuzzerShotClock); - public AudienceWindow() => InitializeComponent(); private void LabelHomeTeamName_Paint(object sender, PaintEventArgs e) => LabelHomeTeamName.Font = Program.GetFontSize(e.Graphics, LabelHomeTeamName.Text, new Size(LabelHomeTeamName.Width - 20, LabelHomeTeamName.Height), LabelHomeTeamName.Font); @@ -32,7 +27,7 @@ namespace Basketball_Scoreboard_System.forms { Program.AudienceWindow.MainClockTimer.Stop(); Program.AudienceWindow.ShotClockTimer.Stop(); - BuzzerMainClock.Play(); + Program.BuzzerMainClock.Play(); } } @@ -47,7 +42,7 @@ namespace Basketball_Scoreboard_System.forms { Program.AudienceWindow.MainClockTimer.Stop(); Program.AudienceWindow.ShotClockTimer.Stop(); - BuzzerShotClock.Play(); + Program.BuzzerShotClock.Play(); } } } diff --git a/Basketball Scoreboard System/forms/ControlPanel.Designer.cs b/Basketball Scoreboard System/forms/ControlPanel.Designer.cs index 77055ce..803abe3 100644 --- a/Basketball Scoreboard System/forms/ControlPanel.Designer.cs +++ b/Basketball Scoreboard System/forms/ControlPanel.Designer.cs @@ -31,6 +31,7 @@ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ControlPanel)); ControlPanelMenuStrip = new MenuStrip(); GameMenu = new ToolStripMenuItem(); + GameMenuSoundHorn = new ToolStripMenuItem(); GameMenuSetPeriod = new ToolStripMenuItem(); GameMenuSwitchPossession = new ToolStripMenuItem(); TeamsMenu = new ToolStripMenuItem(); @@ -42,6 +43,7 @@ TeamsMenuAwaySetFouls = new ToolStripMenuItem(); SetBonusFoulThresholdMenuButton = new ToolStripMenuItem(); MainClockMenu = new ToolStripMenuItem(); + MainClockMenuResetClock = new ToolStripMenuItem(); MainClockMenuSetTime = new ToolStripMenuItem(); MainClockMenuSetDefaultTime = new ToolStripMenuItem(); ShotClockMenu = new ToolStripMenuItem(); @@ -78,6 +80,9 @@ LabelAwayScore = new Label(); LabelHomeFouls = new Label(); LabelHomeScore = new Label(); + ButtonHomeAdd1Foul = new Button(); + ButtonAwayAdd1Foul = new Button(); + ShotClockMenuSetDefaultSecondaryTime = new ToolStripMenuItem(); ControlPanelMenuStrip.SuspendLayout(); SuspendLayout(); // @@ -91,10 +96,16 @@ // // GameMenu // - GameMenu.DropDownItems.AddRange(new ToolStripItem[] { GameMenuSetPeriod, GameMenuSwitchPossession }); + GameMenu.DropDownItems.AddRange(new ToolStripItem[] { GameMenuSoundHorn, GameMenuSetPeriod, GameMenuSwitchPossession }); GameMenu.Name = "GameMenu"; resources.ApplyResources(GameMenu, "GameMenu"); // + // GameMenuSoundHorn + // + GameMenuSoundHorn.Name = "GameMenuSoundHorn"; + resources.ApplyResources(GameMenuSoundHorn, "GameMenuSoundHorn"); + GameMenuSoundHorn.Click += GameMenuSoundHorn_Click; + // // GameMenuSetPeriod // GameMenuSetPeriod.Name = "GameMenuSetPeriod"; @@ -157,10 +168,16 @@ // // MainClockMenu // - MainClockMenu.DropDownItems.AddRange(new ToolStripItem[] { MainClockMenuSetTime, MainClockMenuSetDefaultTime }); + MainClockMenu.DropDownItems.AddRange(new ToolStripItem[] { MainClockMenuResetClock, MainClockMenuSetTime, MainClockMenuSetDefaultTime }); MainClockMenu.Name = "MainClockMenu"; resources.ApplyResources(MainClockMenu, "MainClockMenu"); // + // MainClockMenuResetClock + // + MainClockMenuResetClock.Name = "MainClockMenuResetClock"; + resources.ApplyResources(MainClockMenuResetClock, "MainClockMenuResetClock"); + MainClockMenuResetClock.Click += MainClockMenuResetClock_Click; + // // MainClockMenuSetTime // MainClockMenuSetTime.Name = "MainClockMenuSetTime"; @@ -175,7 +192,7 @@ // // ShotClockMenu // - ShotClockMenu.DropDownItems.AddRange(new ToolStripItem[] { ShotClockMenuSetTime, ShotClockMenuSetDefaultTime, ShotClockMenuToggleShotClock }); + ShotClockMenu.DropDownItems.AddRange(new ToolStripItem[] { ShotClockMenuSetTime, ShotClockMenuSetDefaultTime, ShotClockMenuSetDefaultSecondaryTime, ShotClockMenuToggleShotClock }); ShotClockMenu.Name = "ShotClockMenu"; resources.ApplyResources(ShotClockMenu, "ShotClockMenu"); // @@ -231,11 +248,13 @@ // resources.ApplyResources(LabelHomeTitle, "LabelHomeTitle"); LabelHomeTitle.Name = "LabelHomeTitle"; + LabelHomeTitle.Paint += LabelHomeTitle_Paint; // // LabelAwayTitle // resources.ApplyResources(LabelAwayTitle, "LabelAwayTitle"); LabelAwayTitle.Name = "LabelAwayTitle"; + LabelAwayTitle.Paint += LabelAwayTitle_Paint; // // Line // @@ -382,11 +401,33 @@ resources.ApplyResources(LabelHomeScore, "LabelHomeScore"); LabelHomeScore.Name = "LabelHomeScore"; // + // ButtonHomeAdd1Foul + // + resources.ApplyResources(ButtonHomeAdd1Foul, "ButtonHomeAdd1Foul"); + ButtonHomeAdd1Foul.Name = "ButtonHomeAdd1Foul"; + ButtonHomeAdd1Foul.UseVisualStyleBackColor = true; + ButtonHomeAdd1Foul.Click += ButtonHomeAdd1Foul_Click; + // + // ButtonAwayAdd1Foul + // + resources.ApplyResources(ButtonAwayAdd1Foul, "ButtonAwayAdd1Foul"); + ButtonAwayAdd1Foul.Name = "ButtonAwayAdd1Foul"; + ButtonAwayAdd1Foul.UseVisualStyleBackColor = true; + ButtonAwayAdd1Foul.Click += ButtonAwayAdd1Foul_Click; + // + // ShotClockMenuSetDefaultSecondaryTime + // + ShotClockMenuSetDefaultSecondaryTime.Name = "ShotClockMenuSetDefaultSecondaryTime"; + resources.ApplyResources(ShotClockMenuSetDefaultSecondaryTime, "ShotClockMenuSetDefaultSecondaryTime"); + ShotClockMenuSetDefaultSecondaryTime.Click += ShotClockMenuSetDefaultSecondaryTime_Click; + // // ControlPanel // resources.ApplyResources(this, "$this"); AutoScaleMode = AutoScaleMode.Font; BackColor = Color.White; + Controls.Add(ButtonAwayAdd1Foul); + Controls.Add(ButtonHomeAdd1Foul); Controls.Add(LabelHomeBonus); Controls.Add(LabelHomeScore); Controls.Add(LabelAwayScore); @@ -481,5 +522,10 @@ public Label LabelAwayScore; public Label LabelHomeFouls; public Label LabelHomeScore; + private Button ButtonHomeAdd1Foul; + private Button ButtonAwayAdd1Foul; + private ToolStripMenuItem MainClockMenuResetClock; + private ToolStripMenuItem GameMenuSoundHorn; + private ToolStripMenuItem ShotClockMenuSetDefaultSecondaryTime; } } \ No newline at end of file diff --git a/Basketball Scoreboard System/forms/ControlPanel.cs b/Basketball Scoreboard System/forms/ControlPanel.cs index 8cefd26..f4987f7 100644 --- a/Basketball Scoreboard System/forms/ControlPanel.cs +++ b/Basketball Scoreboard System/forms/ControlPanel.cs @@ -1,4 +1,6 @@ -namespace Basketball_Scoreboard_System.forms +using Basketball_Scoreboard_System.classes; + +namespace Basketball_Scoreboard_System.forms { public partial class ControlPanel : Form { @@ -38,7 +40,11 @@ LabelHomeTitle.Text = Settings.Default.HomeTeamName; LabelAwayTitle.Text = Settings.Default.AwayTeamName; - if (Settings.Default.ShotClockEnabled) Program.ShotClock.SCUpdateButtonLabel(); + if (Settings.Default.ShotClockEnabled) + { + Clock.SCUpdateButtonLabel(); + Clock.SCUpdateSecondaryButtonLabel(); + } else { Program.AudienceWindow.LabelShotClock.Hide(); @@ -127,25 +133,20 @@ if (!Settings.Default.ShotClockEnabled) MessageBox.Show("Shot Clock is disabled", "", MessageBoxButtons.OK); else { - if (Program.AudienceWindow.ShotClockTimer.Enabled) MessageBox.Show("Shot Clock must be stopped", "", MessageBoxButtons.OK); - else + TimeSpan CurrentTime = TimeSpan.FromMilliseconds(Settings.Default.ShotClockDefaultTime); + + ShotClockTimeSet ShotClockTimeSet = new(); + + ShotClockTimeSet.SecondsSelector.Value = CurrentTime.Seconds; + + if (ShotClockTimeSet.ShowDialog() == DialogResult.OK) { - TimeSpan CurrentTime = TimeSpan.FromMilliseconds(Program.ShotClock.Time); + TimeSpan NewTime = TimeSpan.FromSeconds(ShotClockTimeSet.S); - ShotClockTimeSet ShotClockTimeSet = new(); + Settings.Default.ShotClockDefaultTime = (int)NewTime.TotalMilliseconds; + Settings.Default.Save(); - ShotClockTimeSet.SecondsSelector.Value = CurrentTime.Seconds; - - if (ShotClockTimeSet.ShowDialog() == DialogResult.OK) - { - TimeSpan NewTime = TimeSpan.FromSeconds(ShotClockTimeSet.S); - - Settings.Default.ShotClockDefaultTime = (int)NewTime.TotalMilliseconds; - Settings.Default.Save(); - - Program.ShotClock.Time = (int)NewTime.TotalMilliseconds; - Program.ShotClock.DisplayTime(); - } + Clock.SCUpdateButtonLabel(); } } } @@ -173,7 +174,8 @@ ButtonSCSetToDefault.Show(); ButtonSCSet14S.Show(); LabelShotClock.Show(); - Program.ShotClock.SCUpdateButtonLabel(); + Clock.SCUpdateButtonLabel(); + Clock.SCUpdateSecondaryButtonLabel(); } else { @@ -189,6 +191,7 @@ private void ButtonSCSetToDefault_Click(object sender, EventArgs e) { Program.ShotClock.Time = Settings.Default.ShotClockDefaultTime; + Program.ShotClock.DisplayTime(); if (Program.AudienceWindow.ShotClockTimer.Enabled) { @@ -199,7 +202,8 @@ private void ButtonSCSet14S_Click(object sender, EventArgs e) { - Program.ShotClock.Time = (int)TimeSpan.FromSeconds(14).TotalMilliseconds; + Program.ShotClock.Time = Settings.Default.ShotClockDefaultSecondaryTime; + Program.ShotClock.DisplayTime(); if (Program.AudienceWindow.ShotClockTimer.Enabled) { @@ -253,9 +257,35 @@ private void ButtonHomeScoreAdd1_Click(object sender, EventArgs e) => Program.HomeTeam.ChangeScore(1); - private void ButtonHomeScoreAdd2_Click(object sender, EventArgs e) => Program.HomeTeam.ChangeScore(2); + private void ButtonHomeScoreAdd2_Click(object sender, EventArgs e) + { + Program.HomeTeam.ChangeScore(2); - private void ButtonHomeScoreAdd3_Click(object sender, EventArgs e) => Program.HomeTeam.ChangeScore(3); + if (Settings.Default.ShotClockEnabled && Program.AudienceWindow.ShotClockTimer.Enabled) + { + Program.AudienceWindow.MainClockTimer.Stop(); + Program.AudienceWindow.ShotClockTimer.Stop(); + + Program.ShotClock.Time = Settings.Default.ShotClockDefaultTime; + + Program.ShotClock.DisplayTime(); + } + } + + private void ButtonHomeScoreAdd3_Click(object sender, EventArgs e) + { + Program.HomeTeam.ChangeScore(3); + + if (Settings.Default.ShotClockEnabled && Program.AudienceWindow.ShotClockTimer.Enabled) + { + Program.AudienceWindow.MainClockTimer.Stop(); + Program.AudienceWindow.ShotClockTimer.Stop(); + + Program.ShotClock.Time = Settings.Default.ShotClockDefaultTime; + + Program.ShotClock.DisplayTime(); + } + } private void ButtonHomeScoreSubtract1_Click(object sender, EventArgs e) => Program.HomeTeam.ChangeScore(-1); @@ -265,9 +295,35 @@ private void ButtonAwayScoreAdd1_Click(object sender, EventArgs e) => Program.AwayTeam.ChangeScore(1); - private void ButtonAwayScoreAdd2_Click(object sender, EventArgs e) => Program.AwayTeam.ChangeScore(2); + private void ButtonAwayScoreAdd2_Click(object sender, EventArgs e) + { + Program.AwayTeam.ChangeScore(2); - private void ButtonAwayScoreAdd3_Click(object sender, EventArgs e) => Program.AwayTeam.ChangeScore(3); + if (Settings.Default.ShotClockEnabled && Program.AudienceWindow.ShotClockTimer.Enabled) + { + Program.AudienceWindow.MainClockTimer.Stop(); + Program.AudienceWindow.ShotClockTimer.Stop(); + + Program.ShotClock.Time = Settings.Default.ShotClockDefaultTime; + + Program.ShotClock.DisplayTime(); + } + } + + private void ButtonAwayScoreAdd3_Click(object sender, EventArgs e) + { + Program.AwayTeam.ChangeScore(3); + + if (Settings.Default.ShotClockEnabled && Program.AudienceWindow.ShotClockTimer.Enabled) + { + Program.AudienceWindow.MainClockTimer.Stop(); + Program.AudienceWindow.ShotClockTimer.Stop(); + + Program.ShotClock.Time = Settings.Default.ShotClockDefaultTime; + + Program.ShotClock.DisplayTime(); + } + } private void ButtonAwayScoreSubtract1_Click(object sender, EventArgs e) => Program.AwayTeam.ChangeScore(-1); @@ -362,5 +418,80 @@ LabelHomeBonus.Visible = false; } } + + private void LabelHomeTitle_Paint(object sender, PaintEventArgs e) => LabelHomeTitle.Font = Program.GetFontSize(e.Graphics, LabelHomeTitle.Text, new Size(LabelHomeTitle.Width - 20, LabelHomeTitle.Height), LabelHomeTitle.Font); + + private void LabelAwayTitle_Paint(object sender, PaintEventArgs e) => LabelAwayTitle.Font = Program.GetFontSize(e.Graphics, LabelAwayTitle.Text, new Size(LabelAwayTitle.Width - 20, LabelAwayTitle.Height), LabelAwayTitle.Font); + + private void ButtonHomeAdd1Foul_Click(object sender, EventArgs e) + { + Program.HomeTeam.Fouls += 1; + Program.AudienceWindow.LabelHomeTeamFouls.Text = Program.HomeTeam.Fouls.ToString(); + LabelHomeFouls.Text = Program.HomeTeam.Fouls.ToString(); + + if (Program.HomeTeam.Fouls >= Settings.Default.BonusFoulThreshold) + { + Program.AwayTeam.Bonus = true; + Program.AudienceWindow.LabelAwayTeamBonus.Visible = true; + LabelAwayBonus.Visible = true; + } + else + { + Program.AwayTeam.Bonus = false; + Program.AudienceWindow.LabelAwayTeamBonus.Visible = false; + LabelAwayBonus.Visible = false; + } + } + + private void ButtonAwayAdd1Foul_Click(object sender, EventArgs e) + { + Program.AwayTeam.Fouls += 1; + Program.AudienceWindow.LabelAwayTeamFouls.Text = Program.AwayTeam.Fouls.ToString(); + LabelAwayFouls.Text = Program.AwayTeam.Fouls.ToString(); + + if (Program.AwayTeam.Fouls >= Settings.Default.BonusFoulThreshold) + { + Program.HomeTeam.Bonus = true; + Program.AudienceWindow.LabelHomeTeamBonus.Visible = true; + LabelHomeBonus.Visible = true; + } + else + { + Program.HomeTeam.Bonus = false; + Program.AudienceWindow.LabelHomeTeamBonus.Visible = false; + LabelHomeBonus.Visible = false; + } + } + + private void MainClockMenuResetClock_Click(object sender, EventArgs e) + { + Program.MainClock.Time = Settings.Default.MainClockDefaultTime; + Program.MainClock.DisplayTime(); + } + + private void GameMenuSoundHorn_Click(object sender, EventArgs e) => Program.BuzzerShotClock.Play(); + + private void ShotClockMenuSetDefaultSecondaryTime_Click(object sender, EventArgs e) + { + if (!Settings.Default.ShotClockEnabled) MessageBox.Show("Shot Clock is disabled", "", MessageBoxButtons.OK); + else + { + TimeSpan CurrentTime = TimeSpan.FromMilliseconds(Settings.Default.ShotClockDefaultSecondaryTime); + + ShotClockTimeSet ShotClockTimeSet = new(); + + ShotClockTimeSet.SecondsSelector.Value = CurrentTime.Seconds; + + if (ShotClockTimeSet.ShowDialog() == DialogResult.OK) + { + TimeSpan NewTime = TimeSpan.FromSeconds(ShotClockTimeSet.S); + + Settings.Default.ShotClockDefaultSecondaryTime = (int)NewTime.TotalMilliseconds; + Settings.Default.Save(); + + Clock.SCUpdateSecondaryButtonLabel(); + } + } + } } } \ No newline at end of file diff --git a/Basketball Scoreboard System/forms/ControlPanel.resx b/Basketball Scoreboard System/forms/ControlPanel.resx index 950a2e7..50f7a3c 100644 --- a/Basketball Scoreboard System/forms/ControlPanel.resx +++ b/Basketball Scoreboard System/forms/ControlPanel.resx @@ -121,6 +121,12 @@ 17, 17 + + 256, 34 + + + Sound Horn + 256, 34 @@ -187,6 +193,12 @@ Teams + + 244, 34 + + + Reset Clock + 244, 34 @@ -206,19 +218,25 @@ Main Clock - 257, 34 + 332, 34 Set Time - 257, 34 + 332, 34 Set Default Time + + 332, 34 + + + Set Default Secondary Time + - 257, 34 + 332, 34 Toggle Shot Clock @@ -256,7 +274,7 @@ $this - 30 + 32 @@ -290,7 +308,7 @@ $this - 29 + 31 Flat @@ -323,7 +341,7 @@ $this - 28 + 30 Flat @@ -345,7 +363,7 @@ Shot Clock -Set XXs +Set 24s ButtonSCSetToDefault @@ -357,7 +375,7 @@ Set XXs $this - 27 + 29 Flat @@ -391,7 +409,7 @@ Set 14s $this - 26 + 28 Segoe UI, 27.75pt, style=Bold @@ -424,7 +442,7 @@ Set 14s $this - 25 + 27 Segoe UI, 27.75pt, style=Bold @@ -457,7 +475,7 @@ Set 14s $this - 24 + 26 356, 177 @@ -481,7 +499,7 @@ Set 14s $this - 23 + 25 Flat @@ -514,7 +532,7 @@ Set 14s $this - 22 + 24 Flat @@ -547,7 +565,7 @@ Set 14s $this - 21 + 23 Flat @@ -580,7 +598,7 @@ Set 14s $this - 15 + 17 Flat @@ -613,7 +631,7 @@ Set 14s $this - 19 + 21 Flat @@ -646,7 +664,7 @@ Set 14s $this - 17 + 19 Flat @@ -679,7 +697,7 @@ Set 14s $this - 12 + 14 Flat @@ -712,7 +730,7 @@ Set 14s $this - 20 + 22 Flat @@ -745,7 +763,7 @@ Set 14s $this - 18 + 20 Flat @@ -778,7 +796,7 @@ Set 14s $this - 16 + 18 Flat @@ -811,7 +829,7 @@ Set 14s $this - 14 + 16 Flat @@ -844,7 +862,7 @@ Set 14s $this - 13 + 15 Flat @@ -877,7 +895,7 @@ Set 14s $this - 11 + 13 309, 667 @@ -907,7 +925,7 @@ Set 14s $this - 10 + 12 NoControl @@ -940,7 +958,7 @@ Set 14s $this - 9 + 11 333, 747 @@ -970,7 +988,7 @@ Set 14s $this - 8 + 10 389, 747 @@ -1003,7 +1021,7 @@ Set 14s $this - 7 + 9 277, 747 @@ -1033,7 +1051,7 @@ Set 14s $this - 4 + 6 389, 708 @@ -1066,7 +1084,7 @@ Set 14s $this - 3 + 5 277, 708 @@ -1099,7 +1117,7 @@ Set 14s $this - 0 + 2 445, 747 @@ -1129,7 +1147,7 @@ Set 14s $this - 6 + 8 445, 708 @@ -1159,7 +1177,7 @@ Set 14s $this - 2 + 4 222, 747 @@ -1189,7 +1207,7 @@ Set 14s $this - 5 + 7 222, 708 @@ -1219,8 +1237,80 @@ Set 14s $this + 3 + + + Flat + + + Segoe UI, 14.25pt + + + NoControl + + + 16, 691 + + + 4, 5, 4, 5 + + + 93, 112 + + + 15 + + + Fouls +1 + + + ButtonHomeAdd1Foul + + + System.Windows.Forms.Button, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + 1 + + Flat + + + Segoe UI, 14.25pt + + + NoControl + + + 604, 691 + + + 4, 5, 4, 5 + + + 93, 112 + + + 16 + + + Fouls +1 + + + ButtonAwayAdd1Foul + + + System.Windows.Forms.Button, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 0 + True @@ -1251,6 +1341,12 @@ Set 14s System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + GameMenuSoundHorn + + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + GameMenuSetPeriod @@ -1317,6 +1413,12 @@ Set 14s System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + MainClockMenuResetClock + + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + MainClockMenuSetTime @@ -1353,6 +1455,12 @@ Set 14s System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + ShotClockMenuSetDefaultSecondaryTime + + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089 + ControlPanel