diff --git a/HighGroundRoyaleLauncher/BackgroundSlideshowManager.cs b/HighGroundRoyaleLauncher/BackgroundSlideshowManager.cs
new file mode 100644
index 0000000..c4f175e
--- /dev/null
+++ b/HighGroundRoyaleLauncher/BackgroundSlideshowManager.cs
@@ -0,0 +1,74 @@
+using System;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Media.Animation;
+using System.Windows.Media.Imaging;
+using System.Windows.Threading;
+
+namespace HighGroundRoyaleLauncher
+{
+ public class BackgroundSlideshowManager
+ {
+ private readonly string[] _imagePaths;
+ private readonly Image _targetImage;
+ private readonly DispatcherTimer _timer;
+ private int _currentIndex = 0;
+
+ public BackgroundSlideshowManager(Image targetImage, string[] imagePaths, TimeSpan interval)
+ {
+ _targetImage = targetImage;
+ _imagePaths = imagePaths;
+
+ _timer = new DispatcherTimer
+ {
+ Interval = interval
+ };
+ _timer.Tick += OnTimerTick;
+ }
+
+ public void Start()
+ {
+ UpdateImage(); // first image
+ _timer.Start();
+ }
+
+ private void OnTimerTick(object sender, EventArgs e)
+ {
+ _currentIndex = (_currentIndex + 1) % _imagePaths.Length;
+ FadeToNextImage();
+ }
+
+ private void FadeToNextImage()
+ {
+ var fadeOut = new DoubleAnimation(1.0, 0.0, new Duration(TimeSpan.FromSeconds(1.5)));
+ fadeOut.Completed += (s, e) =>
+ {
+ UpdateImage();
+
+ var fadeIn = new DoubleAnimation(0.0, 1.0, new Duration(TimeSpan.FromSeconds(1.5)));
+ _targetImage.BeginAnimation(UIElement.OpacityProperty, fadeIn);
+ };
+
+ _targetImage.BeginAnimation(UIElement.OpacityProperty, fadeOut);
+ }
+
+ private void UpdateImage()
+ {
+ try
+ {
+ var uri = new Uri($"pack://application:,,,/{_imagePaths[_currentIndex]}", UriKind.Absolute);
+ var bitmap = new BitmapImage(uri);
+ _targetImage.Source = bitmap;
+ }
+ catch
+ {
+ // Optional: silently fail or log if an image can't load
+ }
+ }
+
+ public void Stop()
+ {
+ _timer.Stop();
+ }
+ }
+}
diff --git a/HighGroundRoyaleLauncher/HighGroundRoyaleLauncher.csproj b/HighGroundRoyaleLauncher/HighGroundRoyaleLauncher.csproj
index 1c38e8e..dedb9f0 100644
--- a/HighGroundRoyaleLauncher/HighGroundRoyaleLauncher.csproj
+++ b/HighGroundRoyaleLauncher/HighGroundRoyaleLauncher.csproj
@@ -68,6 +68,7 @@
App.xaml
Code
+
MainWindow.xaml
Code
@@ -106,6 +107,10 @@
+
+
+
+
diff --git a/HighGroundRoyaleLauncher/MainWindow.xaml b/HighGroundRoyaleLauncher/MainWindow.xaml
index 6cf467e..f3b74fc 100644
--- a/HighGroundRoyaleLauncher/MainWindow.xaml
+++ b/HighGroundRoyaleLauncher/MainWindow.xaml
@@ -1,27 +1,34 @@
+ Title="Siege Worlds Installer" Height="500" Width="500"
+ WindowStartupLocation="CenterScreen">
-
-
-
+
-
-
-
-
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
diff --git a/HighGroundRoyaleLauncher/MainWindow.xaml.cs b/HighGroundRoyaleLauncher/MainWindow.xaml.cs
index f4d972e..9a1b064 100644
--- a/HighGroundRoyaleLauncher/MainWindow.xaml.cs
+++ b/HighGroundRoyaleLauncher/MainWindow.xaml.cs
@@ -18,11 +18,20 @@ namespace HighGroundRoyaleLauncher
private string versionPath => Path.Combine(installPath, "version.txt");
private string gameFolder => Path.Combine(installPath, "Game");
private string exePath => Path.Combine(gameFolder, "Siege Worlds.exe");
+ private BackgroundSlideshowManager _slideshow;
+
public MainWindow()
{
InitializeComponent();
installPathBox.Text = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), "Siege worlds");
+
+ _slideshow = new BackgroundSlideshowManager(
+ SlideshowImage,
+ new[] { "img1.jpg", "img2.jpg", "img3.jpg" },
+ TimeSpan.FromSeconds(4)
+ );
+ _slideshow.Start();
}
private void Browse_Click(object sender, RoutedEventArgs e)
diff --git a/HighGroundRoyaleLauncher/img1.jpg b/HighGroundRoyaleLauncher/img1.jpg
new file mode 100644
index 0000000..e26a2dd
Binary files /dev/null and b/HighGroundRoyaleLauncher/img1.jpg differ
diff --git a/HighGroundRoyaleLauncher/img2.jpg b/HighGroundRoyaleLauncher/img2.jpg
new file mode 100644
index 0000000..eae448d
Binary files /dev/null and b/HighGroundRoyaleLauncher/img2.jpg differ
diff --git a/HighGroundRoyaleLauncher/img3.jpg b/HighGroundRoyaleLauncher/img3.jpg
new file mode 100644
index 0000000..e1c2d7c
Binary files /dev/null and b/HighGroundRoyaleLauncher/img3.jpg differ
diff --git a/HighGroundRoyaleLauncher/installbtn.jpg b/HighGroundRoyaleLauncher/installbtn.jpg
new file mode 100644
index 0000000..4df056f
Binary files /dev/null and b/HighGroundRoyaleLauncher/installbtn.jpg differ