-
Notifications
You must be signed in to change notification settings - Fork 4
/
IGame.cs
62 lines (50 loc) · 1.65 KB
/
IGame.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
using System.Drawing;
namespace GameLib.Core;
public interface IGame
{
/// <summary>
/// Unique game Id if the launcher provides it
/// </summary>
public string Id { get; }
/// <summary>
/// Guid of the Launcher
/// </summary>
public Guid LauncherId { get; }
/// <summary>
/// Name of the Game
/// </summary>
public string Name { get; }
/// <summary>
/// Installation dir of the game
/// </summary>
public string InstallDir { get; }
/// <summary>
/// Executable name including the full Path
/// </summary>
public string Executable { get; }
/// <summary>
/// The extracted icon of the game executable
/// </summary>
public Icon? ExecutableIcon { get; }
/// <summary>
/// Additional executables found within the install directory
/// </summary>
public IEnumerable<string> Executables { get; }
/// <summary>
/// Working directory of the game
/// </summary>
public string WorkingDir { get; }
/// <summary>
/// The launch string of the game. Can be used with Process.Start() to start the game
/// </summary>
public string LaunchString { get; }
/// <summary>
/// When the game got installed; if the launcher cannot provide the information the creation date of the InstallDir is returned
/// </summary>
public DateTime InstallDate { get; }
/// <summary>
/// Check whether the game is currently running (works only if launch executable is also the game executable)
/// e.g. GTA5 is launched with PlayGTAV.exe but the actual game is running via GTAV.exe
/// </summary>
public bool IsRunning { get; }
}