From 3849f7dd5d224fd368b0633d9566dc76a82a734a Mon Sep 17 00:00:00 2001 From: Eduardo Quezada D'Ottone Date: Fri, 6 Nov 2020 16:45:25 -0300 Subject: [PATCH] Female Eevee backsprite. --- graphics/pokemon/eevee/backf.png | Bin 0 -> 696 bytes include/data.h | 1 + include/graphics.h | 1 + src/data/graphics/pokemon.h | 1 + src/data/pokemon_graphics/back_pic_table.h | 5 +++++ src/decompress.c | 21 ++++++++++++++++++++- 6 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 graphics/pokemon/eevee/backf.png diff --git a/graphics/pokemon/eevee/backf.png b/graphics/pokemon/eevee/backf.png new file mode 100644 index 0000000000000000000000000000000000000000..7689d995b607d6faed2de20b80c8932cb78726dd GIT binary patch literal 696 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0J3?w7mbKU|e_7YEDSN12|Y{F9dVruRnHR2_% z5hcO-X(i=}MX3z#J}y9G6v|SI6pZyu3R{;v1S;VuDe!X#$`}LL3|ypG*G1yRUtWDevqbP5W$poq<7Xefs7ImD$?K z4_pHnB)ZRL$4%%p`(P!Y)KFCBI_b~XwL070EMo3tDCxI(p1=L67yHy8!Scd$Q_HMF z{XG}B-ECoyeeUD_Ly~FYIoF+vVLWQw2Uq?J*p{?FCn`fCb=RpwlD&QVqZb%xMjOsZ zmiWu%omP27l0!KxVvc$&^Qv9yb`R{2alAgf`+yv~5K~@%?pp?@7$(8KTEl)#0p7xr zhH4rAWvNpZ25}w?d@JamW|_3IaiQqi?@LTS7`5&^=xKXSxA&3MM(dZ>Upd8X?RQB| zRS5L`_s5z!`8|{DqNp2Ma=I66;~D1E%3pkS`yk_kUCevaH*GtxwKsE`gZ|_gm3Yny{C~^v^v{|b{fnn)d<&B1ZT7XCuekI=N^^tGWjAIyCx?}dFPCg`WWM(3 zACHc8Wr*awH}`JE`c0P?%6@LK*oY;n^OEg*GnQFf`ePPwHmvcSt9V!7<)^7^`u+N~ bG5;C28csbe#JXW2DE2*F{an^LB{Ts5Vk#W^ literal 0 HcmV?d00001 diff --git a/include/data.h b/include/data.h index 544bbfd1d..f10770a1f 100644 --- a/include/data.h +++ b/include/data.h @@ -93,6 +93,7 @@ extern const union AnimCmd *const gUnknown_082FF70C[]; extern const struct MonCoords gMonFrontPicCoords[]; extern const struct MonCoords gMonBackPicCoords[]; extern const struct CompressedSpriteSheet gMonBackPicTable[]; +extern const struct CompressedSpriteSheet gMonBackPicTableFemale[]; extern const struct CompressedSpritePalette gMonPaletteTable[]; extern const struct CompressedSpritePalette gMonShinyPaletteTable[]; extern const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[]; diff --git a/include/graphics.h b/include/graphics.h index 856c06ef1..4eeb5fbcf 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -1020,6 +1020,7 @@ extern const u32 gMonBackPic_Gyarados[]; extern const u32 gMonBackPic_Lapras[]; extern const u32 gMonBackPic_Ditto[]; extern const u32 gMonBackPic_Eevee[]; +extern const u32 gMonBackPic_EeveeF[]; extern const u32 gMonBackPic_Vaporeon[]; extern const u32 gMonBackPic_Jolteon[]; extern const u32 gMonBackPic_Flareon[]; diff --git a/src/data/graphics/pokemon.h b/src/data/graphics/pokemon.h index ce501b3db..e5325be40 100644 --- a/src/data/graphics/pokemon.h +++ b/src/data/graphics/pokemon.h @@ -983,6 +983,7 @@ const u32 gMonBackPic_Gyarados[] = INCBIN_U32("graphics/pokemon/gyarados/back.4b const u32 gMonBackPic_Lapras[] = INCBIN_U32("graphics/pokemon/lapras/back.4bpp.lz"); const u32 gMonBackPic_Ditto[] = INCBIN_U32("graphics/pokemon/ditto/back.4bpp.lz"); const u32 gMonBackPic_Eevee[] = INCBIN_U32("graphics/pokemon/eevee/back.4bpp.lz"); +const u32 gMonBackPic_EeveeF[] = INCBIN_U32("graphics/pokemon/eevee/backf.4bpp.lz"); const u32 gMonBackPic_Vaporeon[] = INCBIN_U32("graphics/pokemon/vaporeon/back.4bpp.lz"); const u32 gMonBackPic_Jolteon[] = INCBIN_U32("graphics/pokemon/jolteon/back.4bpp.lz"); const u32 gMonBackPic_Flareon[] = INCBIN_U32("graphics/pokemon/flareon/back.4bpp.lz"); diff --git a/src/data/pokemon_graphics/back_pic_table.h b/src/data/pokemon_graphics/back_pic_table.h index 14c8a29f8..0589e7f45 100644 --- a/src/data/pokemon_graphics/back_pic_table.h +++ b/src/data/pokemon_graphics/back_pic_table.h @@ -943,3 +943,8 @@ const struct CompressedSpriteSheet gMonBackPicTable[] = SPECIES_SPRITE(UNOWN_EMARK, gMonBackPic_UnownExclamationMark), SPECIES_SPRITE(UNOWN_QMARK, gMonBackPic_UnownQuestionMark), }; + +const struct CompressedSpriteSheet gMonBackPicTableFemale[] = +{ + SPECIES_SPRITE(EEVEE, gMonBackPic_EeveeF), +}; diff --git a/src/decompress.c b/src/decompress.c index c40d32d4f..a7b783b78 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -95,6 +95,13 @@ void LoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32 } else if (species > NUM_SPECIES) // is species unknown? draw the ? icon LZ77UnCompWram(gMonFrontPicTable[0].data, dest); + else if (SpeciesHasGenderDifference[species] && GetGenderFromSpeciesAndPersonality(species, personality) == MON_FEMALE) + { + if (isFrontPic) + LZ77UnCompWram(gMonFrontPicTableFemale[species].data, dest); + else + LZ77UnCompWram(gMonBackPicTableFemale[species].data, dest); + } else LZ77UnCompWram(src->data, dest); @@ -311,6 +318,13 @@ void LoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s } else if (species > NUM_SPECIES) // is species unknown? draw the ? icon LZ77UnCompWram(gMonFrontPicTable[0].data, dest); + else if (SpeciesHasGenderDifference[species] && GetGenderFromSpeciesAndPersonality(species, personality) == MON_FEMALE) + { + if (isFrontPic) + LZ77UnCompWram(gMonFrontPicTableFemale[species].data, dest); + else + LZ77UnCompWram(gMonBackPicTableFemale[species].data, dest); + } else LZ77UnCompWram(src->data, dest); @@ -364,7 +378,12 @@ void LoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src else if (species > NUM_SPECIES) // is species unknown? draw the ? icon LZ77UnCompWram(gMonFrontPicTable[0].data, dest); else if (SpeciesHasGenderDifference[species] && GetGenderFromSpeciesAndPersonality(species, personality) == MON_FEMALE) - LZ77UnCompWram(gMonFrontPicTableFemale[species].data, dest); + { + if (isFrontPic) + LZ77UnCompWram(gMonFrontPicTableFemale[species].data, dest); + else + LZ77UnCompWram(gMonBackPicTableFemale[species].data, dest); + } else LZ77UnCompWram(src->data, dest);