/// <summary> /// Determines if the given achievement name is valid. /// </summary> /// <returns></returns> public bool IsValidAchievement(uint userId, string achievement) { var steamId = Player.SteamIdFromUserId(userId); bool _; return(SteamGameServerStats.GetUserAchievement(steamId, achievement, out _)); }
/// <summary> /// Determines if the user has unlocked the given achievement. /// </summary> /// <param name="userId">The user to check.</param> /// <param name="achievement">The name of the achievement.</param> /// <returns></returns> public bool UserHasAchievement(uint userId, string achievement) { if (string.IsNullOrWhiteSpace(achievement)) { throw new InvalidOperationException("The achievement name cannot be empty."); } var steamId = Player.SteamIdFromUserId(userId); bool achieved; if (!SteamGameServerStats.GetUserAchievement(steamId, achievement, out achieved)) { throw new InvalidOperationException($"Could not get achieved \"{achievement}\""); } return(achieved); }