Achievements: Show primed/challenge-in-progress achievements

This commit is contained in:
Connor McLaughlin
2022-09-21 22:02:54 +10:00
parent a55ca69b87
commit cba4bb4ab2
6 changed files with 143 additions and 28 deletions

View File

@@ -13,7 +13,7 @@ class CDImage;
class StateWrapper;
namespace Achievements {
enum class AchievementCategory : u32
enum class AchievementCategory : u8
{
Local = 0,
Core = 3,
@@ -36,6 +36,7 @@ struct Achievement
AchievementCategory category;
bool locked;
bool active;
bool primed;
};
struct Leaderboard
@@ -85,13 +86,13 @@ void Initialize();
void UpdateSettings(const Settings& old_config);
/// Called when the system is being reset. If it returns false, the reset should be aborted.
bool Reset();
bool ConfirmSystemReset();
/// Called when the system is being shut down. If Shutdown() returns false, the shutdown should be aborted.
bool Shutdown();
bool OnSystemShutdown();
/// Called when the system is being paused and resumed.
void OnPaused(bool paused);
void OnSystemPaused(bool paused);
/// Called once a frame at vsync time on the CPU thread.
void FrameUpdate();
@@ -141,6 +142,7 @@ std::optional<bool> TryEnumerateLeaderboardEntries(u32 id, std::function<bool(co
const Leaderboard* GetLeaderboardByID(u32 id);
u32 GetLeaderboardCount();
bool IsLeaderboardTimeType(const Leaderboard& leaderboard);
u32 GetPrimedAchievementCount();
const Achievement* GetAchievementByID(u32 id);
std::pair<u32, u32> GetAchievementProgress(const Achievement& achievement);
@@ -148,9 +150,6 @@ std::string GetAchievementProgressText(const Achievement& achievement);
const std::string& GetAchievementBadgePath(const Achievement& achievement, bool download_if_missing = true);
std::string GetAchievementBadgeURL(const Achievement& achievement);
void UnlockAchievement(u32 achievement_id, bool add_notification = true);
void SubmitLeaderboard(u32 leaderboard_id, int value);
#ifdef WITH_RAINTEGRATION
void SwitchToRAIntegration();