using System;
using System.Threading;
using System.Windows.Forms;
namespace ETDiscordPresence
{
internal class Program
{
private static readonly Mutex Mutex = new Mutex(false, "Adawolfa.ETDiscordPresence");
[STAThread]
public static void Main(string[] args)
{
if (!Mutex.WaitOne(TimeSpan.FromSeconds(3), false))
{
return;
}
try
{
using (var presenceChanger = new PresenceChanger())
using (var gameWatcher = new GameWatcher())
using (var tray = new Tray())
{
gameWatcher.EnterServer = presenceChanger.SetPresence;
gameWatcher.LeaveServer = presenceChanger.RemovePresence;
tray.Exit = Application.Exit;
tray.Visible = true;
gameWatcher.Start();
Application.Run();
}
}
finally
{
Mutex.ReleaseMutex();
}
}
}
}