Exemple #1
0
 /// <summary>
 /// <para> Takes AppID of DLC and checks if the user owns the DLC &amp; if the DLC is installed</para>
 /// </summary>
 public static bool BIsDlcInstalled(AppId_t appID)
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_BIsDlcInstalled(CSteamGameServerAPIContext.GetSteamApps(), appID));
 }
Exemple #2
0
 public static bool BIsVACBanned()
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_BIsVACBanned(CSteamGameServerAPIContext.GetSteamApps()));
 }
Exemple #3
0
 public static string GetAvailableGameLanguages()
 {
     InteropHelp.TestIfAvailableGameServer();
     return(InteropHelp.PtrToStringUTF8(NativeMethods.ISteamApps_GetAvailableGameLanguages(CSteamGameServerAPIContext.GetSteamApps())));
 }
Exemple #4
0
 /// <summary>
 /// <para> Check if user borrowed this game via Family Sharing, If true, call GetAppOwner() to get the lender SteamID</para>
 /// </summary>
 public static bool BIsSubscribedFromFamilySharing()
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_BIsSubscribedFromFamilySharing(CSteamGameServerAPIContext.GetSteamApps()));
 }
Exemple #5
0
 /// <summary>
 /// <para> check if game is a timed trial with limited playtime</para>
 /// </summary>
 public static bool BIsTimedTrial(out uint punSecondsAllowed, out uint punSecondsPlayed)
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_BIsTimedTrial(CSteamGameServerAPIContext.GetSteamApps(), out punSecondsAllowed, out punSecondsPlayed));
 }
Exemple #6
0
 /// <summary>
 /// <para> return the buildid of this app, may change at any time based on backend updates to the game</para>
 /// </summary>
 public static int GetAppBuildId()
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_GetAppBuildId(CSteamGameServerAPIContext.GetSteamApps()));
 }
Exemple #7
0
 /// <summary>
 /// <para> Request all proof of purchase keys for the calling appid and asociated DLC.</para>
 /// <para> A series of AppProofOfPurchaseKeyResponse_t callbacks will be sent with</para>
 /// <para> appropriate appid values, ending with a final callback where the m_nAppId</para>
 /// <para> member is k_uAppIdInvalid (zero).</para>
 /// </summary>
 public static void RequestAllProofOfPurchaseKeys()
 {
     InteropHelp.TestIfAvailableGameServer();
     NativeMethods.ISteamApps_RequestAllProofOfPurchaseKeys(CSteamGameServerAPIContext.GetSteamApps());
 }
Exemple #8
0
 /// <summary>
 /// <para> Returns the associated launch param if the game is run via steam://run/&lt;appid&gt;//?param1=value1&amp;param2=value2&amp;param3=value3 etc.</para>
 /// <para> Parameter names starting with the character '@' are reserved for internal use and will always return and empty string.</para>
 /// <para> Parameter names starting with an underscore '_' are reserved for steam features -- they can be queried by the game,</para>
 /// <para> but it is advised that you not param names beginning with an underscore for your own features.</para>
 /// <para> Check for new launch parameters on callback NewUrlLaunchParameters_t</para>
 /// </summary>
 public static string GetLaunchQueryParam(string pchKey)
 {
     InteropHelp.TestIfAvailableGameServer();
     using (var pchKey2 = new InteropHelp.UTF8StringHandle(pchKey)) {
         return(InteropHelp.PtrToStringUTF8(NativeMethods.ISteamApps_GetLaunchQueryParam(CSteamGameServerAPIContext.GetSteamApps(), pchKey2)));
     }
 }
Exemple #9
0
 /// <summary>
 /// <para> get download progress for optional DLC</para>
 /// </summary>
 public static bool GetDlcDownloadProgress(AppId_t nAppID, out ulong punBytesDownloaded, out ulong punBytesTotal)
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_GetDlcDownloadProgress(CSteamGameServerAPIContext.GetSteamApps(), nAppID, out punBytesDownloaded, out punBytesTotal));
 }
Exemple #10
0
 /// <summary>
 /// <para> return installed depots in mount order</para>
 /// </summary>
 public static uint GetInstalledDepots(AppId_t appID, DepotId_t[] pvecDepots, uint cMaxDepots)
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_GetInstalledDepots(CSteamGameServerAPIContext.GetSteamApps(), appID, pvecDepots, cMaxDepots));
 }
Exemple #11
0
 /// <summary>
 /// <para> returns the SteamID of the original owner. If this CSteamID is different from ISteamUser::GetSteamID(),</para>
 /// <para> the user has a temporary license borrowed via Family Sharing</para>
 /// </summary>
 public static CSteamID GetAppOwner()
 {
     InteropHelp.TestIfAvailableGameServer();
     return((CSteamID)NativeMethods.ISteamApps_GetAppOwner(CSteamGameServerAPIContext.GetSteamApps()));
 }
Exemple #12
0
 /// <summary>
 /// <para> signal Steam that game files seems corrupt or missing</para>
 /// </summary>
 public static bool MarkContentCorrupt(bool bMissingFilesOnly)
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_MarkContentCorrupt(CSteamGameServerAPIContext.GetSteamApps(), bMissingFilesOnly));
 }
Exemple #13
0
 public static void UninstallDLC(AppId_t nAppID)
 {
     InteropHelp.TestIfAvailableGameServer();
     NativeMethods.ISteamApps_UninstallDLC(CSteamGameServerAPIContext.GetSteamApps(), nAppID);
 }
Exemple #14
0
 /// <summary>
 /// <para> returns the Unix time of the purchase of the app</para>
 /// </summary>
 public static uint GetEarliestPurchaseUnixTime(AppId_t nAppID)
 {
     InteropHelp.TestIfAvailableGameServer();
     return(NativeMethods.ISteamApps_GetEarliestPurchaseUnixTime(CSteamGameServerAPIContext.GetSteamApps(), nAppID));
 }
 public static SteamAPICall_t GetFileDetails(string pszFileName)
 {
     InteropHelp.TestIfAvailableGameServer();
     using (var pszFileName2 = new InteropHelp.UTF8StringHandle(pszFileName)) {
         return((SteamAPICall_t)NativeMethods.ISteamGameServerApps_GetFileDetails(CSteamGameServerAPIContext.GetSteamApps(), pszFileName2));
     }
 }
 /// <summary>
 /// <para> Request legacy cd-key for yourself or owned DLC. If you are interested in this</para>
 /// <para> data then make sure you provide us with a list of valid keys to be distributed</para>
 /// <para> to users when they purchase the game, before the game ships.</para>
 /// <para> You'll receive an AppProofOfPurchaseKeyResponse_t callback when</para>
 /// <para> the key is available (which may be immediately).</para>
 /// </summary>
 public static void RequestAppProofOfPurchaseKey(AppId_t nAppID)
 {
     InteropHelp.TestIfAvailableGameServer();
     NativeMethods.ISteamGameServerApps_RequestAppProofOfPurchaseKey(CSteamGameServerAPIContext.GetSteamApps(), nAppID);
 }