From 73cc40fd030edaf5cd8a64e0eabfff2f66819b43 Mon Sep 17 00:00:00 2001 From: TheXaman Date: Sat, 12 Jun 2021 19:52:43 +0200 Subject: [PATCH] Egg cycles now with icons insteat of numbers --- charmap.txt | 1 + graphics/fonts/font0_latin.png | Bin 3115 -> 3665 bytes graphics/fonts/font0_latin_widths.inc | 2 +- include/strings.h | 4 ++ src/pokedex.c | 55 ++++++++++++++++++-------- src/strings.c | 4 ++ 6 files changed, 48 insertions(+), 18 deletions(-) diff --git a/charmap.txt b/charmap.txt index ca4db0fc73..25e61acf21 100644 --- a/charmap.txt +++ b/charmap.txt @@ -151,6 +151,7 @@ SUPER_RE = A0 'ä' = F4 'ö' = F5 'ü' = F6 +EMOJI_DIZZYEGG = F7 TALL_PLUS = FC 0C FB '$' = FF diff --git a/graphics/fonts/font0_latin.png b/graphics/fonts/font0_latin.png index 55ed43506050e1b98ad0397af077eb1cc530cd3b..371cd5a9684dbb02da670b7f02e3b6d80f72cb33 100644 GIT binary patch literal 3665 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 IUFXFA055H-fdBvi literal 3115 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 FV1gh6s>=WX diff --git a/graphics/fonts/font0_latin_widths.inc b/graphics/fonts/font0_latin_widths.inc index 2392e97179..70609d07d7 100644 --- a/graphics/fonts/font0_latin_widths.inc +++ b/graphics/fonts/font0_latin_widths.inc @@ -13,7 +13,7 @@ .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5 .byte 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 5, 5 .byte 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8 - .byte 7, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3 + .byte 7, 5, 5, 5, 5, 5, 5, 9, 3, 3, 3, 3, 3, 3, 3, 3 .byte 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 .byte 8, 8, 8, 8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3 .byte 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 diff --git a/include/strings.h b/include/strings.h index 1e7f01190c..698ea84712 100644 --- a/include/strings.h +++ b/include/strings.h @@ -564,6 +564,10 @@ extern const u8 gText_Stats_Gender_100[]; extern const u8 gText_Stats_Catch[]; extern const u8 gText_Stats_ExpYield[]; extern const u8 gText_Stats_EggCycles[]; +extern const u8 gText_Stats_EggCycles_VeryFast[]; +extern const u8 gText_Stats_EggCycles_Fast[]; +extern const u8 gText_Stats_EggCycles_Normal[]; +extern const u8 gText_Stats_EggCycles_Slow[]; extern const u8 gText_Stats_Growthrate[]; extern const u8 gText_Stats_Friendship[]; extern const u8 gText_Stats_Friendship_BigAnger[]; diff --git a/src/pokedex.c b/src/pokedex.c index 5798c86f6a..9ccefd9c87 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -6833,7 +6833,7 @@ static void PrintMonStatsToggle(u8 taskId) if (gTasks[taskId].data[5] == 0) { - //Exp + //Exp Yield PrintInfoScreenTextSmall(gText_Stats_ExpYield, base_x, base_y + base_offset*base_i); ConvertIntToDecimalStringN(gStringVar1, gBaseStats[species].expYield, STR_CONV_MODE_RIGHT_ALIGN, 3); PrintInfoScreenTextSmall(gStringVar1, base_x + base_x_offset, base_y + base_offset*base_i); @@ -6867,20 +6867,6 @@ static void PrintMonStatsToggle(u8 taskId) PrintInfoScreenTextSmall(strEV, align_x, base_y + base_offset*base_i); base_i++; - //Egg cycles - if (gBaseStats[species].eggGroup1 == EGG_GROUP_UNDISCOVERED || gBaseStats[species].eggGroup2 == EGG_GROUP_UNDISCOVERED) - { - PrintInfoScreenTextSmall(gText_Stats_EggCycles, base_x, base_y + base_offset*base_i); - PrintInfoScreenTextSmall(gText_ThreeDashes, 78, base_y + base_offset*base_i); - } - else - { - PrintInfoScreenTextSmall(gText_Stats_EggCycles, base_x, base_y + base_offset*base_i); - ConvertIntToDecimalStringN(strEV, gBaseStats[species].eggCycles, STR_CONV_MODE_RIGHT_ALIGN, 2); - align_x = GetStringRightAlignXOffset(0, strEV, total_x); - PrintInfoScreenTextSmall(strEV, align_x, base_y + base_offset*base_i); - } - base_i++; //Catch rate PrintInfoScreenTextSmall(gText_Stats_Catch, base_x, base_y + base_offset*base_i); @@ -6969,7 +6955,8 @@ static void PrintMonStatsToggle(u8 taskId) StringCopy(gStringVar1, gText_Stats_eggGroup_UNDISCOVERED); break; } - PrintInfoScreenTextSmall(gStringVar1, base_x + 37, base_y + base_offset*base_i); + align_x = GetStringRightAlignXOffset(0, gStringVar1, total_x); + PrintInfoScreenTextSmall(gStringVar1, align_x, base_y + base_offset*base_i); base_i++; //Egg group 2 @@ -7022,7 +7009,41 @@ static void PrintMonStatsToggle(u8 taskId) StringCopy(gStringVar1, gText_Stats_eggGroup_UNDISCOVERED); break; } - PrintInfoScreenTextSmall(gStringVar1, base_x + 37, base_y + base_offset*base_i); + align_x = GetStringRightAlignXOffset(0, gStringVar1, total_x); + PrintInfoScreenTextSmall(gStringVar1, align_x, base_y + base_offset*base_i); + base_i++; + + //Egg cycles + if (gBaseStats[species].eggGroup1 == EGG_GROUP_UNDISCOVERED || gBaseStats[species].eggGroup2 == EGG_GROUP_UNDISCOVERED) //Species without eggs (legendaries etc) + { + PrintInfoScreenTextSmall(gText_Stats_EggCycles, base_x, base_y + base_offset*base_i); + PrintInfoScreenTextSmall(gText_ThreeDashes, 78, base_y + base_offset*base_i); + } + else + { + PrintInfoScreenTextSmall(gText_Stats_EggCycles, base_x, base_y + base_offset*base_i); + if (gBaseStats[species].eggCycles <= 10) + { + StringCopy(strEV, gText_Stats_EggCycles_VeryFast); + align_x = 76; + } + else if (gBaseStats[species].eggCycles <= 20) + { + StringCopy(strEV, gText_Stats_EggCycles_Fast); + align_x = 85; + } + else if (gBaseStats[species].eggCycles <= 30) + { + StringCopy(strEV, gText_Stats_EggCycles_Normal); + align_x = 76; + } + else + { + StringCopy(strEV, gText_Stats_EggCycles_Slow); + align_x = 67; + } + PrintInfoScreenTextSmall(strEV, align_x, base_y + base_offset*base_i); + } } diff --git a/src/strings.c b/src/strings.c index 1537e61a0d..2e9d04e386 100644 --- a/src/strings.c +++ b/src/strings.c @@ -1851,6 +1851,10 @@ const u8 gText_Stats_Gender_100[] = _("♀"); const u8 gText_Stats_Catch[] = _("CATCH RATE: "); const u8 gText_Stats_ExpYield[] = _("EXP YIELD: "); const u8 gText_Stats_EggCycles[] = _("EGG CYCLES: "); +const u8 gText_Stats_EggCycles_VeryFast[] = _("{EMOJI_BOLT}{EMOJI_DIZZYEGG}"); +const u8 gText_Stats_EggCycles_Fast[] = _("{EMOJI_DIZZYEGG}"); +const u8 gText_Stats_EggCycles_Normal[] = _("{EMOJI_DIZZYEGG}{EMOJI_DIZZYEGG}"); +const u8 gText_Stats_EggCycles_Slow[] = _("{EMOJI_DIZZYEGG}{EMOJI_DIZZYEGG}{EMOJI_DIZZYEGG}"); const u8 gText_Stats_Growthrate[] = _("GROW: "); const u8 gText_Stats_Friendship[] = _("FRIENDSHIP:" ); const u8 gText_Stats_Friendship_BigAnger[] = _("{EMOJI_BIGANGER}");