SteamAdditionalContentProvider.cs 758 B

1234567891011121314151617181920212223242526
  1. using Steamworks;
  2. namespace PixiEditor.Platform.Steam;
  3. public sealed class SteamAdditionalContentProvider : IAdditionalContentProvider
  4. {
  5. private Dictionary<AdditionalContentProduct, AppId_t> productIds = new()
  6. {
  7. { AdditionalContentProduct.SupporterPack, new AppId_t(2435860) }
  8. };
  9. public bool IsContentInstalled(AdditionalContentProduct product)
  10. {
  11. if(!SteamAPI.IsSteamRunning()) return false;
  12. if(!PlatformHasContent(product)) return false;
  13. AppId_t appId = productIds[product];
  14. bool installed = SteamApps.BIsDlcInstalled(appId);
  15. return installed;
  16. }
  17. public bool PlatformHasContent(AdditionalContentProduct product)
  18. {
  19. return productIds.ContainsKey(product);
  20. }
  21. }