diff --git a/src/core/achievements.cpp b/src/core/achievements.cpp index 77ac6837c..dec0ca201 100644 --- a/src/core/achievements.cpp +++ b/src/core/achievements.cpp @@ -248,7 +248,7 @@ struct State std::string game_path; std::string game_title; - std::string game_icon_url; + std::string game_badge_url; rc_client_user_game_summary_t game_summary = {}; rc_client_async_handle_t* login_request = nullptr; @@ -571,9 +571,9 @@ const std::string& Achievements::GetCurrentGamePath() return s_state.game_path; } -const std::string& Achievements::GetCurrentGameIconURL() +const std::string& Achievements::GetCurrentGameBadgeURL() { - return s_state.game_icon_url; + return s_state.game_badge_url; } const std::string& Achievements::GetRichPresenceString() @@ -1319,7 +1319,7 @@ void Achievements::ClientLoadGameCallback(int result, const char* error_message, s_state.has_achievements = has_achievements; s_state.has_leaderboards = has_leaderboards; s_state.has_rich_presence = rc_client_has_rich_presence(client); - s_state.game_icon_url = + s_state.game_badge_url = info->badge_url ? std::string(info->badge_url) : GetImageURL(info->badge_name, RC_IMAGE_TYPE_GAME); if (info->badge_name) GameList::UpdateAchievementBadgeName(info->id, info->badge_name); @@ -1361,7 +1361,7 @@ void Achievements::ClearGameInfo() s_state.game_id = 0; s_state.game_title = {}; - s_state.game_icon_url = {}; + s_state.game_badge_url = {}; s_state.reload_game_on_reset = false; s_state.has_achievements = false; s_state.has_leaderboards = false; @@ -1411,7 +1411,7 @@ void Achievements::DisplayAchievementSummary() FullscreenUI::AddAchievementNotification("AchievementsSummary", IsHardcoreModeActive() ? ACHIEVEMENT_SUMMARY_NOTIFICATION_TIME_HC : ACHIEVEMENT_SUMMARY_NOTIFICATION_TIME, - s_state.game_icon_url, s_state.game_title, std::string(summary), + s_state.game_badge_url, s_state.game_title, std::string(summary), RA_LOGO_ICON_NAME, FullscreenUI::AchievementNotificationNoteType::Image); if (s_state.game_summary.num_unsupported_achievements > 0) @@ -1520,7 +1520,7 @@ void Achievements::HandleGameCompleteEvent(const rc_client_event_t* event) TRANSLATE_PLURAL_STR("Achievements", "%n points", "Achievement points", s_state.game_summary.points_unlocked)); FullscreenUI::AddAchievementNotification( - "achievement_mastery", GAME_COMPLETE_NOTIFICATION_TIME, s_state.game_icon_url, s_state.game_title, + "achievement_mastery", GAME_COMPLETE_NOTIFICATION_TIME, s_state.game_badge_url, s_state.game_title, std::move(message), ICON_EMOJI_TROPHY, FullscreenUI::AchievementNotificationNoteType::IconText); } } @@ -1555,7 +1555,7 @@ void Achievements::HandleLeaderboardStartedEvent(const rc_client_event_t* event) { FullscreenUI::AddAchievementNotification( fmt::format("leaderboard_{}", event->leaderboard->id), LEADERBOARD_STARTED_NOTIFICATION_TIME, - s_state.game_icon_url, std::string(event->leaderboard->title), + s_state.game_badge_url, std::string(event->leaderboard->title), TRANSLATE_STR("Achievements", "Leaderboard attempt started."), ICON_EMOJI_RED_FLAG, FullscreenUI::AchievementNotificationNoteType::IconText); } @@ -1569,7 +1569,7 @@ void Achievements::HandleLeaderboardFailedEvent(const rc_client_event_t* event) { FullscreenUI::AddAchievementNotification( fmt::format("leaderboard_{}", event->leaderboard->id), LEADERBOARD_FAILED_NOTIFICATION_TIME, - s_state.game_icon_url, std::string(event->leaderboard->title), + s_state.game_badge_url, std::string(event->leaderboard->title), TRANSLATE_STR("Achievements", "Leaderboard attempt failed."), ICON_EMOJI_CROSS_MARK_BUTTON, FullscreenUI::AchievementNotificationNoteType::IconText); } @@ -1608,7 +1608,7 @@ void Achievements::HandleLeaderboardSubmittedEvent(const rc_client_event_t* even FullscreenUI::AddAchievementNotification( fmt::format("leaderboard_{}", event->leaderboard->id), - static_cast(g_settings.achievements_leaderboard_duration), s_state.game_icon_url, + static_cast(g_settings.achievements_leaderboard_duration), s_state.game_badge_url, std::string(event->leaderboard->title), std::move(message), g_settings.achievements_spectator_mode ? std::string(ICON_EMOJI_CHART_UPWARDS_TREND) : std::string(), g_settings.achievements_spectator_mode ? FullscreenUI::AchievementNotificationNoteType::IconText : @@ -1645,7 +1645,7 @@ void Achievements::HandleLeaderboardScoreboardEvent(const rc_client_event_t* eve FullscreenUI::AddAchievementNotification( fmt::format("leaderboard_{}", event->leaderboard->id), - static_cast(g_settings.achievements_leaderboard_duration), s_state.game_icon_url, + static_cast(g_settings.achievements_leaderboard_duration), s_state.game_badge_url, std::string(event->leaderboard->title), std::move(message), ICON_EMOJI_CHECKMARK_BUTTON, FullscreenUI::AchievementNotificationNoteType::IconText, LEADERBOARD_NOTIFICATION_MIN_WIDTH); } @@ -1928,7 +1928,7 @@ void Achievements::LoadStateFromBuffer(std::span data, std::unique_loc { // Fallback to game icon if we don't have a cover. std::string image = System::GetImageForLoadingScreen(System::GetGamePath()); - FullscreenUI::OpenOrUpdateLoadingScreen(image.empty() ? s_state.game_icon_url : image, + FullscreenUI::OpenOrUpdateLoadingScreen(image.empty() ? s_state.game_badge_url : image, TRANSLATE_SV("Achievements", "Downloading achievements data...")); WaitForServerCallsWithYield(lock); diff --git a/src/core/achievements.h b/src/core/achievements.h index 3d098e264..aeae9d179 100644 --- a/src/core/achievements.h +++ b/src/core/achievements.h @@ -153,7 +153,7 @@ bool HasRichPresence(); const std::string& GetRichPresenceString(); /// Returns the URL for the current icon of the game -const std::string& GetCurrentGameIconURL(); +const std::string& GetCurrentGameBadgeURL(); /// Returns the RetroAchievements title for the current game. /// Should be called with the lock held. diff --git a/src/core/fullscreenui_achievements.cpp b/src/core/fullscreenui_achievements.cpp index be8aa3fad..18acd55a4 100644 --- a/src/core/fullscreenui_achievements.cpp +++ b/src/core/fullscreenui_achievements.cpp @@ -1794,9 +1794,9 @@ void FullscreenUI::DrawAchievementsWindow() const float spacing = LayoutScale(LAYOUT_MENU_ITEM_TITLE_SUMMARY_SPACING); const float image_size = LayoutScale(75.0f); - if (const std::string& icon = Achievements::GetCurrentGameIconURL(); !icon.empty()) + if (const std::string& badge_url = Achievements::GetCurrentGameBadgeURL(); !badge_url.empty()) { - GPUTexture* badge = GetCachedTextureAsync(icon); + GPUTexture* badge = GetCachedTextureAsync(badge_url); if (badge) { ImGui::GetWindowDrawList()->AddImage(badge, pos, pos + ImVec2(image_size, image_size), ImVec2(0.0f, 0.0f), @@ -2476,9 +2476,9 @@ void FullscreenUI::DrawLeaderboardsWindow() const ImVec2 heading_pos = ImGui::GetCursorScreenPos() + ImGui::GetStyle().FramePadding; const float image_size = LayoutScale(75.0f); - if (const std::string& icon = Achievements::GetCurrentGameIconURL(); !icon.empty()) + if (const std::string& badge_url = Achievements::GetCurrentGameBadgeURL(); !badge_url.empty()) { - GPUTexture* badge = GetCachedTextureAsync(icon); + GPUTexture* badge = GetCachedTextureAsync(badge_url); if (badge) { ImGui::GetWindowDrawList()->AddImage(badge, heading_pos, heading_pos + ImVec2(image_size, image_size), diff --git a/src/core/fullscreenui_game_list.cpp b/src/core/fullscreenui_game_list.cpp index d770ef47b..a89f45f17 100644 --- a/src/core/fullscreenui_game_list.cpp +++ b/src/core/fullscreenui_game_list.cpp @@ -1067,7 +1067,7 @@ GPUTexture* FullscreenUI::GetGameListCover(const GameList::Entry* entry, bool fa { const auto lock = Achievements::GetLock(); if (Achievements::GetCurrentGamePath() == entry->path) - cover_it->second = Achievements::GetCurrentGameIconURL(); + cover_it->second = Achievements::GetCurrentGameBadgeURL(); } } diff --git a/src/core/system.cpp b/src/core/system.cpp index 06da5585d..dffb0eb57 100644 --- a/src/core/system.cpp +++ b/src/core/system.cpp @@ -6578,8 +6578,8 @@ void System::UpdateRichPresence(bool update_session_time) if (Achievements::HasRichPresence()) rp.state = (state_string = StringUtil::Ellipsise(Achievements::GetRichPresenceString(), 128)).c_str(); - if (const std::string& icon_url = Achievements::GetCurrentGameIconURL(); !icon_url.empty()) - rp.largeImageKey = icon_url.c_str(); + if (const std::string& badge_url = Achievements::GetCurrentGameBadgeURL(); !badge_url.empty()) + rp.largeImageKey = badge_url.c_str(); dyn_libs::Discord_UpdatePresence(&rp); }