mirror of
https://github.com/terrymacdonald/DisplayMagician.git
synced 2024-08-30 18:32:20 +00:00
[WIP] initial game library URI refactor
This commit is contained in:
parent
44b620851a
commit
1e4ed0c546
@ -3,6 +3,13 @@
|
|||||||
public class Game
|
public class Game
|
||||||
{
|
{
|
||||||
|
|
||||||
|
public enum GameStartMode
|
||||||
|
{
|
||||||
|
URI
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#region Properties
|
#region Properties
|
||||||
public virtual string Id { get; set; }
|
public virtual string Id { get; set; }
|
||||||
|
|
||||||
@ -24,10 +31,17 @@
|
|||||||
|
|
||||||
public virtual string ProcessName { get; set; }
|
public virtual string ProcessName { get; set; }
|
||||||
|
|
||||||
|
public virtual GameStartMode StartMode { get; set; }
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
#region Methods
|
#region Methods
|
||||||
|
public virtual string GetStartURI(string gameArguments = "")
|
||||||
|
{
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
public virtual bool CopyTo(SteamGame steamGame)
|
public virtual bool CopyTo(SteamGame steamGame)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
|
@ -10,7 +10,6 @@ namespace DisplayMagician.GameLibraries
|
|||||||
{
|
{
|
||||||
public class OriginGame : Game
|
public class OriginGame : Game
|
||||||
{
|
{
|
||||||
private string _gameRegistryKey;
|
|
||||||
private string _originGameId;
|
private string _originGameId;
|
||||||
private string _originGameName;
|
private string _originGameName;
|
||||||
private string _originGameExePath;
|
private string _originGameExePath;
|
||||||
@ -18,6 +17,7 @@ namespace DisplayMagician.GameLibraries
|
|||||||
private string _originGameExe;
|
private string _originGameExe;
|
||||||
private string _originGameProcessName;
|
private string _originGameProcessName;
|
||||||
private string _originGameIconPath;
|
private string _originGameIconPath;
|
||||||
|
//private string _originURI;
|
||||||
private static readonly NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
|
private static readonly NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
|
||||||
|
|
||||||
static OriginGame()
|
static OriginGame()
|
||||||
@ -27,17 +27,17 @@ namespace DisplayMagician.GameLibraries
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public OriginGame(string OriginGameId, string OriginGameName, string OriginGameExePath, string OriginGameIconPath)
|
public OriginGame(string originGameId, string originGameName, string originGameExePath, string originGameIconPath)
|
||||||
{
|
{
|
||||||
|
|
||||||
//_gameRegistryKey = $@"{OriginLibrary.registryOriginInstallsKey}\\{OriginGameId}";
|
//_gameRegistryKey = $@"{OriginLibrary.registryOriginInstallsKey}\\{OriginGameId}";
|
||||||
_originGameId = OriginGameId;
|
_originGameId = originGameId;
|
||||||
_originGameName = OriginGameName;
|
_originGameName = originGameName;
|
||||||
_originGameExePath = OriginGameExePath;
|
_originGameExePath = originGameExePath;
|
||||||
_originGameDir = Path.GetDirectoryName(OriginGameExePath);
|
_originGameDir = Path.GetDirectoryName(originGameExePath);
|
||||||
_originGameExe = Path.GetFileName(_originGameExePath);
|
_originGameExe = Path.GetFileName(_originGameExePath);
|
||||||
_originGameProcessName = Path.GetFileNameWithoutExtension(_originGameExePath);
|
_originGameProcessName = Path.GetFileNameWithoutExtension(_originGameExePath);
|
||||||
_originGameIconPath = OriginGameIconPath;
|
_originGameIconPath = originGameIconPath;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -154,6 +154,21 @@ namespace DisplayMagician.GameLibraries
|
|||||||
}
|
}
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
|
public override GameStartMode StartMode
|
||||||
|
{
|
||||||
|
get => GameStartMode.URI;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string GetStartURI(string gameArguments = "")
|
||||||
|
{
|
||||||
|
string address = $"origin2://game/launch?offerIds={_originGameId}";
|
||||||
|
if (String.IsNullOrWhiteSpace(gameArguments))
|
||||||
|
{
|
||||||
|
address += "/" + gameArguments;
|
||||||
|
}
|
||||||
|
return address;
|
||||||
|
}
|
||||||
|
|
||||||
public bool CopyTo(OriginGame OriginGame)
|
public bool CopyTo(OriginGame OriginGame)
|
||||||
{
|
{
|
||||||
if (!(OriginGame is OriginGame))
|
if (!(OriginGame is OriginGame))
|
||||||
|
@ -154,6 +154,21 @@ namespace DisplayMagician.GameLibraries
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override GameStartMode StartMode
|
||||||
|
{
|
||||||
|
get => GameStartMode.URI;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string GetStartURI(string gameArguments = "")
|
||||||
|
{
|
||||||
|
string address = $"steam://rungameid/{Id}";
|
||||||
|
if (String.IsNullOrWhiteSpace(gameArguments))
|
||||||
|
{
|
||||||
|
address += "/" + gameArguments;
|
||||||
|
}
|
||||||
|
return address;
|
||||||
|
}
|
||||||
|
|
||||||
public bool CopyInto(SteamGame steamGame)
|
public bool CopyInto(SteamGame steamGame)
|
||||||
{
|
{
|
||||||
if (!(steamGame is SteamGame))
|
if (!(steamGame is SteamGame))
|
||||||
|
@ -154,6 +154,25 @@ namespace DisplayMagician.GameLibraries
|
|||||||
}
|
}
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
|
public override GameStartMode StartMode
|
||||||
|
{
|
||||||
|
get => GameStartMode.URI;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string GetStartURI(string gameArguments = "")
|
||||||
|
{
|
||||||
|
string address = $"uplay://launch/{Id}";
|
||||||
|
if (String.IsNullOrWhiteSpace(gameArguments))
|
||||||
|
{
|
||||||
|
address += "/" + gameArguments;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
address += "/0";
|
||||||
|
}
|
||||||
|
return address;
|
||||||
|
}
|
||||||
|
|
||||||
public bool CopyTo(UplayGame uplayGame)
|
public bool CopyTo(UplayGame uplayGame)
|
||||||
{
|
{
|
||||||
if (!(uplayGame is UplayGame))
|
if (!(uplayGame is UplayGame))
|
||||||
|
Loading…
Reference in New Issue
Block a user