diff options
author | PikalaxALT <PikalaxALT@users.noreply.github.com> | 2019-08-04 11:04:31 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-04 11:04:31 -0400 |
commit | 0e4c9fb2c4d5d069073603f56607bfec394fe62f (patch) | |
tree | ca1563a66a82d87345672d13946258a37b091e52 /src/battle_gfx_sfx_util.c | |
parent | ce941e6f56803b389c20a52c0a5b89f5ade12b7a (diff) | |
parent | bb7e5ecc190b8fe944ba7742e29be721e38a18e3 (diff) |
Merge pull request #757 from DizzyEggg/pok_jump
Decompile pokemon jump + some non/fake matches
Diffstat (limited to 'src/battle_gfx_sfx_util.c')
-rw-r--r-- | src/battle_gfx_sfx_util.c | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index c98713fc3..cdd7e8158 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -945,10 +945,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite) { - u8 position; - s32 i; - u32 var; - const void *substitutePal; + s32 i, position, palOffset; if (!loadMonSprite) { @@ -964,19 +961,16 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite) else LZDecompressVram(gSubstituteDollTilemap, gMonSpritesGfxPtr->sprites[position]); - i = 1; - var = battlerId * 16; - substitutePal = gSubstituteDollPal; - for (; i < 4; i++) + for (i = 1; i < 4; i++) { - register void *dmaSrc asm("r0") = gMonSpritesGfxPtr->sprites[position]; - void *dmaDst = (i * 0x800) + dmaSrc; - u32 dmaSize = 0x800; - DmaCopy32(3, dmaSrc, dmaDst, dmaSize); - i++;i--; + u8 (*ptr)[4][0x800] = gMonSpritesGfxPtr->sprites[position]; + ptr++;ptr--; // Needed to match. + + DmaCopy32Defvars(3, (*ptr)[0], (*ptr)[i], 0x800); } - LoadCompressedPalette(substitutePal, 0x100 + var, 32); + palOffset = (battlerId * 16) + 0x100; + LoadCompressedPalette(gSubstituteDollPal, palOffset, 32); } else { |