diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index ba6de57b23..f49615f723 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -3572,7 +3572,7 @@ MSG_HASH( ) MSG_HASH( MENU_ENUM_SUBLABEL_CHEEVOS_HARDCORE_MODE_ENABLE, - "Enable or disable savestates, cheats, rewind, pause, and slow-motion for all games." + "Enables hardcore mode, this will enable or disable savestates, cheats, rewind, pause, and slow-motion.\nToggling this setting at runtime will restart your game." ) MSG_HASH( MENU_ENUM_SUBLABEL_CHEEVOS_LEADERBOARDS_ENABLE, diff --git a/menu/menu_setting.c b/menu/menu_setting.c index c46ad63d68..5bf9a944d2 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -3021,12 +3021,10 @@ static void achievement_hardcore_mode_write_handler(rarch_setting_t *setting) if (!setting) return; - if (settings && settings->bools.cheevos_hardcore_mode_enable - && cheevos_state_loaded_flag - ) + if (settings && settings->bools.cheevos_enable && settings->bools.cheevos_hardcore_mode_enable) { - cheevos_hardcore_paused = true; - runloop_msg_queue_push(msg_hash_to_str(MSG_CHEEVOS_HARDCORE_MODE_DISABLED), 0, 180, true); + cheevos_toggle_hardcore_mode(); + command_event(CMD_EVENT_RESET, NULL); return; } } @@ -9289,7 +9287,7 @@ static bool setting_append_list( &group_info, &subgroup_info, parent_group, - general_write_handler, + achievement_hardcore_mode_write_handler, general_read_handler, SD_FLAG_NONE );