diff options
author | PikalaxALT <PikalaxALT@users.noreply.github.com> | 2021-04-19 06:01:35 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-19 06:01:35 -0400 |
commit | 35cf80b7eac2f80d2bb97f0e52152c6c35939fd2 (patch) | |
tree | 62a756c24ab59a65c7d463b1a28a383812cb5f3c /src/help_system_util.c | |
parent | 918ed2d31eeeb036230d0912cc2527b83788bc85 (diff) | |
parent | 1f194a4169c0694dbc036cad7e411db15606f9f8 (diff) |
Merge pull request #418 from Kurausukun/helpsys
Fix 2 Fakematchings
Diffstat (limited to 'src/help_system_util.c')
-rw-r--r-- | src/help_system_util.c | 36 |
1 files changed, 14 insertions, 22 deletions
diff --git a/src/help_system_util.c b/src/help_system_util.c index cd7bd1acf..f23bbbcff 100644 --- a/src/help_system_util.c +++ b/src/help_system_util.c @@ -400,7 +400,8 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid case PLACEHOLDER_BEGIN: curChar = *src; src++; - if (curChar == PLACEHOLDER_ID_PLAYER) { + if (curChar == PLACEHOLDER_ID_PLAYER) + { for (i = 0; i < 10; i++) { if (gSaveBlock2Ptr->playerName[i] == EOS) @@ -477,42 +478,33 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid case EXT_CTRL_CODE_SHIFT_RIGHT: case EXT_CTRL_CODE_SHIFT_DOWN: src++; + case EXT_CTRL_CODE_RESET_FONT: + case EXT_CTRL_CODE_WAIT_BUTTON: + case EXT_CTRL_CODE_WAIT_SE: + case EXT_CTRL_CODE_FILL_WINDOW: + break; + case EXT_CTRL_CODE_CLEAR: + case EXT_CTRL_CODE_SKIP: + src++; break; case EXT_CTRL_CODE_CLEAR_TO: { -#ifdef NONMATCHING - curChar = *src; - clearPixels = curChar + orig_x - x; -#else // dumb fakematch - s32 r0; - register const u8 * _src asm("r2") = src; - asm("":::"r1"); - r0 = *_src; - r0 += orig_x; - clearPixels = r0 - x; -#endif + clearPixels = *src + orig_x - x; + if (clearPixels > 0) { destBlit.pixels = dest; destBlit.width = width * 8; destBlit.height = height * 8; - FillBitmapRect4Bit(&destBlit, x, y, clearPixels, GetFontAttribute(font, FONTATTR_MAX_LETTER_HEIGHT), - 0); + FillBitmapRect4Bit(&destBlit, x, y, clearPixels, GetFontAttribute(font, FONTATTR_MAX_LETTER_HEIGHT), 0); x += clearPixels; } src++; break; } - case EXT_CTRL_CODE_CLEAR: - case EXT_CTRL_CODE_SKIP: case EXT_CTRL_CODE_MIN_LETTER_SPACING: src++; break; - case EXT_CTRL_CODE_RESET_FONT: - case EXT_CTRL_CODE_WAIT_BUTTON: - case EXT_CTRL_CODE_WAIT_SE: - case EXT_CTRL_CODE_FILL_WINDOW: - break; case EXT_CTRL_CODE_JPN: case EXT_CTRL_CODE_ENG: break; @@ -521,7 +513,7 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid case CHAR_KEYPAD_ICON: curChar = *src; src++; - srcBlit.pixels = (u8 *)gKeypadIconTiles + 0x20 * GetKeypadIconTileOffset(curChar); + srcBlit.pixels = (u8 *)&gKeypadIconTiles[0x20 * GetKeypadIconTileOffset(curChar)]; srcBlit.width = 0x80; srcBlit.height = 0x80; destBlit.pixels = dest; |