diff --git a/include/config/pokedex_plus_hgss.h b/include/config/pokedex_plus_hgss.h index 667a4bad50..15abb590f0 100644 --- a/include/config/pokedex_plus_hgss.h +++ b/include/config/pokedex_plus_hgss.h @@ -1,11 +1,12 @@ #ifndef GUARD_CONFIG_POKEDEX_PLUS_HGSS_H #define GUARD_CONFIG_POKEDEX_PLUS_HGSS_H -#define POKEDEX_PLUS_HGSS FALSE // If TRUE, enables the custom HGSS style Pokedex. -#define HGSS_DECAPPED FALSE // If TRUE, uses decapped gfx and strings. -#define HGSS_DARK_MODE FALSE // If TRUE, enables dark mode. -#define HGSS_HIDE_UNSEEN_EVOLUTION_NAMES FALSE // If TRUE, hides evolution mon names. -#define HGSS_SORT_TMS_BY_NUM FALSE // If TRUE, sorts the TMS in HGSS Dex by TM number, rather than alphabetically. -#define HGSS_SHOW_EGG_MOVES_FOR_EVOS FALSE // If TRUE, shows Egg Moves for evolved Pokémon too. +#define POKEDEX_PLUS_HGSS FALSE // If TRUE, enables the custom HGSS style Pokedex. +#define HGSS_DECAPPED FALSE // If TRUE, uses decapped gfx and strings. +#define HGSS_DARK_MODE FALSE // If TRUE, enables dark mode. +#define HGSS_HIDE_UNSEEN_EVOLUTION_NAMES FALSE // If TRUE, hides evolution mon names. +#define HGSS_HIDE_UNOWNED_EVOLUTION_METHODS FALSE // If TRUE, hides evolution methods. +#define HGSS_SORT_TMS_BY_NUM FALSE // If TRUE, sorts the TMS in HGSS Dex by TM number, rather than alphabetically. +#define HGSS_SHOW_EGG_MOVES_FOR_EVOS FALSE // If TRUE, shows Egg Moves for evolved Pokémon too. #endif // GUARD_CONFIG_POKEDEX_PLUS_HGSS_H diff --git a/src/pokedex_plus_hgss.c b/src/pokedex_plus_hgss.c index 938fbf152b..d986ce63af 100644 --- a/src/pokedex_plus_hgss.c +++ b/src/pokedex_plus_hgss.c @@ -6517,38 +6517,45 @@ static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species, u8 dept } } - switch ((enum EvolutionMethods)evolutions[i].method) + bool32 caught = GetSetPokedexFlag(SpeciesToNationalPokedexNum(targetSpecies), FLAG_GET_CAUGHT); + if (HGSS_HIDE_UNOWNED_EVOLUTION_METHODS == TRUE && !caught) { - case EVO_SCRIPT_TRIGGER: - case EVO_NONE: StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("Unknown")); - break; - case EVO_LEVEL: - case EVO_LEVEL_BATTLE_ONLY: - StringCopy(gStringVar4, COMPOUND_STRING("{LV}{UP_ARROW}")); - if (evolutions[i].param > 1) + } + else + { + switch ((enum EvolutionMethods)evolutions[i].method) { - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].param, STR_CONV_MODE_LEFT_ALIGN, EVO_SCREEN_LVL_DIGITS); //level - StringAppend(gStringVar4, gStringVar2); - } - if ((enum EvolutionMethods)evolutions[i].method == EVO_LEVEL_BATTLE_ONLY) - StringAppend(gStringVar4, COMPOUND_STRING(", in battle")); - break; - case EVO_TRADE: - StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("Trading")); - break; - case EVO_ITEM: - CopyItemName(evolutions[i].param, gStringVar2); - StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("{STR_VAR_2} is used")); - break; - case EVO_SPLIT_FROM_EVO: - StringCopy(gStringVar4, COMPOUND_STRING("Splits from ")); - StringAppend(gStringVar4, GetSpeciesName(evolutions[i].param)); //mon name - break; - case EVO_BATTLE_END: - StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("End battle")); - break; - case EVO_SPIN: + case EVO_SCRIPT_TRIGGER: + case EVO_NONE: + StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("Unknown")); + break; + case EVO_LEVEL: + case EVO_LEVEL_BATTLE_ONLY: + StringCopy(gStringVar4, COMPOUND_STRING("{LV}{UP_ARROW}")); + if (evolutions[i].param > 1) + { + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].param, STR_CONV_MODE_LEFT_ALIGN, EVO_SCREEN_LVL_DIGITS); //level + StringAppend(gStringVar4, gStringVar2); + } + if ((enum EvolutionMethods)evolutions[i].method == EVO_LEVEL_BATTLE_ONLY) + StringAppend(gStringVar4, COMPOUND_STRING(", in battle")); + break; + case EVO_TRADE: + StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("Trading")); + break; + case EVO_ITEM: + CopyItemName(evolutions[i].param, gStringVar2); + StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("{STR_VAR_2} is used")); + break; + case EVO_SPLIT_FROM_EVO: + StringCopy(gStringVar4, COMPOUND_STRING("Splits from ")); + StringAppend(gStringVar4, GetSpeciesName(evolutions[i].param)); //mon name + break; + case EVO_BATTLE_END: + StringExpandPlaceholders(gStringVar4, COMPOUND_STRING("End battle")); + break; + case EVO_SPIN: StringCopy(gStringVar4, COMPOUND_STRING("Spin ")); if (evolutions[i].param == SPIN_CW_SHORT) StringAppend(gStringVar4, COMPOUND_STRING("CW <5s")); @@ -6560,186 +6567,186 @@ static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species, u8 dept StringAppend(gStringVar4, COMPOUND_STRING("CCW >5s")); else StringAppend(gStringVar4, COMPOUND_STRING("CW/CCW >10s")); - break; - }//Switch end + break; + }//Switch end - // Check for additional conditions. Skips if there's no additional conditions. - for (j = 0; evolutions[i].params != NULL && evolutions[i].params[j].condition != CONDITIONS_END; j++) - { - if (j == 0) + // Check for additional conditions. Skips if there's no additional conditions. + for (j = 0; evolutions[i].params != NULL && evolutions[i].params[j].condition != CONDITIONS_END; j++) { - StringAppend(gStringVar4, COMPOUND_STRING(", ")); - } + if (j == 0) + { + StringAppend(gStringVar4, COMPOUND_STRING(", ")); + } - switch((enum EvolutionConditions)evolutions[i].params[j].condition) - { - // Gen 2 - case IF_GENDER: - switch(evolutions[i].params[j].arg1) + switch((enum EvolutionConditions)evolutions[i].params[j].condition) { - case MON_MALE: StringAppend(gStringVar4, COMPOUND_STRING("Male")); break; - case MON_FEMALE: StringAppend(gStringVar4, COMPOUND_STRING("Female")); break; - } - break; - case IF_MIN_FRIENDSHIP: - StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}friendship")); - break; - case IF_ATK_GT_DEF: - StringAppend(gStringVar4, COMPOUND_STRING("Atk > Def")); - break; - case IF_ATK_EQ_DEF: - StringAppend(gStringVar4, COMPOUND_STRING("Atk = Def")); - break; - case IF_ATK_LT_DEF: - StringAppend(gStringVar4, COMPOUND_STRING("Atk < Def")); - break; - case IF_TIME: - switch(evolutions[i].params[j].arg1) - { - case TIME_MORNING: StringAppend(gStringVar4, COMPOUND_STRING("Morning")); break; - case TIME_DAY: StringAppend(gStringVar4, COMPOUND_STRING("Day")); break; - case TIME_EVENING: StringAppend(gStringVar4, COMPOUND_STRING("Evening")); break; - case TIME_NIGHT: StringAppend(gStringVar4, COMPOUND_STRING("Night")); break; - } - break; - case IF_NOT_TIME: - switch(evolutions[i].params[j].arg1) - { - case TIME_MORNING: StringAppend(gStringVar4, COMPOUND_STRING("NOT Morning")); break; - case TIME_DAY: StringAppend(gStringVar4, COMPOUND_STRING("NOT Day")); break; - case TIME_EVENING: StringAppend(gStringVar4, COMPOUND_STRING("NOT Evening")); break; - case TIME_NIGHT: StringAppend(gStringVar4, COMPOUND_STRING("Day")); break; // More intuitive than "NOT Night" - } - break; - case IF_HOLD_ITEM: - StringAppend(gStringVar4, COMPOUND_STRING("holds ")); - if (isAlcremie && IsItemSweet(evolutions[i].params[j].arg1)) - { - StringAppend(gStringVar4, COMPOUND_STRING("Sweet")); //item - } - else - { - CopyItemName(evolutions[i].params[j].arg1, gStringVar2); //item - StringAppend(gStringVar4, gStringVar2); - } - break; - // Gen 3 - case IF_PID_UPPER_MODULO_10_GT: - case IF_PID_UPPER_MODULO_10_EQ: - case IF_PID_UPPER_MODULO_10_LT: - arg = evolutions[i].params[j].arg1; - if ((enum EvolutionConditions)evolutions[i].params[j].condition == IF_PID_UPPER_MODULO_10_GT - && arg < 10 && arg >= 0) - arg = 9 - arg; - else if ((enum EvolutionConditions)evolutions[i].params[j].condition == IF_PID_UPPER_MODULO_10_EQ + // Gen 2 + case IF_GENDER: + switch(evolutions[i].params[j].arg1) + { + case MON_MALE: StringAppend(gStringVar4, COMPOUND_STRING("Male")); break; + case MON_FEMALE: StringAppend(gStringVar4, COMPOUND_STRING("Female")); break; + } + break; + case IF_MIN_FRIENDSHIP: + StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}friendship")); + break; + case IF_ATK_GT_DEF: + StringAppend(gStringVar4, COMPOUND_STRING("Atk > Def")); + break; + case IF_ATK_EQ_DEF: + StringAppend(gStringVar4, COMPOUND_STRING("Atk = Def")); + break; + case IF_ATK_LT_DEF: + StringAppend(gStringVar4, COMPOUND_STRING("Atk < Def")); + break; + case IF_TIME: + switch(evolutions[i].params[j].arg1) + { + case TIME_MORNING: StringAppend(gStringVar4, COMPOUND_STRING("Morning")); break; + case TIME_DAY: StringAppend(gStringVar4, COMPOUND_STRING("Day")); break; + case TIME_EVENING: StringAppend(gStringVar4, COMPOUND_STRING("Evening")); break; + case TIME_NIGHT: StringAppend(gStringVar4, COMPOUND_STRING("Night")); break; + } + break; + case IF_NOT_TIME: + switch(evolutions[i].params[j].arg1) + { + case TIME_MORNING: StringAppend(gStringVar4, COMPOUND_STRING("NOT Morning")); break; + case TIME_DAY: StringAppend(gStringVar4, COMPOUND_STRING("NOT Day")); break; + case TIME_EVENING: StringAppend(gStringVar4, COMPOUND_STRING("NOT Evening")); break; + case TIME_NIGHT: StringAppend(gStringVar4, COMPOUND_STRING("Day")); break; // More intuitive than "NOT Night" + } + break; + case IF_HOLD_ITEM: + StringAppend(gStringVar4, COMPOUND_STRING("holds ")); + if (isAlcremie && IsItemSweet(evolutions[i].params[j].arg1)) + { + StringAppend(gStringVar4, COMPOUND_STRING("Sweet")); //item + } + else + { + CopyItemName(evolutions[i].params[j].arg1, gStringVar2); //item + StringAppend(gStringVar4, gStringVar2); + } + break; + // Gen 3 + case IF_PID_UPPER_MODULO_10_GT: + case IF_PID_UPPER_MODULO_10_EQ: + case IF_PID_UPPER_MODULO_10_LT: + arg = evolutions[i].params[j].arg1; + if ((enum EvolutionConditions)evolutions[i].params[j].condition == IF_PID_UPPER_MODULO_10_GT + && arg < 10 && arg >= 0) + arg = 9 - arg; + else if ((enum EvolutionConditions)evolutions[i].params[j].condition == IF_PID_UPPER_MODULO_10_EQ && arg < 10 && arg >= 0) - arg = 1; - ConvertIntToDecimalStringN(gStringVar2, arg * 10, STR_CONV_MODE_LEFT_ALIGN, 3); - StringAppend(gStringVar4, COMPOUND_STRING("random %")); - StringAppend(gStringVar4, gStringVar2); - break; - case IF_MIN_BEAUTY: - StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}beauty")); - break; - case IF_MIN_COOLNESS: - StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}coolness")); - break; - case IF_MIN_SMARTNESS: - StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}smartness")); - break; - case IF_MIN_TOUGHNESS: - StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}toughness")); - break; - case IF_MIN_CUTENESS: - StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}cuteness")); - break; - // Gen 4 - case IF_SPECIES_IN_PARTY: - StringAppend(gStringVar4, GetSpeciesName(evolutions[i].params[j].arg1)); //mon name - StringAppend(gStringVar4, COMPOUND_STRING(" in party")); - break; - case IF_IN_MAPSEC: - StringAppend(gStringVar4, COMPOUND_STRING("in ")); - StringCopy(gStringVar2, gRegionMapEntries[evolutions[i].params[j].arg1].name); - StringAppend(gStringVar4, gStringVar2); - break; - case IF_IN_MAP: - StringAppend(gStringVar4, COMPOUND_STRING("in ")); - GetMapName(gStringVar2, Overworld_GetMapHeaderByGroupAndId(evolutions[i].params[j].arg1 >> 8, evolutions[i].params[j].arg1 & 0xFF)->regionMapSectionId, 0); - StringAppend(gStringVar4, gStringVar2); - break; - case IF_KNOWS_MOVE: - StringAppend(gStringVar4, COMPOUND_STRING("knows ")); - StringAppend(gStringVar4, GetMoveName(evolutions[i].params[j].arg1)); - break; - // Gen 5 - case IF_TRADE_PARTNER_SPECIES: - StringAppend(gStringVar4, COMPOUND_STRING("traded with ")); - StringAppend(gStringVar4, GetSpeciesName(evolutions[i].params[j].arg1)); - break; - // Gen 6 - case IF_TYPE_IN_PARTY: - StringAppend(gStringVar4, gTypesInfo[evolutions[i].params[j].arg1].name); //type name - StringAppend(gStringVar4, COMPOUND_STRING("-type in party")); - break; - case IF_WEATHER: - StringAppend(gStringVar4, COMPOUND_STRING("weather ")); - StringAppend(gStringVar4, GetWeatherName(evolutions[i].params[j].arg1)); - break; - case IF_KNOWS_MOVE_TYPE: - StringAppend(gStringVar4, gTypesInfo[evolutions[i].params[j].arg1].name); - StringAppend(gStringVar4, COMPOUND_STRING(" move")); - break; - // Gen 8 - case IF_NATURE: - StringCopy(gStringVar2, gNaturesInfo[evolutions[i].params[j].arg1].name); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" nature")); - break; - case IF_AMPED_NATURE: - StringAppend(gStringVar4, COMPOUND_STRING("amped natures")); - break; - case IF_LOW_KEY_NATURE: - StringAppend(gStringVar4, COMPOUND_STRING("low-Key natures")); - break; - case IF_RECOIL_DAMAGE_GE: - StringAppend(gStringVar4, COMPOUND_STRING("takes >= ")); - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 3); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" recoil dmg")); - break; - case IF_CURRENT_DAMAGE_GE: - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 3); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" current dmg")); - break; - case IF_CRITICAL_HITS_GE: - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 2); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" critical hits")); - break; - case IF_USED_MOVE_X_TIMES: - StringAppend(gStringVar4, COMPOUND_STRING("use move ")); - StringAppend(gStringVar4, GetMoveName(evolutions[i].params[j].arg1)); - StringAppend(gStringVar4, COMPOUND_STRING(" ")); - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg2, STR_CONV_MODE_LEFT_ALIGN, 3); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" times")); - break; - // Gen 9 - case IF_DEFEAT_X_WITH_ITEMS: - StringAppend(gStringVar4, COMPOUND_STRING("defeat ")); - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg3, STR_CONV_MODE_LEFT_ALIGN, 3); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" ")); - StringAppend(gStringVar4, GetSpeciesName(evolutions[i].params[j].arg1)); - StringAppend(gStringVar4, COMPOUND_STRING(" that hold ")); - CopyItemName(evolutions[i].params[j].arg2, gStringVar2); - StringAppend(gStringVar4, gStringVar2); - break; - case IF_PID_MODULO_100_GT: - case IF_PID_MODULO_100_EQ: - case IF_PID_MODULO_100_LT: + arg = 1; + ConvertIntToDecimalStringN(gStringVar2, arg * 10, STR_CONV_MODE_LEFT_ALIGN, 3); + StringAppend(gStringVar4, COMPOUND_STRING("random %")); + StringAppend(gStringVar4, gStringVar2); + break; + case IF_MIN_BEAUTY: + StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}beauty")); + break; + case IF_MIN_COOLNESS: + StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}coolness")); + break; + case IF_MIN_SMARTNESS: + StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}smartness")); + break; + case IF_MIN_TOUGHNESS: + StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}toughness")); + break; + case IF_MIN_CUTENESS: + StringAppend(gStringVar4, COMPOUND_STRING("{UP_ARROW_2}cuteness")); + break; + // Gen 4 + case IF_SPECIES_IN_PARTY: + StringAppend(gStringVar4, GetSpeciesName(evolutions[i].params[j].arg1)); //mon name + StringAppend(gStringVar4, COMPOUND_STRING(" in party")); + break; + case IF_IN_MAPSEC: + StringAppend(gStringVar4, COMPOUND_STRING("in ")); + StringCopy(gStringVar2, gRegionMapEntries[evolutions[i].params[j].arg1].name); + StringAppend(gStringVar4, gStringVar2); + break; + case IF_IN_MAP: + StringAppend(gStringVar4, COMPOUND_STRING("in ")); + GetMapName(gStringVar2, Overworld_GetMapHeaderByGroupAndId(evolutions[i].params[j].arg1 >> 8, evolutions[i].params[j].arg1 & 0xFF)->regionMapSectionId, 0); + StringAppend(gStringVar4, gStringVar2); + break; + case IF_KNOWS_MOVE: + StringAppend(gStringVar4, COMPOUND_STRING("knows ")); + StringAppend(gStringVar4, GetMoveName(evolutions[i].params[j].arg1)); + break; + // Gen 5 + case IF_TRADE_PARTNER_SPECIES: + StringAppend(gStringVar4, COMPOUND_STRING("traded with ")); + StringAppend(gStringVar4, GetSpeciesName(evolutions[i].params[j].arg1)); + break; + // Gen 6 + case IF_TYPE_IN_PARTY: + StringAppend(gStringVar4, gTypesInfo[evolutions[i].params[j].arg1].name); //type name + StringAppend(gStringVar4, COMPOUND_STRING("-type in party")); + break; + case IF_WEATHER: + StringAppend(gStringVar4, COMPOUND_STRING("weather ")); + StringAppend(gStringVar4, GetWeatherName(evolutions[i].params[j].arg1)); + break; + case IF_KNOWS_MOVE_TYPE: + StringAppend(gStringVar4, gTypesInfo[evolutions[i].params[j].arg1].name); + StringAppend(gStringVar4, COMPOUND_STRING(" move")); + break; + // Gen 8 + case IF_NATURE: + StringCopy(gStringVar2, gNaturesInfo[evolutions[i].params[j].arg1].name); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" nature")); + break; + case IF_AMPED_NATURE: + StringAppend(gStringVar4, COMPOUND_STRING("amped natures")); + break; + case IF_LOW_KEY_NATURE: + StringAppend(gStringVar4, COMPOUND_STRING("low-Key natures")); + break; + case IF_RECOIL_DAMAGE_GE: + StringAppend(gStringVar4, COMPOUND_STRING("takes >= ")); + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 3); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" recoil dmg")); + break; + case IF_CURRENT_DAMAGE_GE: + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 3); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" current dmg")); + break; + case IF_CRITICAL_HITS_GE: + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 2); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" critical hits")); + break; + case IF_USED_MOVE_X_TIMES: + StringAppend(gStringVar4, COMPOUND_STRING("use move ")); + StringAppend(gStringVar4, GetMoveName(evolutions[i].params[j].arg1)); + StringAppend(gStringVar4, COMPOUND_STRING(" ")); + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg2, STR_CONV_MODE_LEFT_ALIGN, 3); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" times")); + break; + // Gen 9 + case IF_DEFEAT_X_WITH_ITEMS: + StringAppend(gStringVar4, COMPOUND_STRING("defeat ")); + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg3, STR_CONV_MODE_LEFT_ALIGN, 3); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" ")); + StringAppend(gStringVar4, GetSpeciesName(evolutions[i].params[j].arg1)); + StringAppend(gStringVar4, COMPOUND_STRING(" that hold ")); + CopyItemName(evolutions[i].params[j].arg2, gStringVar2); + StringAppend(gStringVar4, gStringVar2); + break; + case IF_PID_MODULO_100_GT: + case IF_PID_MODULO_100_EQ: + case IF_PID_MODULO_100_LT: arg = evolutions[i].params[j].arg1; if ((enum EvolutionConditions)evolutions[i].params[j].condition == IF_PID_MODULO_100_GT && arg < 100 && arg >= 0) @@ -6750,28 +6757,29 @@ static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species, u8 dept ConvertIntToDecimalStringN(gStringVar2, arg, STR_CONV_MODE_LEFT_ALIGN, 3); StringAppend(gStringVar4, COMPOUND_STRING("%")); StringAppend(gStringVar4, gStringVar2); - break; - case IF_MIN_OVERWORLD_STEPS: - StringAppend(gStringVar4, COMPOUND_STRING("after ")); - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 4); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" steps")); - break; - case IF_BAG_ITEM_COUNT: - ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg2, STR_CONV_MODE_LEFT_ALIGN, 3); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" ")); - CopyItemNameHandlePlural(evolutions[i].params[j].arg1, gStringVar2, evolutions[i].params[j].arg2); - StringAppend(gStringVar4, gStringVar2); - StringAppend(gStringVar4, COMPOUND_STRING(" in bag")); - break; - case CONDITIONS_END: - break; - } + break; + case IF_MIN_OVERWORLD_STEPS: + StringAppend(gStringVar4, COMPOUND_STRING("after ")); + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg1, STR_CONV_MODE_LEFT_ALIGN, 4); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" steps")); + break; + case IF_BAG_ITEM_COUNT: + ConvertIntToDecimalStringN(gStringVar2, evolutions[i].params[j].arg2, STR_CONV_MODE_LEFT_ALIGN, 3); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" ")); + CopyItemNameHandlePlural(evolutions[i].params[j].arg1, gStringVar2, evolutions[i].params[j].arg2); + StringAppend(gStringVar4, gStringVar2); + StringAppend(gStringVar4, COMPOUND_STRING(" in bag")); + break; + case CONDITIONS_END: + break; + } - if (evolutions[i].params[j+1].condition != CONDITIONS_END) - { - StringAppend(gStringVar4, COMPOUND_STRING(", ")); + if (evolutions[i].params[j+1].condition != CONDITIONS_END) + { + StringAppend(gStringVar4, COMPOUND_STRING(", ")); + } } }