From 884bccdb3c6a814285a6ed1ba6d5ee5ea6f61b5d Mon Sep 17 00:00:00 2001 From: clintonium-119 Date: Thu, 11 Jun 2026 18:33:32 -0400 Subject: [PATCH 1/2] feat(ra): add RetroAchievements challenge indicators Surface active "challenge" achievements (a primed trigger, e.g. a no-damage run in progress) both on-screen during gameplay and in the in-game menu. rcheevos already fired CHALLENGE_INDICATOR_SHOW/HIDE; these were only logged. Asset: - New ASSET_TROPHY atlas glyph (trophy cup) added to assets@1-4x.png and assets.svg, slotted next to the other small icons. White silhouette so it tints via the existing colormod path like ASSET_LOCK. On-screen indicator: - New raShowChallengeIndicators setting (default on), mirroring raShowNotifications, with a "Show Challenge Indicators" toggle in Settings. - notification.c tracks active challenges by id (idempotent show/hide, so duplicate SHOW or out-of-order HIDE are safe) and renders a trophy pill in the lower-right: a single trophy when one challenge is active, trophy + "+N" when more. Mutex-guarded to match the progress-indicator pattern; cleared on game unload via Notification_clear/quit. - ra_integration.c wires the SHOW/HIDE events to the new API (SHOW honors the setting; HIDE always fires so an indicator can't get stuck on screen). In-game menu: - Achievement list now groups by PROGRESS so the ACTIVE_CHALLENGE bucket is surfaced. Active challenges are pinned to the top (unsorted); only the remaining tail is sorted by the user's chosen order. Pinned rows get a trophy glyph before the title. Empty challenge bucket leaves the menu unchanged; challenges survive the locked-only filter. --- skeleton/SYSTEM/res/assets.svg | 7 +- skeleton/SYSTEM/res/assets@1x.png | Bin 7578 -> 6081 bytes skeleton/SYSTEM/res/assets@2x.png | Bin 18494 -> 13936 bytes skeleton/SYSTEM/res/assets@3x.png | Bin 30305 -> 22559 bytes skeleton/SYSTEM/res/assets@4x.png | Bin 42415 -> 31553 bytes workspace/all/common/api.c | 1 + workspace/all/common/api.h | 1 + workspace/all/common/config.c | 23 +++ workspace/all/common/config.h | 4 + workspace/all/common/notification.c | 187 ++++++++++++++++++++++++- workspace/all/common/notification.h | 34 +++++ workspace/all/minarch/ma_menu.c | 72 +++++++++- workspace/all/minarch/ra_integration.c | 8 +- workspace/all/settings/settings.cpp | 4 + 14 files changed, 326 insertions(+), 15 deletions(-) diff --git a/skeleton/SYSTEM/res/assets.svg b/skeleton/SYSTEM/res/assets.svg index 12a88dcec..d2ca33f3d 100644 --- a/skeleton/SYSTEM/res/assets.svg +++ b/skeleton/SYSTEM/res/assets.svg @@ -717,4 +717,9 @@ id="g4" transform="matrix(0.04561003,0,0,0.04561003,370.08438,461.89281)"> + id="path1-22" /> diff --git a/skeleton/SYSTEM/res/assets@1x.png b/skeleton/SYSTEM/res/assets@1x.png index 1b709919c8ac808d4361ce57462a3bb96f28fae9..255f4c2724355b1543070fc4b0d58840b09f8542 100644 GIT binary patch literal 6081 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 literal 7578 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 diff --git a/skeleton/SYSTEM/res/assets@2x.png b/skeleton/SYSTEM/res/assets@2x.png index abf458a882a5ca10ad01b1fe269e523955d3ecd8..2ca6facb29be6dffba8acadac12266bd2501d0dc 100644 GIT binary patch literal 13936 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 literal 18494 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 gz(NQigh(>~4Hq)$07*qoM6N<$f;!66pa1{> diff --git a/skeleton/SYSTEM/res/assets@3x.png b/skeleton/SYSTEM/res/assets@3x.png index 8cd6462c010a311a6233c7b616c0339800805ffa..69153987e3163e75f9d5caf6ec062c222c169092 100644 GIT binary patch literal 22559 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 r_m;pjY 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 g+Xv%oj0i((! zs#bw5zv}GF`>ig+?(ci+rpiAhR;6VPvYbM~UaFZtTS8|dal4Hi#ijXO)A)Sob0>V9&5@?vj{=LM zOq=h5M#kr0=k0}+`Sq42#nrDSa@x`NKKF4ew#7FRFgR|9d8er}U}r3MznZ__wIh31 z`?6gYlE3pXN#MIKkuw@aLarR3M{sg|H<~h`A6WiFeQQi4z z`Dx;hyu-Q<-si7gzgB9wjd{-81nTL*i*FMm=Fczg``OyKjv+R?@^1`dZ_u;sLA}OQ zI3x}Qic50>vJ}@eYdvKEEVFOgrqM}`vm8T=!CjaCG3*&Q*`FUm2}CY+IJ7S1IxW%i zKN#I|<^P)0_ch71{OUSvpamh5hr}a1px$M?N^G$rALf%?h8a{Ii=<@Evw-yE+BMJ6 zq%+haTqiNGzfFYe=#>QdESJnlzEh)_mX5F7e-t_hJcOf<(yu+KOOKj#E4?o))+u%F zQOwk7{Un;ps}OX|*6%k%JXh1uc?-ziy|l#Uz_JXJ^S(Cajr#hRV7;pt@3!z6xQhI| zf|rfUK!z{cT{x=Su-x!<$Q+**BKllvBZAjPuKC_dv>R9da6z%1ab$6iAGYIP5*vcM|UK<{u9U*MEtqv370xeLI!S3u^2*@Ua-cuf~GJ700z zWWTB9Ieq#2LQCl1cVy3Ajx@1kHT@Nf3WmrW249A5)mX;G@VKt>YuE_pwozLN!rdaTS#Ru771)rw;087E2#J*0jv0l+7p|wU26F8da!@s1rvhS!oI@`BJ zANcoAb~Qe1s3-jxmChBU6P~$SUAC`tISixdfyIMs*-fd;RY`JwzhUOh>bp>m;hV$k z6nY&a`5*I|v3&ZHPyeVY=l)G4(53E69IZ~|+v*pm8=#6UP`(|TJWv}DXsgyRwzQM#2haKQ-3uI5 zf$N13<*S!_n&!PM0KILH%Srog(gm1SjT=|DQ3Q5t;a9q z_tB(>#jOD8=DqMmoFZSRTvN5(qI|7QM$Muajb)&@%jTWvwoq0O1z{SK&=!_fk4l~nt zb+O;Xq)&d^*#L!J?x<XwGA{<_|2)o_AM+X$5+gpE)sjM7 z3BK6N>>LRnuxb$3iCmfrIN!I8aXocHpR9UYe;glnTnLbem838{ySj@-QxbhuM<0%> zjdEd3CY(UZ9bWBo9a90Myn(}_f^@Qf(zyEf) eP!@Yavvf$c$xCBp47P)%(z|7Jvs~+8#Qy={=;(d` diff --git a/skeleton/SYSTEM/res/assets@4x.png b/skeleton/SYSTEM/res/assets@4x.png index 941d40d550557e1f0a299b67f6f6fb03a7bf13af..fe456303f5293fed18adab8a2d6eee0af4b704a2 100644 GIT binary patch literal 31553 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 DPVZ(X literal 42415 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 diff --git a/workspace/all/common/api.c b/workspace/all/common/api.c index 19f3f5439..e782179c6 100644 --- a/workspace/all/common/api.c +++ b/workspace/all/common/api.c @@ -437,6 +437,7 @@ SDL_Surface *GFX_init(int mode) asset_rects[ASSET_WIFI_OFF] = (SDL_Rect){SCALE4(40, 104, 12, 12)}; asset_rects[ASSET_CHECKCIRCLE] = (SDL_Rect){SCALE4(1, 117, 10, 10)}; asset_rects[ASSET_LOCK] = (SDL_Rect){SCALE4(12, 116, 8, 11)}; + asset_rects[ASSET_TROPHY] = (SDL_Rect){SCALE4(78, 117, 10, 11)}; asset_rects[ASSET_HOLE] = (SDL_Rect){SCALE4(1, 63, 20, 20)}; asset_rects[ASSET_GAMEPAD] = (SDL_Rect){SCALE4(91, 51, 17, 10)}; asset_rects[ASSET_SETTINGS] = (SDL_Rect){SCALE4(21, 117, 10, 10)}; diff --git a/workspace/all/common/api.h b/workspace/all/common/api.h index 828af8271..5e6c362f8 100644 --- a/workspace/all/common/api.h +++ b/workspace/all/common/api.h @@ -161,6 +161,7 @@ enum { ASSET_CHECKCIRCLE, ASSET_LOCK, + ASSET_TROPHY, ASSET_SETTINGS, ASSET_STORE, ASSET_GAMEPAD, diff --git a/workspace/all/common/config.c b/workspace/all/common/config.c index e1ec3ba7b..aea4cb496 100644 --- a/workspace/all/common/config.c +++ b/workspace/all/common/config.c @@ -100,6 +100,7 @@ void CFG_defaults(NextUISettings *cfg) .raServerUsername = CFG_DEFAULT_RA_SERVER_USERNAME, .raAuthenticated = CFG_DEFAULT_RA_AUTHENTICATED, .raShowNotifications = CFG_DEFAULT_RA_SHOW_NOTIFICATIONS, + .raShowChallengeIndicators = CFG_DEFAULT_RA_SHOW_CHALLENGE_INDICATORS, .raNotificationDuration = CFG_DEFAULT_RA_NOTIFICATION_DURATION, .raProgressNotificationDuration = CFG_DEFAULT_RA_PROGRESS_NOTIFICATION_DURATION, .raAchievementSortOrder = CFG_DEFAULT_RA_ACHIEVEMENT_SORT_ORDER, @@ -489,6 +490,11 @@ void CFG_init(FontLoad_callback_t cb, ColorSet_callback_t ccb) CFG_setRAShowNotifications((bool)temp_value); continue; } + if (sscanf(line, "raShowChallengeIndicators=%i", &temp_value) == 1) + { + CFG_setRAShowChallengeIndicators((bool)temp_value); + continue; + } if (sscanf(line, "raNotificationDuration=%i", &temp_value) == 1) { CFG_setRANotificationDuration(temp_value); @@ -1246,6 +1252,17 @@ void CFG_setRAShowNotifications(bool show) CFG_sync(); } +bool CFG_getRAShowChallengeIndicators(void) +{ + return settings.raShowChallengeIndicators; +} + +void CFG_setRAShowChallengeIndicators(bool show) +{ + settings.raShowChallengeIndicators = show; + CFG_sync(); +} + int CFG_getRANotificationDuration(void) { return settings.raNotificationDuration; @@ -1541,6 +1558,10 @@ void CFG_get(const char *key, char *value) { sprintf(value, "%i", (int)(CFG_getRAShowNotifications())); } + else if (strcmp(key, "raShowChallengeIndicators") == 0) + { + sprintf(value, "%i", (int)(CFG_getRAShowChallengeIndicators())); + } else if (strcmp(key, "raNotificationDuration") == 0) { sprintf(value, "%i", CFG_getRANotificationDuration()); @@ -1660,6 +1681,7 @@ void CFG_sync(void) fprintf(file, "raServerUsername=%s\n", settings.raServerUsername); fprintf(file, "raAuthenticated=%i\n", settings.raAuthenticated); fprintf(file, "raShowNotifications=%i\n", settings.raShowNotifications); + fprintf(file, "raShowChallengeIndicators=%i\n", settings.raShowChallengeIndicators); fprintf(file, "raNotificationDuration=%i\n", settings.raNotificationDuration); fprintf(file, "raProgressNotificationDuration=%i\n", settings.raProgressNotificationDuration); fprintf(file, "raAchievementSortOrder=%i\n", settings.raAchievementSortOrder); @@ -1733,6 +1755,7 @@ void CFG_print(void) printf("\t\"raServerUsername\": \"%s\",\n", settings.raServerUsername); printf("\t\"raAuthenticated\": %i,\n", settings.raAuthenticated); printf("\t\"raShowNotifications\": %i,\n", settings.raShowNotifications); + printf("\t\"raShowChallengeIndicators\": %i,\n", settings.raShowChallengeIndicators); printf("\t\"raNotificationDuration\": %i,\n", settings.raNotificationDuration); printf("\t\"raProgressNotificationDuration\": %i,\n", settings.raProgressNotificationDuration); printf("\t\"raAchievementSortOrder\": %i,\n", settings.raAchievementSortOrder); diff --git a/workspace/all/common/config.h b/workspace/all/common/config.h index cdd577866..bad3f5fc0 100644 --- a/workspace/all/common/config.h +++ b/workspace/all/common/config.h @@ -187,6 +187,7 @@ typedef struct char raServerUsername[64]; // Server's internal username (from avatar URL, used for sync hash) bool raAuthenticated; // Whether we have a valid token bool raShowNotifications; // Show achievement unlock notifications + bool raShowChallengeIndicators; // Show on-screen indicator while a challenge achievement is active int raNotificationDuration; // Duration for achievement notifications (1-5 seconds) int raProgressNotificationDuration; // Duration for progress notifications (0-5 seconds, 0 = disabled) int raAchievementSortOrder; // Sort order for achievements list (RA_SORT_* enum) @@ -267,6 +268,7 @@ typedef struct #define CFG_DEFAULT_RA_SERVER_USERNAME "" #define CFG_DEFAULT_RA_AUTHENTICATED false #define CFG_DEFAULT_RA_SHOW_NOTIFICATIONS true +#define CFG_DEFAULT_RA_SHOW_CHALLENGE_INDICATORS true #define CFG_DEFAULT_RA_NOTIFICATION_DURATION 3 #define CFG_DEFAULT_RA_PROGRESS_NOTIFICATION_DURATION 1 #define CFG_DEFAULT_RA_ACHIEVEMENT_SORT_ORDER RA_SORT_UNLOCKED_FIRST @@ -469,6 +471,8 @@ bool CFG_getRAAuthenticated(void); void CFG_setRAAuthenticated(bool authenticated); bool CFG_getRAShowNotifications(void); void CFG_setRAShowNotifications(bool show); +bool CFG_getRAShowChallengeIndicators(void); +void CFG_setRAShowChallengeIndicators(bool show); int CFG_getRANotificationDuration(void); void CFG_setRANotificationDuration(int seconds); int CFG_getRAProgressNotificationDuration(void); diff --git a/workspace/all/common/notification.c b/workspace/all/common/notification.c index f8d454f4a..3b2512999 100644 --- a/workspace/all/common/notification.c +++ b/workspace/all/common/notification.c @@ -79,6 +79,23 @@ typedef struct { static ProgressIndicatorState progress_state = {0}; static SDL_mutex* progress_mutex = NULL; +/////////////////////////////// +// Challenge indicator state +// +// Active "challenge" achievements (tracked by id so SHOW/HIDE are idempotent). +// Written from the rcheevos event handler (main thread) and read during +// rendering; guarded by challenge_mutex to match the progress-indicator +// pattern and stay safe regardless of which thread renders. +/////////////////////////////// + +#define CHALLENGE_MAX_ACTIVE 16 + +static uint32_t challenge_ids[CHALLENGE_MAX_ACTIVE]; +static int challenge_count = 0; +static int challenge_dirty = 0; +static int last_challenge_count = 0; +static SDL_mutex* challenge_mutex = NULL; + /////////////////////////////// // Rounded rectangle drawing /////////////////////////////// @@ -170,7 +187,14 @@ void Notification_init(void) { if (!progress_mutex) { progress_mutex = SDL_CreateMutex(); } - + // Create challenge indicator mutex + if (!challenge_mutex) { + challenge_mutex = SDL_CreateMutex(); + } + challenge_count = 0; + challenge_dirty = 0; + last_challenge_count = 0; + render_dirty = 1; last_notification_count = 0; initialized = 1; @@ -353,6 +377,70 @@ static void render_progress_indicator(const ProgressIndicatorState* snap) { SDL_FreeSurface(progress_surface); } +// Render the challenge indicator: a trophy pill in the lower-right corner. +// One trophy when a single challenge is active; trophy + "+N" when more than +// one. `count` is the number of active challenges (>= 1). +static void render_challenge_indicator(int count) { + if (count < 1) return; + + SDL_Color text_color = uintToColour(THEME_COLOR1_255); + SDL_Color bg_color_sdl = uintToColour(THEME_COLOR2_255); + + // Trophy glyph size (the asset rect is already scaled to the device scale). + SDL_Rect trophy_rect; + GFX_assetRect(ASSET_TROPHY, &trophy_rect); + int icon_w = trophy_rect.w; + int icon_h = trophy_rect.h; + + // "+N" counter only when more than one challenge is active. + char count_text[8] = {0}; + int text_w = 0, text_h = 0; + if (count > 1) { + snprintf(count_text, sizeof(count_text), "+%d", count - 1); + TTF_SizeUTF8(font.tiny, count_text, &text_w, &text_h); + } + + int content_h = icon_h > text_h ? icon_h : text_h; + int gap = (count > 1) ? notif_icon_gap : 0; + int pill_w = icon_w + gap + text_w + (notif_padding_x * 2); + int pill_h = content_h + (notif_padding_y * 2); + int corner_radius = pill_h / 2; + int x = screen_width - notif_margin - pill_w; + int y = screen_height - notif_margin - pill_h; + + SDL_Surface* surface = SDL_CreateRGBSurfaceWithFormat( + 0, pill_w, pill_h, 32, SDL_PIXELFORMAT_ABGR8888); + if (!surface) return; + + SDL_FillRect(surface, NULL, 0); + Uint32 bg_color = SDL_MapRGBA(surface->format, + bg_color_sdl.r, bg_color_sdl.g, bg_color_sdl.b, 255); + draw_rounded_rect(surface, 0, 0, pill_w, pill_h, corner_radius, bg_color); + + int content_x = notif_padding_x; + int icon_y = notif_padding_y + (content_h - icon_h) / 2; + GFX_blitAssetColor(ASSET_TROPHY, NULL, surface, + &(SDL_Rect){content_x, icon_y}, THEME_COLOR1_255); + content_x += icon_w + gap; + + if (count > 1) { + SDL_Surface* text_surf = TTF_RenderUTF8_Blended(font.tiny, count_text, text_color); + if (text_surf) { + SDL_SetSurfaceBlendMode(text_surf, SDL_BLENDMODE_BLEND); + SDL_Rect text_dst = {content_x, + notif_padding_y + (content_h - text_surf->h) / 2, + text_surf->w, text_surf->h}; + SDL_BlitSurface(text_surf, NULL, surface, &text_dst); + SDL_FreeSurface(text_surf); + } + } + + SDL_SetSurfaceBlendMode(surface, SDL_BLENDMODE_NONE); + SDL_Rect dst_rect = {x, y, pill_w, pill_h}; + SDL_BlitSurface(surface, NULL, gl_notification_surface, &dst_rect); + SDL_FreeSurface(surface); +} + // Render a single notification pill static void render_notification_pill(Notification* n, int x, int y, SDL_Color text_color, SDL_Color bg_color_sdl) { int text_w = 0, text_h = 0; @@ -466,8 +554,16 @@ void Notification_renderToLayer(int layer) { SDL_UnlockMutex(progress_mutex); int has_progress_indicator = progress_snap.active; - - if (!has_notifications && !has_system_indicator && !has_progress_indicator) { + + // Snapshot challenge indicator state under lock. + int challenge_snap = 0, challenge_snap_dirty = 0; + SDL_LockMutex(challenge_mutex); + challenge_snap = challenge_count; + challenge_snap_dirty = challenge_dirty; + SDL_UnlockMutex(challenge_mutex); + int has_challenge_indicator = challenge_snap > 0; + + if (!has_notifications && !has_system_indicator && !has_progress_indicator && !has_challenge_indicator) { // When all notifications and indicators are gone, render one final transparent frame if (gl_notification_surface) { if (needs_clear_frame) { @@ -479,6 +575,10 @@ void Notification_renderToLayer(int layer) { SDL_LockMutex(progress_mutex); progress_state.dirty = 0; SDL_UnlockMutex(progress_mutex); + SDL_LockMutex(challenge_mutex); + challenge_dirty = 0; + SDL_UnlockMutex(challenge_mutex); + last_challenge_count = 0; last_system_indicator_type = SYSTEM_INDICATOR_NONE; return; } @@ -496,8 +596,9 @@ void Notification_renderToLayer(int layer) { int notifications_changed = render_dirty || notification_count != last_notification_count; int indicator_changed = system_indicator_dirty || system_indicator_type != last_system_indicator_type; int progress_changed = progress_snap.dirty; - - if (!notifications_changed && !indicator_changed && !progress_changed) { + int challenge_changed = challenge_snap_dirty || challenge_snap != last_challenge_count; + + if (!notifications_changed && !indicator_changed && !progress_changed && !challenge_changed) { return; } @@ -521,6 +622,9 @@ void Notification_renderToLayer(int layer) { if (has_progress_indicator) { render_progress_indicator(&progress_snap); } + if (has_challenge_indicator) { + render_challenge_indicator(challenge_snap); + } if (has_notifications) { render_notification_stack(); } @@ -538,6 +642,11 @@ void Notification_renderToLayer(int layer) { SDL_LockMutex(progress_mutex); progress_state.dirty = 0; SDL_UnlockMutex(progress_mutex); + + last_challenge_count = challenge_snap; + SDL_LockMutex(challenge_mutex); + challenge_dirty = 0; + SDL_UnlockMutex(challenge_mutex); } bool Notification_isActive(void) { @@ -555,7 +664,14 @@ void Notification_clear(void) { } progress_state.dirty = 1; SDL_UnlockMutex(progress_mutex); - + + if (challenge_mutex) { + SDL_LockMutex(challenge_mutex); + challenge_count = 0; + challenge_dirty = 1; + SDL_UnlockMutex(challenge_mutex); + } + render_dirty = 1; PLAT_clearNotificationSurface(); if (gl_notification_surface) { @@ -568,11 +684,15 @@ void Notification_quit(void) { Notification_clear(); system_indicator_type = SYSTEM_INDICATOR_NONE; initialized = 0; - + if (progress_mutex) { SDL_DestroyMutex(progress_mutex); progress_mutex = NULL; } + if (challenge_mutex) { + SDL_DestroyMutex(challenge_mutex); + challenge_mutex = NULL; + } } /////////////////////////////// @@ -666,3 +786,56 @@ bool Notification_hasProgressIndicator(void) { SDL_UnlockMutex(progress_mutex); return active; } + +/////////////////////////////// +// Challenge Indicator Functions +/////////////////////////////// + +void Notification_showChallengeIndicator(uint32_t ach_id) { + if (!initialized) return; + SDL_LockMutex(challenge_mutex); + int found = 0; + for (int i = 0; i < challenge_count; i++) { + if (challenge_ids[i] == ach_id) { found = 1; break; } + } + if (!found && challenge_count < CHALLENGE_MAX_ACTIVE) { + challenge_ids[challenge_count++] = ach_id; + challenge_dirty = 1; + } + SDL_UnlockMutex(challenge_mutex); +} + +void Notification_hideChallengeIndicator(uint32_t ach_id) { + if (!initialized) return; + SDL_LockMutex(challenge_mutex); + for (int i = 0; i < challenge_count; i++) { + if (challenge_ids[i] == ach_id) { + // Remove by shifting the tail down. + for (int j = i; j < challenge_count - 1; j++) { + challenge_ids[j] = challenge_ids[j + 1]; + } + challenge_count--; + challenge_dirty = 1; + break; + } + } + SDL_UnlockMutex(challenge_mutex); +} + +void Notification_clearChallengeIndicators(void) { + if (!challenge_mutex) return; + SDL_LockMutex(challenge_mutex); + if (challenge_count > 0) { + challenge_count = 0; + challenge_dirty = 1; + } + SDL_UnlockMutex(challenge_mutex); +} + +bool Notification_hasChallengeIndicator(void) { + if (!initialized) return false; + SDL_LockMutex(challenge_mutex); + bool active = challenge_count > 0; + SDL_UnlockMutex(challenge_mutex); + return active; +} diff --git a/workspace/all/common/notification.h b/workspace/all/common/notification.h index eeb3608fc..3ce8f9a78 100644 --- a/workspace/all/common/notification.h +++ b/workspace/all/common/notification.h @@ -157,4 +157,38 @@ void Notification_setProgressIndicatorPersistent(bool persistent); */ bool Notification_hasProgressIndicator(void); +/////////////////////////////// +// Challenge Indicators +// Shows a persistent trophy pill in the lower-right while one or more +// "challenge" achievements are active (e.g. a no-damage run in progress). +// Tracked by achievement id so duplicate SHOW or out-of-order HIDE events +// are idempotent. A single trophy is shown for one active challenge, with a +// "+N" counter when more than one is active. +/////////////////////////////// + +/** + * Mark a challenge achievement as active (RC_CLIENT_EVENT_ACHIEVEMENT_ + * CHALLENGE_INDICATOR_SHOW). Idempotent for a given id. + * @param ach_id The rcheevos achievement id + */ +void Notification_showChallengeIndicator(uint32_t ach_id); + +/** + * Mark a challenge achievement as no longer active (CHALLENGE_INDICATOR_HIDE). + * Idempotent — a HIDE for an unknown id is a no-op. + * @param ach_id The rcheevos achievement id + */ +void Notification_hideChallengeIndicator(uint32_t ach_id); + +/** + * Clear all active challenge indicators (e.g. on game unload). + */ +void Notification_clearChallengeIndicators(void); + +/** + * Check if any challenge indicator is currently active. + * @return true if at least one challenge is active + */ +bool Notification_hasChallengeIndicator(void); + #endif // __NOTIFICATION_H__ diff --git a/workspace/all/minarch/ma_menu.c b/workspace/all/minarch/ma_menu.c index 5a5c130d0..9bb2ef95b 100644 --- a/workspace/all/minarch/ma_menu.c +++ b/workspace/all/minarch/ma_menu.c @@ -239,6 +239,19 @@ static const rc_client_achievement_t** ach_menu_achievements = NULL; // Flattene static int ach_menu_count = 0; static bool ach_filter_locked_only = false; // Y button toggle: show all or locked only +// Active-challenge achievement ids for the current menu open. Active challenges +// are pinned to the top of the list and flagged with a trophy in the row. +#define ACH_MAX_CHALLENGE 16 +static uint32_t ach_challenge_ids[ACH_MAX_CHALLENGE]; +static int ach_challenge_count = 0; + +static bool ach_is_active_challenge(uint32_t id) { + for (int i = 0; i < ach_challenge_count; i++) { + if (ach_challenge_ids[i] == id) return true; + } + return false; +} + // Achievement sorting comparison function static int ach_compare_unlocked_first(const void* a, const void* b) { const rc_client_achievement_t* achA = *(const rc_client_achievement_t**)a; @@ -544,9 +557,10 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { } ach_menu_count = 0; - // Create achievement list grouped by lock state + // Group by progress so rcheevos surfaces a separate ACTIVE_CHALLENGE bucket + // (achievements whose trigger is currently primed). We pin those to the top. ach_menu_list = (const rc_client_achievement_list_t*)RA_createAchievementList( - RC_CLIENT_ACHIEVEMENT_CATEGORY_CORE, RC_CLIENT_ACHIEVEMENT_LIST_GROUPING_LOCK_STATE); + RC_CLIENT_ACHIEVEMENT_CATEGORY_CORE, RC_CLIENT_ACHIEVEMENT_LIST_GROUPING_PROGRESS); if (!ach_menu_list) { Menu_message("Failed to load achievements", (char*[]){"B","BACK", NULL}); @@ -568,18 +582,41 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { return MENU_CALLBACK_NOP; } - // Create flattened array of all achievement pointers + // Create flattened array of all achievement pointers. + // Two passes so active challenges stay pinned at the top: + // 1. ACTIVE_CHALLENGE bucket entries, in rcheevos' natural order (no sort) + // 2. everything else + // Only the second pass is sorted by the user's chosen order, so the pinned + // challenges remain at the top regardless of sort. const rc_client_achievement_t** all_achievements = calloc(total_achievements, sizeof(rc_client_achievement_t*)); int idx = 0; + ach_challenge_count = 0; + + // Pass 1: pinned active challenges + for (uint32_t b = 0; b < ach_menu_list->num_buckets && idx < total_achievements; b++) { + const rc_client_achievement_bucket_t* bucket = &ach_menu_list->buckets[b]; + if (bucket->bucket_type != RC_CLIENT_ACHIEVEMENT_BUCKET_ACTIVE_CHALLENGE) continue; + for (uint32_t a = 0; a < bucket->num_achievements && idx < total_achievements; a++) { + all_achievements[idx++] = bucket->achievements[a]; + if (ach_challenge_count < ACH_MAX_CHALLENGE) { + ach_challenge_ids[ach_challenge_count++] = bucket->achievements[a]->id; + } + } + } + int challenge_pin_count = idx; + + // Pass 2: all other buckets for (uint32_t b = 0; b < ach_menu_list->num_buckets && idx < total_achievements; b++) { const rc_client_achievement_bucket_t* bucket = &ach_menu_list->buckets[b]; + if (bucket->bucket_type == RC_CLIENT_ACHIEVEMENT_BUCKET_ACTIVE_CHALLENGE) continue; for (uint32_t a = 0; a < bucket->num_achievements && idx < total_achievements; a++) { all_achievements[idx++] = bucket->achievements[a]; } } - // Sort achievements according to settings - ach_sort_achievements(all_achievements, total_achievements); + // Sort only the non-pinned tail according to settings + ach_sort_achievements(all_achievements + challenge_pin_count, + total_achievements - challenge_pin_count); // Custom menu loop with X (mute) and Y (filter) support int dirty = 1; @@ -752,6 +789,7 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { const rc_client_achievement_t* ach = filtered[j]; bool is_muted = RA_isAchievementMuted(ach->id); bool is_offline_pending = RA_isAchievementOfflinePending(ach->id); + bool is_challenge = ach_is_active_challenge(ach->id); bool is_selected = (row == selected_row); SDL_Color text_color = COLOR_WHITE; @@ -784,7 +822,11 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { if (is_offline_pending) { offline_width = SCALE1(12) + SCALE1(4); // wifi-off icon + gap } - int pill_width = opt_pad + badge_display_size + SCALE1(6) + mute_width + offline_width + title_width + opt_pad; + int challenge_width = 0; + if (is_challenge) { + challenge_width = SCALE1(10) + SCALE1(4); // trophy icon + gap + } + int pill_width = opt_pad + badge_display_size + SCALE1(6) + mute_width + offline_width + challenge_width + title_width + opt_pad; GFX_blitPillDark(ASSET_BUTTON, screen, &(SDL_Rect){ ox, oy + SCALE1(row * BUTTON_SIZE), pill_width, row_height @@ -824,6 +866,15 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { text_x += offline_width; } + // Active-challenge trophy prefix + if (is_challenge) { + int trophy_h = SCALE1(11); + int trophy_y = oy + SCALE1(row * BUTTON_SIZE) + (row_height - trophy_h) / 2; + GFX_blitAssetColor(ASSET_TROPHY, NULL, screen, + &(SDL_Rect){text_x, trophy_y}, THEME_COLOR5_255); + text_x += challenge_width; + } + // Title text SDL_Surface* title_text = TTF_RenderUTF8_Blended(font.small, ach->title, text_color); SDL_BlitSurface(title_text, NULL, screen, &(SDL_Rect){ @@ -868,6 +919,15 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { text_x += wifi_size + SCALE1(4); } + // Active-challenge trophy prefix + if (is_challenge) { + int trophy_h = SCALE1(11); + int trophy_y = oy + SCALE1(row * BUTTON_SIZE) + (row_height - trophy_h) / 2; + GFX_blitAssetColor(ASSET_TROPHY, NULL, screen, + &(SDL_Rect){text_x, trophy_y}, RGB_WHITE); + text_x += SCALE1(10) + SCALE1(4); + } + // Title text (white for unselected) SDL_Surface* title_text = TTF_RenderUTF8_Blended(font.small, ach->title, COLOR_WHITE); SDL_BlitSurface(title_text, NULL, screen, &(SDL_Rect){ diff --git a/workspace/all/minarch/ra_integration.c b/workspace/all/minarch/ra_integration.c index 7347e3388..ec64ab66e 100644 --- a/workspace/all/minarch/ra_integration.c +++ b/workspace/all/minarch/ra_integration.c @@ -1317,10 +1317,16 @@ static void ra_event_handler(const rc_client_event_t* event, rc_client_t* client break; case RC_CLIENT_EVENT_ACHIEVEMENT_CHALLENGE_INDICATOR_SHOW: + if (CFG_getRAShowChallengeIndicators()) { + Notification_showChallengeIndicator(event->achievement->id); + } RA_LOG_DEBUG("Challenge started: %s\n", event->achievement->title); break; - + case RC_CLIENT_EVENT_ACHIEVEMENT_CHALLENGE_INDICATOR_HIDE: + // Always hide (even if indicators were toggled off mid-challenge) so a + // stale indicator can't get stuck on screen. + Notification_hideChallengeIndicator(event->achievement->id); RA_LOG_DEBUG("Challenge ended: %s\n", event->achievement->title); break; diff --git a/workspace/all/settings/settings.cpp b/workspace/all/settings/settings.cpp index 7a3eeda49..dccdc9bf3 100644 --- a/workspace/all/settings/settings.cpp +++ b/workspace/all/settings/settings.cpp @@ -882,6 +882,10 @@ int main(int argc, char *argv[]) []() -> std::any { return CFG_getRAShowNotifications(); }, [](const std::any &value) { CFG_setRAShowNotifications(std::any_cast(value)); }, []() { CFG_setRAShowNotifications(CFG_DEFAULT_RA_SHOW_NOTIFICATIONS);}}, + new MenuItem{ListItemType::Generic, "Show Challenge Indicators", "Show a trophy indicator while a challenge achievement is active", {false, true}, on_off, + []() -> std::any { return CFG_getRAShowChallengeIndicators(); }, + [](const std::any &value) { CFG_setRAShowChallengeIndicators(std::any_cast(value)); }, + []() { CFG_setRAShowChallengeIndicators(CFG_DEFAULT_RA_SHOW_CHALLENGE_INDICATORS);}}, new MenuItem{ListItemType::Generic, "Notification Duration", "How long achievement notifications stay on screen", notify_duration_values, notify_duration_labels, []() -> std::any { return CFG_getRANotificationDuration(); }, [](const std::any &value) { CFG_setRANotificationDuration(std::any_cast(value)); }, From 2124726c181f4e47961dc263f4b819c4fe8736f1 Mon Sep 17 00:00:00 2001 From: clintonium-119 Date: Wed, 19 Aug 2026 15:14:24 -0400 Subject: [PATCH 2/2] fix(ra): read challenge state from the achievement bucket The in-game achievement list recorded active-challenge ids into a fixed 16-entry snapshot at menu open and consulted it per row, so rows past the sixteenth lost their trophy glyph even though they still pinned to the top correctly. Every achievement pointer the list hands back already carries a live bucket field, so the snapshot, its cap, and its lookup helper are all redundant. Rows now test bucket directly. --- workspace/all/minarch/ma_menu.c | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/workspace/all/minarch/ma_menu.c b/workspace/all/minarch/ma_menu.c index 9bb2ef95b..85ca4341a 100644 --- a/workspace/all/minarch/ma_menu.c +++ b/workspace/all/minarch/ma_menu.c @@ -239,19 +239,6 @@ static const rc_client_achievement_t** ach_menu_achievements = NULL; // Flattene static int ach_menu_count = 0; static bool ach_filter_locked_only = false; // Y button toggle: show all or locked only -// Active-challenge achievement ids for the current menu open. Active challenges -// are pinned to the top of the list and flagged with a trophy in the row. -#define ACH_MAX_CHALLENGE 16 -static uint32_t ach_challenge_ids[ACH_MAX_CHALLENGE]; -static int ach_challenge_count = 0; - -static bool ach_is_active_challenge(uint32_t id) { - for (int i = 0; i < ach_challenge_count; i++) { - if (ach_challenge_ids[i] == id) return true; - } - return false; -} - // Achievement sorting comparison function static int ach_compare_unlocked_first(const void* a, const void* b) { const rc_client_achievement_t* achA = *(const rc_client_achievement_t**)a; @@ -590,7 +577,6 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { // challenges remain at the top regardless of sort. const rc_client_achievement_t** all_achievements = calloc(total_achievements, sizeof(rc_client_achievement_t*)); int idx = 0; - ach_challenge_count = 0; // Pass 1: pinned active challenges for (uint32_t b = 0; b < ach_menu_list->num_buckets && idx < total_achievements; b++) { @@ -598,9 +584,6 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { if (bucket->bucket_type != RC_CLIENT_ACHIEVEMENT_BUCKET_ACTIVE_CHALLENGE) continue; for (uint32_t a = 0; a < bucket->num_achievements && idx < total_achievements; a++) { all_achievements[idx++] = bucket->achievements[a]; - if (ach_challenge_count < ACH_MAX_CHALLENGE) { - ach_challenge_ids[ach_challenge_count++] = bucket->achievements[a]->id; - } } } int challenge_pin_count = idx; @@ -789,7 +772,7 @@ static int OptionAchievements_openMenu(MenuList* list, int i) { const rc_client_achievement_t* ach = filtered[j]; bool is_muted = RA_isAchievementMuted(ach->id); bool is_offline_pending = RA_isAchievementOfflinePending(ach->id); - bool is_challenge = ach_is_active_challenge(ach->id); + bool is_challenge = ach->bucket == RC_CLIENT_ACHIEVEMENT_BUCKET_ACTIVE_CHALLENGE; bool is_selected = (row == selected_row); SDL_Color text_color = COLOR_WHITE;