From 1d7d77ae0ab918be0206b280d575906f3c09f27c Mon Sep 17 00:00:00 2001 From: Moj Date: Wed, 3 Sep 2025 21:12:37 -0400 Subject: [PATCH 01/19] Remove unneccessary repetition --- Jukebox_Mascot/MainWindow.xaml.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index 058962b..e3b2d3d 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -295,8 +295,8 @@ private void ReopenScrollingBorder() { openTimer.Stop(); string filePath = MUSIC_FILES[CURRENT_TRACK_INDEX]; - string songName = System.IO.Path.GetFileNameWithoutExtension(filePath); - ScrollingText.Text = $"🎵 Now Playing: {songName} 🎵"; + //string songName = System.IO.Path.GetFileNameWithoutExtension(filePath); + //ScrollingText.Text = $"🎵 Now Playing: {songName} 🎵"; ScrollingText.Visibility = Visibility.Visible; StartScrolling(); } From 8130b8cdda4c838723cc6231dcee6d383663a082 Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 08:57:05 -0400 Subject: [PATCH 02/19] Removed code that conflicted with other functions --- Jukebox_Mascot/MainWindow.xaml.cs | 3 --- 1 file changed, 3 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index e3b2d3d..b7074f4 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -294,9 +294,6 @@ private void ReopenScrollingBorder() else { openTimer.Stop(); - string filePath = MUSIC_FILES[CURRENT_TRACK_INDEX]; - //string songName = System.IO.Path.GetFileNameWithoutExtension(filePath); - //ScrollingText.Text = $"🎵 Now Playing: {songName} 🎵"; ScrollingText.Visibility = Visibility.Visible; StartScrolling(); } From e40aaa0c6108790bc4bded0394f14d374fb95307 Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 08:58:27 -0400 Subject: [PATCH 03/19] Removed assembly info because it is not needed for the SDK format --- Jukebox_Mascot/Properties/AssemblyInfo.cs | 55 ----------------------- 1 file changed, 55 deletions(-) delete mode 100644 Jukebox_Mascot/Properties/AssemblyInfo.cs diff --git a/Jukebox_Mascot/Properties/AssemblyInfo.cs b/Jukebox_Mascot/Properties/AssemblyInfo.cs deleted file mode 100644 index a6eb798..0000000 --- a/Jukebox_Mascot/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System.Reflection; -using System.Resources; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; -using System.Windows; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Jukebox_Mascot")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Jukebox_Mascot")] -[assembly: AssemblyCopyright("Copyright © 2025")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -//In order to begin building localizable applications, set -//CultureYouAreCodingWith in your .csproj file -//inside a . For example, if you are using US english -//in your source files, set the to en-US. Then uncomment -//the NeutralResourceLanguage attribute below. Update the "en-US" in -//the line below to match the UICulture setting in the project file. - -//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)] - - -[assembly: ThemeInfo( - ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located - //(used if a resource is not found in the page, - // or application resource dictionaries) - ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located - //(used if a resource is not found in the page, - // app, or any theme specific resource dictionaries) -)] - - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] From 8fdb20f7ff5d5b0570c3437103832082a2836159 Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:05:27 -0400 Subject: [PATCH 04/19] Assigned buttons to variables to control whether or not they are active --- Jukebox_Mascot/MainWindow.xaml.cs | 45 ++++++++++++++++++++++++++++--- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index b7074f4..84703ab 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -364,9 +364,16 @@ private void SetupTrayIcon() TRAY_ICON.Text = "Jukebox"; var menu = new ContextMenuStrip(); - menu.Items.Add("Play", null, (s, e) => PlayMusic()); - menu.Items.Add("Pause", null, (s, e) => PauseMusic()); - menu.Items.Add("Next Track", null, (s, e) => NextTrack()); + + // Save the buttons in variables so that they can be disabled/enabled later if needed + var playButton = new ToolStripMenuItem("Play"); + playButton.Click += (sender, e) => PlayMusic(); + + var pauseButton = new ToolStripMenuItem("Pause"); + pauseButton.Click += (sender, e) => PauseMusic(); + + var nextButton = new ToolStripMenuItem("Next Track"); + nextButton.Click += (sender, e) => NextTrack(); var randomChar = new ToolStripMenuItem("Random Characters") { CheckOnClick = true }; randomChar.CheckedChanged += (s, e) => @@ -380,8 +387,40 @@ private void SetupTrayIcon() IS_RANDOM = randomItem.Checked; }; + var otherMediaToggle = new ToolStripMenuItem("Track Other Media") { CheckOnClick = true }; + otherMediaToggle.CheckedChanged += (s, e) => + { + OTHER_MEDIA_TRACKED = otherMediaToggle.Checked; + + // If the spotify tracker is enabled, stop the user from using the built in music player + playButton.Enabled = !OTHER_MEDIA_TRACKED; + pauseButton.Enabled = !OTHER_MEDIA_TRACKED; + nextButton.Enabled = !OTHER_MEDIA_TRACKED; + randomItem.Enabled = !OTHER_MEDIA_TRACKED; + + // Pause the music if tracking spotify + if (OTHER_MEDIA_TRACKED) + { + PauseMusic(); + + if (MEDIA_MANAGER == null) + { + InitializeMediaManager(); + } + } + else + { + MEDIA_MANAGER.Dispose(); + MEDIA_MANAGER = null; + } + }; + + menu.Items.Add(playButton); + menu.Items.Add(pauseButton); + menu.Items.Add(nextButton); menu.Items.Add(randomItem); menu.Items.Add(randomChar); + menu.Items.Add(otherMediaToggle); menu.Items.Add(new ToolStripSeparator()); menu.Items.Add("Reappear", null, (s, e) => ResetApp()); menu.Items.Add("Close", null, (s, e) => CloseApp()); From 5f41cd9d5c0ad791f0013aeeb2fab894f133a78a Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:06:18 -0400 Subject: [PATCH 05/19] Added other media tracking --- Jukebox_Mascot/MainWindow.xaml.cs | 68 +++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index 84703ab..a1799fa 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -157,6 +157,74 @@ private int PlayAnimation(BitmapImage sheet,int currentFrame,int frameCount,int } } + private void UpdateMediaProperties(MediaManager.MediaSession sender, GlobalSystemMediaTransportControlsSessionMediaProperties mediaProperties) + { + if (mediaProperties == null) + { + OTHER_MEDIA_CURRENT_TRACK = ""; + } + GC.Collect(0); + + if (CURRENT_SESSION == sender) + { + // Get the name and the artist of the current track + string title = mediaProperties.Title ?? "Unkown Title"; + string artist = mediaProperties.Artist ?? "Unknown Artist"; + OTHER_MEDIA_CURRENT_TRACK = $"🎵 Now Playing: {title} by {artist} 🎵"; + + this.Dispatcher.Invoke(() => + { + ScrollingText.Text = OTHER_MEDIA_CURRENT_TRACK; + ReopenScrollingBorder(); + if (ALLOW_RANDOM_MASCOT) + { + SwitchToRandomCharacter(); + } + if (PLAY_INTRO_ON_NEW_SONG) + { + JukeBoxSprite.Source = null; + IS_INTRO = true; + CURRENT_INTRO_FRAME = 0; + CURRENT_JUKEBOX_FRAME = 0; + } + }); + } + } + + private void SenderPlaybackStateChanged(MediaManager.MediaSession sender, GlobalSystemMediaTransportControlsSessionPlaybackInfo args) + { + switch (args.PlaybackStatus) + { + /* + * This allows for different outcomes based on: + * if the media is closed, opened, changing, stopped, playing, or paused. + * So it can be used for different animations or actions, which would be cool. + */ + case GlobalSystemMediaTransportControlsSessionPlaybackStatus.Playing: + case GlobalSystemMediaTransportControlsSessionPlaybackStatus.Changing: + CURRENT_SESSION = sender; + /* + * Calling this here when it is already being listened to seems redundant but it is needed for when the user pauses/unpauses or starts a new song + * The listener exists for automatic changes, such as spotify going to the next playlist. + */ + UpdateMediaProperties(sender, sender.ControlSession.TryGetMediaPropertiesAsync().AsTask().Result); + break; + default: + break; + } + } + + private void InitializeMediaManager() + { + MEDIA_MANAGER = new MediaManager(); + + MEDIA_MANAGER.OnAnyPlaybackStateChanged += SenderPlaybackStateChanged; + MEDIA_MANAGER.OnAnyMediaPropertyChanged += UpdateMediaProperties; + + // Start listening + MEDIA_MANAGER.Start(); + } + private void InitializeAnimations() { MASTER_TIMER = new DispatcherTimer { Interval = TimeSpan.FromMilliseconds(FRAME_RATE)}; From 7d065bb2c9d45e1a5fc25b8f9f0d41c7b85ad28c Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:07:40 -0400 Subject: [PATCH 06/19] Fixed styling errors --- Jukebox_Mascot/MainWindow.xaml.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index a1799fa..7d22684 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -124,7 +124,7 @@ private void FatalError(string message, string title = "Error") TRAY_ICON?.Dispose(); System.Windows.Application.Current.Shutdown(); } - private int PlayAnimation(BitmapImage sheet,int currentFrame,int frameCount,int frameWidth,int frameHeight,System.Windows.Controls.Image targetImage,bool reverse = false) + private int PlayAnimation(BitmapImage sheet, int currentFrame, int frameCount, int frameWidth, int frameHeight, System.Windows.Controls.Image targetImage, bool reverse = false) { if (sheet == null) return currentFrame; @@ -227,12 +227,12 @@ private void InitializeMediaManager() private void InitializeAnimations() { - MASTER_TIMER = new DispatcherTimer { Interval = TimeSpan.FromMilliseconds(FRAME_RATE)}; + MASTER_TIMER = new DispatcherTimer { Interval = TimeSpan.FromMilliseconds(FRAME_RATE) }; MASTER_TIMER.Tick += (s, e) => { if (IS_INTRO) { - CURRENT_INTRO_FRAME = PlayAnimation(INTRO_SHEET, CURRENT_INTRO_FRAME, INTRO_FRAME_COUNT,FRAME_WIDTH, FRAME_HEIGHT, SpriteImage); + CURRENT_INTRO_FRAME = PlayAnimation(INTRO_SHEET, CURRENT_INTRO_FRAME, INTRO_FRAME_COUNT, FRAME_WIDTH, FRAME_HEIGHT, SpriteImage); if (CURRENT_INTRO_FRAME == 0) { @@ -321,7 +321,7 @@ private void LoadTrack(int index) private void NextTrack() { - if(MUSIC_FILES.Count <= 0) + if (MUSIC_FILES.Count <= 0) { return; } From 5943b3c14e42b39a93389cbf8649914125d25141 Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:08:04 -0400 Subject: [PATCH 07/19] Added new imports --- Jukebox_Mascot/MainWindow.xaml.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index 7d22684..2bd5d8e 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Drawing; +using System.IO; using System.Linq; using System.Windows; using System.Windows.Forms; @@ -9,8 +10,8 @@ using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Threading; -using System.IO; -using System.Data.SqlTypes; +using Windows.Media.Control; +using WindowsMediaController; namespace Jukebox_Mascot { From f8ea3e32dcc58b551c1d2ea36ee3377e6c6c8f19 Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:08:58 -0400 Subject: [PATCH 08/19] Variables necessary for tracking other media --- Jukebox_Mascot/MainWindow.xaml.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index 2bd5d8e..13bab7e 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -63,6 +63,8 @@ public partial class MainWindow : Window private bool ALLOW_RANDOM_MASCOT = true; private bool ALLOW_MUSIC_NOTES = true; private bool IS_RANDOM = false; + private bool OTHER_MEDIA_TRACKED = false; + private string OTHER_MEDIA_CURRENT_TRACK = ""; private double SCROLL_POS; @@ -70,7 +72,8 @@ public partial class MainWindow : Window private List MUSIC_FILES = new List(); private MediaPlayer PLAYER; - + private MediaManager MEDIA_MANAGER; + private MediaManager.MediaSession CURRENT_SESSION; private BitmapImage LoadSprite(string filefolder, string fileName, string rootFolder = "Characters") { string path = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "SpriteSheet", rootFolder, filefolder, fileName); From 5cbcad10bafb695c927849ce8028c95901967556 Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:42:25 -0400 Subject: [PATCH 09/19] Band-Aid fix for saving variables to the config file --- Jukebox_Mascot/MainWindow.xaml.cs | 43 +++++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index 13bab7e..327354a 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -417,6 +417,7 @@ private void ResetApp() { TRAY_ICON.Visible = false; string exePath = Process.GetCurrentProcess().MainModule.FileName; + SaveMasterConfig(); Process.Start(exePath); System.Windows.Application.Current.Shutdown(); } @@ -425,7 +426,9 @@ private void CloseApp() { TRAY_ICON.Visible = false; TRAY_ICON?.Dispose(); + MEDIA_MANAGER?.Dispose(); MASTER_TIMER.Stop(); + SaveMasterConfig(); System.Windows.Application.Current.Shutdown(); } private void SetupTrayIcon() @@ -438,28 +441,28 @@ private void SetupTrayIcon() var menu = new ContextMenuStrip(); // Save the buttons in variables so that they can be disabled/enabled later if needed - var playButton = new ToolStripMenuItem("Play"); + var playButton = new ToolStripMenuItem("Play") { Enabled = !OTHER_MEDIA_TRACKED }; playButton.Click += (sender, e) => PlayMusic(); - var pauseButton = new ToolStripMenuItem("Pause"); + var pauseButton = new ToolStripMenuItem("Pause") { Enabled = !OTHER_MEDIA_TRACKED }; pauseButton.Click += (sender, e) => PauseMusic(); - var nextButton = new ToolStripMenuItem("Next Track"); + var nextButton = new ToolStripMenuItem("Next Track") { Enabled = !OTHER_MEDIA_TRACKED }; nextButton.Click += (sender, e) => NextTrack(); - var randomChar = new ToolStripMenuItem("Random Characters") { CheckOnClick = true }; + var randomChar = new ToolStripMenuItem("Random Characters") { CheckOnClick = true , Checked = ALLOW_RANDOM_MASCOT}; randomChar.CheckedChanged += (s, e) => { ALLOW_RANDOM_MASCOT = randomChar.Checked; }; - var randomItem = new ToolStripMenuItem("Random Music") { CheckOnClick = true }; + var randomItem = new ToolStripMenuItem("Random Music") { CheckOnClick = true, Enabled = !OTHER_MEDIA_TRACKED }; randomItem.CheckedChanged += (s, e) => { IS_RANDOM = randomItem.Checked; }; - var otherMediaToggle = new ToolStripMenuItem("Track Other Media") { CheckOnClick = true }; + var otherMediaToggle = new ToolStripMenuItem("Track Other Media") { CheckOnClick = true, Checked = OTHER_MEDIA_TRACKED}; otherMediaToggle.CheckedChanged += (s, e) => { OTHER_MEDIA_TRACKED = otherMediaToggle.Checked; @@ -482,8 +485,7 @@ private void SetupTrayIcon() } else { - MEDIA_MANAGER.Dispose(); - MEDIA_MANAGER = null; + MEDIA_MANAGER?.Dispose(); } }; @@ -514,6 +516,7 @@ public MainWindow() LoadMascotList(); InitializeAnimations(); InitializeMusic(); + if (OTHER_MEDIA_TRACKED) InitializeMediaManager(); } private void JukeBoxSprite_Click(object sender, MouseButtonEventArgs e) { @@ -567,6 +570,22 @@ private void SwitchToRandomCharacter() JukeBoxSprite.Source = null; } + private void SaveMasterConfig() + { + string path = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Config.txt"); + + var lines = new List + { + $"START_CHAR={START_CHAR}", + $"ALLOW_RANDOM_MASCOT={ALLOW_RANDOM_MASCOT}", + $"ALLOW_MUSIC_NOTES={ALLOW_MUSIC_NOTES}", + $"SPRITE_SPEED={FRAME_RATE}", + $"TRACK_OTHER_MEDIA={OTHER_MEDIA_TRACKED}" + }; + + File.WriteAllLines(path, lines); + } + private void LoadMasterConfig() { string path = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Config.txt"); @@ -622,6 +641,14 @@ private void LoadMasterConfig() } break; } + case "TRACK_OTHER_MEDIA": + { + if (bool.TryParse(value, out bool boolValue3)) + { + OTHER_MEDIA_TRACKED = boolValue3; + } + break; + } } } } From af23c7720980a655f1992cb38bac6f03fe805b5c Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:43:40 -0400 Subject: [PATCH 10/19] Style --- Jukebox_Mascot/MainWindow.xaml.cs | 63 +++++++++++++++---------------- 1 file changed, 31 insertions(+), 32 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index 327354a..ebdff03 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -142,7 +142,7 @@ private int PlayAnimation(BitmapImage sheet, int currentFrame, int frameCount, i targetImage.Source = new CroppedBitmap(sheet, new Int32Rect(x, y, frameWidth, frameHeight)); if (!reverse) - { + { return (currentFrame + 1) % frameCount; } else @@ -295,10 +295,10 @@ private void InitializeMusic() private void LoadTrack(int index) { if (index < 0 || index >= MUSIC_FILES.Count) - { + { return; } - + string filePath = MUSIC_FILES[index]; PLAYER.Open(new Uri(filePath)); @@ -319,7 +319,6 @@ private void LoadTrack(int index) } } - private void PlayMusic() => PLAYER.Play(); private void PauseMusic() => PLAYER.Pause(); @@ -366,7 +365,7 @@ private void ReopenScrollingBorder() else { openTimer.Stop(); - ScrollingText.Visibility = Visibility.Visible; + ScrollingText.Visibility = Visibility.Visible; StartScrolling(); } }; @@ -450,7 +449,7 @@ private void SetupTrayIcon() var nextButton = new ToolStripMenuItem("Next Track") { Enabled = !OTHER_MEDIA_TRACKED }; nextButton.Click += (sender, e) => NextTrack(); - var randomChar = new ToolStripMenuItem("Random Characters") { CheckOnClick = true , Checked = ALLOW_RANDOM_MASCOT}; + var randomChar = new ToolStripMenuItem("Random Characters") { CheckOnClick = true, Checked = ALLOW_RANDOM_MASCOT }; randomChar.CheckedChanged += (s, e) => { ALLOW_RANDOM_MASCOT = randomChar.Checked; @@ -458,11 +457,11 @@ private void SetupTrayIcon() var randomItem = new ToolStripMenuItem("Random Music") { CheckOnClick = true, Enabled = !OTHER_MEDIA_TRACKED }; randomItem.CheckedChanged += (s, e) => - { + { IS_RANDOM = randomItem.Checked; }; - var otherMediaToggle = new ToolStripMenuItem("Track Other Media") { CheckOnClick = true, Checked = OTHER_MEDIA_TRACKED}; + var otherMediaToggle = new ToolStripMenuItem("Track Other Media") { CheckOnClick = true, Checked = OTHER_MEDIA_TRACKED }; otherMediaToggle.CheckedChanged += (s, e) => { OTHER_MEDIA_TRACKED = otherMediaToggle.Checked; @@ -493,7 +492,7 @@ private void SetupTrayIcon() menu.Items.Add(pauseButton); menu.Items.Add(nextButton); menu.Items.Add(randomItem); - menu.Items.Add(randomChar); + menu.Items.Add(randomChar); menu.Items.Add(otherMediaToggle); menu.Items.Add(new ToolStripSeparator()); menu.Items.Add("Reappear", null, (s, e) => ResetApp()); @@ -513,7 +512,7 @@ public MainWindow() LoadConfigChar(); SetupTrayIcon(); LoadSpritesSheet(); - LoadMascotList(); + LoadMascotList(); InitializeAnimations(); InitializeMusic(); if (OTHER_MEDIA_TRACKED) InitializeMediaManager(); @@ -524,8 +523,8 @@ private void JukeBoxSprite_Click(object sender, MouseButtonEventArgs e) CURRENT_MASCOT_INDEX = (CURRENT_MASCOT_INDEX + 1) % MASCOTS.Count; START_CHAR = MASCOTS[CURRENT_MASCOT_INDEX]; - - + + INTRO_SHEET = null; DANCE_SHEET = null; SpriteImage.Source = null; @@ -540,7 +539,7 @@ private void JukeBoxSprite_Click(object sender, MouseButtonEventArgs e) SpriteLabel.Content = $"Mascot: {START_CHAR}"; - } + } private void SwitchToRandomCharacter() { if (MASCOTS == null || MASCOTS.Count == 0) @@ -613,34 +612,34 @@ private void LoadMasterConfig() switch (key.ToUpper()) { case "START_CHAR": - { - START_CHAR = value; - break; - } + { + START_CHAR = value; + break; + } case "ALLOW_RANDOM_MASCOT": - { - if (bool.TryParse(value, out bool boolValue)) { - ALLOW_RANDOM_MASCOT = boolValue; + if (bool.TryParse(value, out bool boolValue)) + { + ALLOW_RANDOM_MASCOT = boolValue; + } + break; } - break; - } case "ALLOW_MUSIC_NOTES": - { - if (bool.TryParse(value, out bool boolValue2)) { - ALLOW_MUSIC_NOTES = boolValue2; + if (bool.TryParse(value, out bool boolValue2)) + { + ALLOW_MUSIC_NOTES = boolValue2; + } + break; } - break; - } case "SPRITE_SPEED": - { - if (int.TryParse(value, out int intValue)) { - FRAME_RATE = intValue; + if (int.TryParse(value, out int intValue)) + { + FRAME_RATE = intValue; + } + break; } - break; - } case "TRACK_OTHER_MEDIA": { if (bool.TryParse(value, out bool boolValue3)) From ac4ebfef3bc29e4bdb931b6b1f92971caf5019cc Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:44:13 -0400 Subject: [PATCH 11/19] Restructured project to fit SDK format --- Jukebox_Mascot/Jukebox_Mascot.csproj | 187 ++++++++++++++------------- 1 file changed, 94 insertions(+), 93 deletions(-) diff --git a/Jukebox_Mascot/Jukebox_Mascot.csproj b/Jukebox_Mascot/Jukebox_Mascot.csproj index 1bcd43a..10b38e6 100644 --- a/Jukebox_Mascot/Jukebox_Mascot.csproj +++ b/Jukebox_Mascot/Jukebox_Mascot.csproj @@ -1,105 +1,35 @@ - - - + - Debug - AnyCPU - {6D5FB859-0563-40B6-B20C-B91EE10D592C} + net48 WinExe - Jukebox_Mascot - Jukebox_Mascot - v4.8 - 512 - {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} - 4 - true - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 + true + true + true icon2.ico - - - - - + + + + + + + + + + + + + + + + + - - - - - 4.0 - - - - - - - - MSBuild:Compile - Designer - - - MSBuild:Compile - Designer - - - App.xaml - Code - - - MainWindow.xaml - Code - - - - Code - - - True - True - Resources.resx - - - True - Settings.settings - True - - - ResXFileCodeGenerator - Resources.Designer.cs - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - - - - PreserveNewest @@ -107,6 +37,7 @@ PreserveNewest + PreserveNewest @@ -175,5 +106,75 @@ PreserveNewest - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 0b13a33c854b54ac17452eaabe18d1f0293184db Mon Sep 17 00:00:00 2001 From: Moj Date: Sat, 6 Sep 2025 09:45:22 -0400 Subject: [PATCH 12/19] Code cleanup --- Jukebox_Mascot/App.config | 14 +++++++++++++- Jukebox_Mascot/App.xaml.cs | 8 +------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Jukebox_Mascot/App.config b/Jukebox_Mascot/App.config index 193aecc..ea2564f 100644 --- a/Jukebox_Mascot/App.config +++ b/Jukebox_Mascot/App.config @@ -1,6 +1,18 @@ - + + + + + + + + + + + + + \ No newline at end of file diff --git a/Jukebox_Mascot/App.xaml.cs b/Jukebox_Mascot/App.xaml.cs index f8d0786..6964baa 100644 --- a/Jukebox_Mascot/App.xaml.cs +++ b/Jukebox_Mascot/App.xaml.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Configuration; -using System.Data; -using System.Linq; -using System.Threading.Tasks; -using System.Windows; +using System.Windows; namespace Jukebox_Mascot { From f20918efee56bef711c7e1ebbe22bca7c39e4fd7 Mon Sep 17 00:00:00 2001 From: Moj <83661733+MojLovesApples@users.noreply.github.com> Date: Sat, 6 Sep 2025 16:23:20 -0400 Subject: [PATCH 13/19] Changed the download link to my own --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index be6922c..2460862 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ A desktop jukebox mascot app built with C# (WPF), Mostly related to Umamusume, b Perfect for having a little dancing gremlin to waste your time while procrastinating. # Installation | Windows Only -Download latest here: [Download](https://github.com/KurtVelasco/JukeBox/releases/download/v1.0/JukeBox_V1.0.zip) +Download latest here: [Download](https://github.com/MojLovesApples/JukeBox/releases/download/V1.1/Jukebox_Mascot.zip) You can Insta-Change the character by clicking the Jukebox image From c691f5a8574dc92d1657923d83bd0c62fe7fb710 Mon Sep 17 00:00:00 2001 From: Moj Date: Sun, 7 Sep 2025 16:05:14 -0400 Subject: [PATCH 14/19] Cleared the unneeded packages that mysteriously appeared --- Jukebox_Mascot/Jukebox_Mascot.csproj | 71 ++------------------------- Jukebox_Mascot/icon.ico | Bin 0 -> 156546 bytes 2 files changed, 3 insertions(+), 68 deletions(-) create mode 100644 Jukebox_Mascot/icon.ico diff --git a/Jukebox_Mascot/Jukebox_Mascot.csproj b/Jukebox_Mascot/Jukebox_Mascot.csproj index 10b38e6..c446a50 100644 --- a/Jukebox_Mascot/Jukebox_Mascot.csproj +++ b/Jukebox_Mascot/Jukebox_Mascot.csproj @@ -37,7 +37,9 @@ PreserveNewest - + + PreserveNewest + PreserveNewest @@ -108,73 +110,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Jukebox_Mascot/icon.ico b/Jukebox_Mascot/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c51d61ebfde02ba56957c33a15213d5e24d23702 GIT binary patch literal 156546 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�j}{VtKLI>wP3W& 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 literal 0 HcmV?d00001 From 04f8bf046196617d464534bfa6a18f150b612e84 Mon Sep 17 00:00:00 2001 From: Moj Date: Sun, 7 Sep 2025 16:28:09 -0400 Subject: [PATCH 15/19] Fixed a little oversight resulting in blank strings instead of showing "Unknown Artist/Title" --- Jukebox_Mascot/MainWindow.xaml.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Jukebox_Mascot/MainWindow.xaml.cs b/Jukebox_Mascot/MainWindow.xaml.cs index ebdff03..3d8d706 100644 --- a/Jukebox_Mascot/MainWindow.xaml.cs +++ b/Jukebox_Mascot/MainWindow.xaml.cs @@ -172,8 +172,8 @@ private void UpdateMediaProperties(MediaManager.MediaSession sender, GlobalSyste if (CURRENT_SESSION == sender) { // Get the name and the artist of the current track - string title = mediaProperties.Title ?? "Unkown Title"; - string artist = mediaProperties.Artist ?? "Unknown Artist"; + string title = string.IsNullOrEmpty(mediaProperties.Title) ? "Unkown Title" : mediaProperties.Title; + string artist = string.IsNullOrEmpty(mediaProperties.Artist) ? "Unknown Artist" : mediaProperties.Artist; OTHER_MEDIA_CURRENT_TRACK = $"🎵 Now Playing: {title} by {artist} 🎵"; this.Dispatcher.Invoke(() => From 2723fd1c116b33548722bd687b94ce8904985df1 Mon Sep 17 00:00:00 2001 From: Moj <83661733+MojLovesApples@users.noreply.github.com> Date: Sun, 7 Sep 2025 16:33:05 -0400 Subject: [PATCH 16/19] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2460862..2aa93fa 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ A desktop jukebox mascot app built with C# (WPF), Mostly related to Umamusume, b Perfect for having a little dancing gremlin to waste your time while procrastinating. # Installation | Windows Only -Download latest here: [Download](https://github.com/MojLovesApples/JukeBox/releases/download/V1.1/Jukebox_Mascot.zip) +Download latest here: [Download](https://github.com/MojLovesApples/JukeBox/releases/download/V1.1/Jukebox_Mascot_V1.1.zip) You can Insta-Change the character by clicking the Jukebox image From 516c56c344a561566fe3821f0d2bac8b1011fcc5 Mon Sep 17 00:00:00 2001 From: Moj <83661733+MojLovesApples@users.noreply.github.com> Date: Sun, 7 Sep 2025 16:45:55 -0400 Subject: [PATCH 17/19] Fixed the image showing config file having "Tokai" instead of "Teio" --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2aa93fa..dd3b941 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ ALLOW_RANDOM_MASCOT = //Change sprite for every music change ALLOW_MUSIC_NOTES = //Show the floating music note SPRITE_SPEED = <30...> //change the rate (milisecond) when animating the sprites ``` -image +configFile ![dasdsa](https://github.com/user-attachments/assets/769d2fc3-6b90-4dfe-a767-3fd6c33513d9) From 907da139e67ba823f76008d4f233a9c810cb072d Mon Sep 17 00:00:00 2001 From: Moj Date: Sun, 7 Sep 2025 16:47:10 -0400 Subject: [PATCH 18/19] Changed "Tokai" to "Teio" --- Jukebox_Mascot/Config.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jukebox_Mascot/Config.txt b/Jukebox_Mascot/Config.txt index 105253f..15d289c 100644 --- a/Jukebox_Mascot/Config.txt +++ b/Jukebox_Mascot/Config.txt @@ -1,4 +1,4 @@ -//RiceShower//Tachyon//Tokai//Oguri//Pasa +//RiceShower//Tachyon//Teio//Oguri//Pasa START_CHAR=Tachyon ALLOW_RANDOM_MASCOT=false ALLOW_MUSIC_NOTES=true From db5bb112e77a4bf63a554d2c56761f769b682514 Mon Sep 17 00:00:00 2001 From: Moj <83661733+MojLovesApples@users.noreply.github.com> Date: Sat, 20 Sep 2025 08:48:34 -0400 Subject: [PATCH 19/19] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index dd3b941..76c5cf6 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ -# Jukebox_Mascot +# Jukebox_Mascot ![GitHub all releases](https://img.shields.io/github/downloads/MojLovesApples/Jukebox/total) + A desktop jukebox mascot app built with C# (WPF), Mostly related to Umamusume, but can be edited through the spritesheet. Perfect for having a little dancing gremlin to waste your time while procrastinating.