diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index cbcad81a7a..df819d8a24 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -6914,6 +6914,14 @@ MSG_HASH( MENU_ENUM_LABEL_RUMBLE_TYPE_GT_VALUE, "> Rumble Value" ) +MSG_HASH( + MENU_ENUM_LABEL_RUMBLE_TYPE_INCREASE_BY_VALUE, + "Increases by Rumble Value" + ) +MSG_HASH( + MENU_ENUM_LABEL_RUMBLE_TYPE_DECREASE_BY_VALUE, + "Decreases by Rumble Value" + ) MSG_HASH( MENU_ENUM_LABEL_CHEAT_MEMORY_SIZE_1, "1-bit, max value = 0x01" diff --git a/managers/cheat_manager.c b/managers/cheat_manager.c index df087cab82..b8c2c28a72 100644 --- a/managers/cheat_manager.c +++ b/managers/cheat_manager.c @@ -1067,6 +1067,12 @@ void cheat_manager_apply_rumble(struct item_cheat *cheat, unsigned int curr_valu case RUMBLE_TYPE_GT_VALUE: rumble = (curr_value > cheat->rumble_value) ; break; + case RUMBLE_TYPE_INCREASE_BY_VALUE: + rumble = (curr_value == cheat->rumble_prev_value + cheat->rumble_value) ; + break ; + case RUMBLE_TYPE_DECREASE_BY_VALUE: + rumble = (curr_value == cheat->rumble_prev_value - cheat->rumble_value) ; + break ; } cheat->rumble_prev_value = curr_value ; diff --git a/managers/cheat_manager.h b/managers/cheat_manager.h index baf2d4e1ee..aadcc05a73 100644 --- a/managers/cheat_manager.h +++ b/managers/cheat_manager.h @@ -73,7 +73,9 @@ enum cheat_rumble_type RUMBLE_TYPE_EQ_VALUE, RUMBLE_TYPE_NEQ_VALUE, RUMBLE_TYPE_LT_VALUE, - RUMBLE_TYPE_GT_VALUE + RUMBLE_TYPE_GT_VALUE, + RUMBLE_TYPE_INCREASE_BY_VALUE, + RUMBLE_TYPE_DECREASE_BY_VALUE }; #define CHEAT_CODE_SCRATCH_SIZE 100 diff --git a/msg_hash.h b/msg_hash.h index 45206881aa..46e316508b 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -2054,6 +2054,8 @@ enum msg_hash_enums MENU_ENUM_LABEL_RUMBLE_TYPE_NEQ_VALUE, MENU_ENUM_LABEL_RUMBLE_TYPE_LT_VALUE, MENU_ENUM_LABEL_RUMBLE_TYPE_GT_VALUE, + MENU_ENUM_LABEL_RUMBLE_TYPE_INCREASE_BY_VALUE, + MENU_ENUM_LABEL_RUMBLE_TYPE_DECREASE_BY_VALUE, MENU_ENUM_LABEL_CHEAT_MEMORY_SIZE_1, MENU_ENUM_LABEL_CHEAT_MEMORY_SIZE_2, MENU_ENUM_LABEL_CHEAT_MEMORY_SIZE_4,