diff --git a/config.def.h b/config.def.h index cc2ac387b8..813eebf9b5 100644 --- a/config.def.h +++ b/config.def.h @@ -197,6 +197,7 @@ #define DEFAULT_CHEEVOS_VISIBILITY_LBOARD_SUBMIT true #define DEFAULT_CHEEVOS_VISIBILITY_LBOARD_CANCEL true #define DEFAULT_CHEEVOS_VISIBILITY_LBOARD_TRACKERS true +#define DEFAULT_CHEEVOS_VISIBILITY_PROGRESS_TRACKER true #endif /* VIDEO */ diff --git a/configuration.c b/configuration.c index c8a836ee5d..8340898de1 100644 --- a/configuration.c +++ b/configuration.c @@ -1968,6 +1968,7 @@ static struct config_bool_setting *populate_settings_bool( SETTING_BOOL("cheevos_visibility_lboard_submit", &settings->bools.cheevos_visibility_lboard_submit, true, DEFAULT_CHEEVOS_VISIBILITY_LBOARD_SUBMIT, false); SETTING_BOOL("cheevos_visibility_lboard_cancel", &settings->bools.cheevos_visibility_lboard_cancel, true, DEFAULT_CHEEVOS_VISIBILITY_LBOARD_CANCEL, false); SETTING_BOOL("cheevos_visibility_lboard_trackers", &settings->bools.cheevos_visibility_lboard_trackers, true, DEFAULT_CHEEVOS_VISIBILITY_LBOARD_TRACKERS, false); + SETTING_BOOL("cheevos_visibility_progress_tracker", &settings->bools.cheevos_visibility_progress_tracker, true, DEFAULT_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, false); #endif #ifdef HAVE_OVERLAY SETTING_BOOL("input_overlay_enable", &settings->bools.input_overlay_enable, true, config_overlay_enable_default(), false); diff --git a/configuration.h b/configuration.h index cf23988e81..78f8903d64 100644 --- a/configuration.h +++ b/configuration.h @@ -834,6 +834,7 @@ typedef struct settings bool cheevos_visibility_lboard_submit; bool cheevos_visibility_lboard_cancel; bool cheevos_visibility_lboard_trackers; + bool cheevos_visibility_progress_tracker; /* Camera */ bool camera_allow; diff --git a/intl/msg_hash_lbl.h b/intl/msg_hash_lbl.h index 12d4f1dd83..f29e1acc6a 100644 --- a/intl/msg_hash_lbl.h +++ b/intl/msg_hash_lbl.h @@ -627,6 +627,10 @@ MSG_HASH( MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_LBOARD_TRACKERS, "cheevos_visibility_lboard_trackers" ) +MSG_HASH( + MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, + "cheevos_visibility_progress_tracker" + ) MSG_HASH( MENU_ENUM_LABEL_CLOSE_CONTENT, "unload_core" diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index 429d796172..d984796d37 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -6552,6 +6552,14 @@ MSG_HASH( MENU_ENUM_SUBLABEL_CHEEVOS_CHALLENGE_INDICATORS, "Shows on-screen indicators while certain achievements can be earned." ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, + "Progress Indicator" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, + "Shows an on-screen indicator when progress is made towards certain achievements." + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_LBOARD_START, "Leaderboard Start Messages" diff --git a/menu/cbs/menu_cbs_sublabel.c b/menu/cbs/menu_cbs_sublabel.c index 18c4427957..794b5e92e0 100644 --- a/menu/cbs/menu_cbs_sublabel.c +++ b/menu/cbs/menu_cbs_sublabel.c @@ -319,6 +319,7 @@ DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_cheevos_visibility_lboard_start, MEN DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_cheevos_visibility_lboard_submit, MENU_ENUM_SUBLABEL_CHEEVOS_VISIBILITY_LBOARD_SUBMIT) DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_cheevos_visibility_lboard_cancel, MENU_ENUM_SUBLABEL_CHEEVOS_VISIBILITY_LBOARD_CANCEL) DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_cheevos_visibility_lboard_trackers, MENU_ENUM_SUBLABEL_CHEEVOS_VISIBILITY_LBOARD_TRACKERS) +DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_cheevos_visibility_progress_tracker, MENU_ENUM_SUBLABEL_CHEEVOS_VISIBILITY_PROGRESS_TRACKER) #endif DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_views_settings_list, MENU_ENUM_SUBLABEL_MENU_VIEWS_SETTINGS) @@ -4434,6 +4435,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs, case MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_ACCOUNT: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_cheevos_visibility_account); break; + case MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_PROGRESS_TRACKER: + BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_cheevos_visibility_progress_tracker); + break; case MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_LBOARD_START: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_cheevos_visibility_lboard_start); break; diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index d068017cb2..0bb09c1d59 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -8765,6 +8765,7 @@ unsigned menu_displaylist_build_list( {MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_UNLOCK, PARSE_ONLY_BOOL, true}, {MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_MASTERY, PARSE_ONLY_BOOL, true}, {MENU_ENUM_LABEL_CHEEVOS_CHALLENGE_INDICATORS, PARSE_ONLY_BOOL, true}, + {MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, PARSE_ONLY_BOOL, true}, {MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_LBOARD_START, PARSE_ONLY_BOOL, true}, {MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_LBOARD_SUBMIT, PARSE_ONLY_BOOL, true}, {MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_LBOARD_CANCEL, PARSE_ONLY_BOOL, true}, diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 8a4ff82e90..c7369c3c15 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -20199,6 +20199,22 @@ static bool setting_append_list( SD_FLAG_NONE ); + CONFIG_BOOL( + list, list_info, + &settings->bools.cheevos_visibility_progress_tracker, + MENU_ENUM_LABEL_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, + MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, + DEFAULT_CHEEVOS_VISIBILITY_PROGRESS_TRACKER, + MENU_ENUM_LABEL_VALUE_OFF, + MENU_ENUM_LABEL_VALUE_ON, + &group_info, + &subgroup_info, + parent_group, + general_write_handler, + general_read_handler, + SD_FLAG_NONE + ); + CONFIG_BOOL( list, list_info, &settings->bools.cheevos_visibility_lboard_start, diff --git a/msg_hash.h b/msg_hash.h index b81f0123a9..548e47197b 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -1761,6 +1761,7 @@ enum msg_hash_enums MENU_LABEL(CHEEVOS_VISIBILITY_LBOARD_SUBMIT), MENU_LABEL(CHEEVOS_VISIBILITY_LBOARD_CANCEL), MENU_LABEL(CHEEVOS_VISIBILITY_LBOARD_TRACKERS), + MENU_LABEL(CHEEVOS_VISIBILITY_PROGRESS_TRACKER), MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_SUMMARY_ALLGAMES, MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_SUMMARY_HASCHEEVOS,