summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorLillyJadeKatrin <lilly.kitty.1988@gmail.com>2024-06-12 06:34:46 -0400
committerLillyJadeKatrin <lilly.kitty.1988@gmail.com>2024-06-15 07:56:21 -0400
commitcee3d9126be2bd9ca536ebe0df08f03ad0e7eb98 (patch)
treecbcf3bb11a1092eb9eed2eb868bdc21db3235e41 /Source
parenta13b198ba071e1f93b7ad93351309d21ba93a140 (diff)
Added missing dialog updates to achievement events
Now should properly update the Achievements dialog whenever the displayed state of an achievement/leaderboard changes.
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/Core/AchievementManager.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/Source/Core/Core/AchievementManager.cpp b/Source/Core/Core/AchievementManager.cpp
index c4cd632221..2ad653f6ba 100644
--- a/Source/Core/Core/AchievementManager.cpp
+++ b/Source/Core/Core/AchievementManager.cpp
@@ -741,6 +741,8 @@ void AchievementManager::HandleAchievementTriggeredEvent(const rc_client_event_t
(rc_client_get_hardcore_enabled(instance.m_client)) ? OSD::Color::YELLOW :
OSD::Color::CYAN,
&instance.GetAchievementBadge(client_event->achievement->id, false));
+ AchievementManager::GetInstance().m_update_callback(
+ UpdatedItems{.achievements = {client_event->achievement->id}});
}
void AchievementManager::HandleLeaderboardStartedEvent(const rc_client_event_t* client_event)
@@ -765,6 +767,8 @@ void AchievementManager::HandleLeaderboardSubmittedEvent(const rc_client_event_t
client_event->leaderboard->title),
OSD::Duration::VERY_LONG, OSD::Color::YELLOW);
AchievementManager::GetInstance().FetchBoardInfo(client_event->leaderboard->id);
+ AchievementManager::GetInstance().m_update_callback(
+ UpdatedItems{.leaderboards = {client_event->leaderboard->id}});
}
void AchievementManager::HandleLeaderboardTrackerUpdateEvent(const rc_client_event_t* client_event)
@@ -822,6 +826,8 @@ void AchievementManager::HandleAchievementProgressIndicatorShowEvent(
OSD::Duration::SHORT, OSD::Color::GREEN,
&instance.GetAchievementBadge(client_event->achievement->id, false));
instance.m_last_progress_message = current_time;
+ AchievementManager::GetInstance().m_update_callback(
+ UpdatedItems{.achievements = {client_event->achievement->id}});
}
void AchievementManager::HandleGameCompletedEvent(const rc_client_event_t* client_event,