From bb10a69f815e5e9d1b156b5217aeaa87c1f24db7 Mon Sep 17 00:00:00 2001 From: Eduardo Alvaro Quezada D'Ottone Date: Sat, 8 Feb 2020 15:32:01 -0300 Subject: [PATCH] Busted Mimikyu (#254) * Busted Mimikyu * Fixed back sprite coords. --- graphics/pokemon/mimikyu/back_busted.png | Bin 0 -> 505 bytes graphics/pokemon/mimikyu/front_busted.png | Bin 0 -> 554 bytes graphics/pokemon/mimikyu/icon_busted.png | Bin 0 -> 426 bytes graphics/pokemon/mimikyu/normal_busted.pal | 19 +++++++++++++ graphics/pokemon/mimikyu/shiny_busted.pal | 19 +++++++++++++ include/constants/species.h | 3 ++- include/graphics.h | 5 ++++ src/data/graphics/pokemon.h | 5 ++++ src/data/pokemon/base_stats.h | 25 ++++++++++++++++++ src/data/pokemon/level_up_learnset_pointers.h | 1 + .../pokemon_graphics/back_pic_coordinates.h | 5 ++++ src/data/pokemon_graphics/back_pic_table.h | 1 + src/data/pokemon_graphics/front_pic_anims.h | 12 +++++++++ .../pokemon_graphics/front_pic_coordinates.h | 5 ++++ src/data/pokemon_graphics/front_pic_table.h | 1 + src/data/pokemon_graphics/palette_table.h | 1 + .../pokemon_graphics/shiny_palette_table.h | 1 + src/data/text/species_names.h | 1 + src/pokemon_icon.c | 2 ++ 19 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 graphics/pokemon/mimikyu/back_busted.png create mode 100644 graphics/pokemon/mimikyu/front_busted.png create mode 100644 graphics/pokemon/mimikyu/icon_busted.png create mode 100644 graphics/pokemon/mimikyu/normal_busted.pal create mode 100644 graphics/pokemon/mimikyu/shiny_busted.pal diff --git a/graphics/pokemon/mimikyu/back_busted.png b/graphics/pokemon/mimikyu/back_busted.png new file mode 100644 index 0000000000000000000000000000000000000000..732fe12341b3ca9e2f8aae4f660350fcde39fd06 GIT binary patch literal 505 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0J3?w7mbKU|e_7YEDSN11NOyXMn<)u86fkNUX zt`Q}{`DrEPiAAXl?mjL+V-(6#ixiCYObT0}8E0yl0Pu(0r0v0y?$LxYEd!HkBCga{9iZd8z- zIrAA%gfYq6-R1vM_D@HFY*|ki$B>FSZzuWYH5&-D9-N)`*zJw>YOzyBQiY9Xwhf(b zJKdLZSvV%l?ls>2_D1H0*g4!=_OLqb={G-b@47MT>i+2|xpKFc+AuW)^8e-9Gs`CM zl)SuPe9`6i`#1OJE|YQjXSAs0O1w+XT=6$H8;(c3O#8vKth;eZOZJ5sRexsXD$lRy z&FFb`ym(528Rvnzi}A|^8U+L&$wr0R_?p~ekU7ZmVDUpQ6J8P54=c|KKKgL%{Jb{> zzDnOX72J}P@&u=8@%>S&V2a!ndB9hrY+7gEmiXjd_t(n>G%L4x^L+^XHCg7Na*5UB zvV$hq?litIVqe0pWI8WPN&aFQ-`*Ckk4y55SE(v&f3W{eMaw*G7KeN9v)q?B9slz- c?rZy3-o8(>es5Iz_y!b?p00i_>zopr0D_Xh%K!iX literal 0 HcmV?d00001 diff --git a/graphics/pokemon/mimikyu/front_busted.png b/graphics/pokemon/mimikyu/front_busted.png new file mode 100644 index 0000000000000000000000000000000000000000..c9c36c1f4eda069a6acc380acd062b7c52739582 GIT binary patch literal 554 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0J3?w7mbKU|e_7YEDSN11NOyU}*&HmdL1BJv( zTq8yh~aJc8NhM0ue0blh!o$1Ri z3Kzn8?QaUuCj2PW6)g^3-BgY2y1Zp#+gvhwe4s zNIP(4M^t4(_u|T}b>efH8`id*T;+e1sl=~@_thlVJ4ZD+E!RofhUv*(_h93l`KD4~ zTEXQL%tv_*(h?tU$%rz2aQyQZgLm#MMK5gTyJ;>jXjyDh)7Y^un$JU1{=?~(L;Qc& Z)-fy#3YwrXPhA-l@Sd)IF6*2UngIEy&hG#K literal 0 HcmV?d00001 diff --git a/graphics/pokemon/mimikyu/icon_busted.png b/graphics/pokemon/mimikyu/icon_busted.png new file mode 100644 index 0000000000000000000000000000000000000000..9a1cf38c4a34b87b2ec2ac8237561167d39387c8 GIT binary patch literal 426 zcmeAS@N?(olHy`uVBq!ia0vp^3P9|@!VDxk7i7!@QtTz3zOL*~n3%+Mlu|x?PXG#u zm$*ih1m~xflqVLYGPwJ=0F6;7OD$3`)-x$=UGfm9grlUu&mAaZ3}iESHE7BMDVB6c zUq=Rpjs4tz5?O(Kg8-ip*Q7bk#l^*Y_wN1w|9|xyuQ_MErhM~yS3Kw2ly7^NM16av z`R&`9t5>t0d1)pkML9Y;W?I%p1NAZ{dAqy(U&{XJD3Ei`)5S5QV$R!12l<)|c-ktP zk8S39U;iX#^U=*`YZ#8U6gL){>iD=ldXe@>_=EhkFaEpB?uLu(ZrUS1S;A+r@ZpVF zlVy%qC}?X7Ow2gV7+n5h?$?crYN!7AX2|wxK6`AZc80^XMJKOZH0ZQs*m=3Zh*>gS zwWo5X(@96ijd!c+?$45NOwN1rOZ&r3uGs$`Wjj6?gxHzBnk;C^?O3sJ_k+gMv%jhR zn`iudn&}aV6DHS_549(%7I4&P%>HcX)e>eGQ6&9?!7}3kbCFzK@7F&J1u2tv?c}%9 Q2KtP_)78&qol`;+086W^xc~qF literal 0 HcmV?d00001 diff --git a/graphics/pokemon/mimikyu/normal_busted.pal b/graphics/pokemon/mimikyu/normal_busted.pal new file mode 100644 index 0000000000..9866373341 --- /dev/null +++ b/graphics/pokemon/mimikyu/normal_busted.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +152 208 160 +96 88 56 +16 16 16 +240 224 168 +64 64 64 +176 168 120 +224 136 0 +72 48 24 +176 120 64 +128 88 48 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/mimikyu/shiny_busted.pal b/graphics/pokemon/mimikyu/shiny_busted.pal new file mode 100644 index 0000000000..8e78d55f76 --- /dev/null +++ b/graphics/pokemon/mimikyu/shiny_busted.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +152 208 160 +128 96 80 +16 16 16 +216 216 192 +56 56 72 +168 160 144 +112 128 128 +72 64 48 +152 128 104 +96 88 72 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/include/constants/species.h b/include/constants/species.h index 486140035c..6bca617af4 100644 --- a/include/constants/species.h +++ b/include/constants/species.h @@ -908,8 +908,9 @@ #define SPECIES_HOOPA_UNBOUND 898 #define SPECIES_MINIOR_CORE 899 #define SPECIES_WISHIWASHI_SCHOOL 900 +#define SPECIES_MIMIKYU_BUSTED 901 -#define SPECIES_EGG 901 +#define SPECIES_EGG 902 #define NUM_SPECIES SPECIES_EGG // Unown forms, not actual species diff --git a/include/graphics.h b/include/graphics.h index 489c9c9a85..8b30f17e15 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3705,6 +3705,10 @@ extern const u32 gMonFrontPic_KyuremWhite[]; extern const u32 gMonBackPic_KyuremWhite[]; extern const u32 gMonPalette_KyuremWhite[]; extern const u32 gMonShinyPalette_KyuremWhite[]; +extern const u32 gMonFrontPic_MimikyuBusted[]; +extern const u32 gMonBackPic_MimikyuBusted[]; +extern const u32 gMonPalette_MimikyuBusted[]; +extern const u32 gMonShinyPalette_MimikyuBusted[]; extern const u8 gMonIcon_QuestionMark[]; extern const u8 gMonIcon_Bulbasaur[]; @@ -4637,6 +4641,7 @@ extern const u8 gMonIcon_MiniorCore[]; extern const u8 gMonIcon_WishiwashiSchool[]; extern const u8 gMonIcon_KyuremBlack[]; extern const u8 gMonIcon_KyuremWhite[]; +extern const u8 gMonIcon_MimikyuBusted[]; extern const u8 gMonFootprint_QuestionMark[]; extern const u8 gMonFootprint_Bulbasaur[]; diff --git a/src/data/graphics/pokemon.h b/src/data/graphics/pokemon.h index ab20dc3c09..c0697da920 100644 --- a/src/data/graphics/pokemon.h +++ b/src/data/graphics/pokemon.h @@ -3668,6 +3668,10 @@ const u32 gMonFrontPic_KyuremWhite[] = INCBIN_U32("graphics/pokemon/kyurem/anim_ const u32 gMonBackPic_KyuremWhite[] = INCBIN_U32("graphics/pokemon/kyurem/back_white.4bpp.lz"); const u32 gMonPalette_KyuremWhite[] = INCBIN_U32("graphics/pokemon/kyurem/normal_white.gbapal.lz"); const u32 gMonShinyPalette_KyuremWhite[] = INCBIN_U32("graphics/pokemon/kyurem/shiny_white.gbapal.lz"); +const u32 gMonFrontPic_MimikyuBusted[] = INCBIN_U32("graphics/pokemon/mimikyu/front_busted.4bpp.lz"); +const u32 gMonBackPic_MimikyuBusted[] = INCBIN_U32("graphics/pokemon/mimikyu/back_busted.4bpp.lz"); +const u32 gMonPalette_MimikyuBusted[] = INCBIN_U32("graphics/pokemon/mimikyu/normal_busted.gbapal.lz"); +const u32 gMonShinyPalette_MimikyuBusted[] = INCBIN_U32("graphics/pokemon/mimikyu/shiny_busted.gbapal.lz"); const u8 gMonIcon_QuestionMark[] = INCBIN_U8("graphics/pokemon/question_mark/icon.4bpp"); const u8 gMonIcon_Bulbasaur[] = INCBIN_U8("graphics/pokemon/bulbasaur/icon.4bpp"); @@ -4600,6 +4604,7 @@ const u8 gMonIcon_MiniorCore[] = INCBIN_U8("graphics/pokemon/minior/icon_core.4b const u8 gMonIcon_WishiwashiSchool[] = INCBIN_U8("graphics/pokemon/wishiwashi/icon_school.4bpp"); const u8 gMonIcon_KyuremBlack[] = INCBIN_U8("graphics/pokemon/kyurem/icon_black.4bpp"); const u8 gMonIcon_KyuremWhite[] = INCBIN_U8("graphics/pokemon/kyurem/icon_white.4bpp"); +const u8 gMonIcon_MimikyuBusted[] = INCBIN_U8("graphics/pokemon/mimikyu/icon_busted.4bpp"); const u8 gMonFootprint_QuestionMark[] = INCBIN_U8("graphics/pokemon/question_mark/footprint.1bpp"); const u8 gMonFootprint_Bulbasaur[] = INCBIN_U8("graphics/pokemon/bulbasaur/footprint.1bpp"); diff --git a/src/data/pokemon/base_stats.h b/src/data/pokemon/base_stats.h index fc09539d2a..a0308fc7f7 100644 --- a/src/data/pokemon/base_stats.h +++ b/src/data/pokemon/base_stats.h @@ -22476,4 +22476,29 @@ const struct BaseStats gBaseStats[] = .abilities = {ABILITY_SCHOOLING, ABILITY_NONE}, .bodyColor = BODY_COLOR_BLUE, }, + + [SPECIES_MIMIKYU_BUSTED] = + { + .baseHP = 55, + .baseAttack = 90, + .baseDefense = 80, + .baseSpeed = 96, + .baseSpAttack = 50, + .baseSpDefense = 105, + .type1 = TYPE_GHOST, + .type2 = TYPE_FAIRY, + .catchRate = 45, + .expYield = 167, + .evYield_SpAttack = 0, + .evYield_SpDefense = 2, + .item2 = ITEM_NONE, // ITEM_CHESTO_BERRY, + .genderRatio = PERCENT_FEMALE(50), + .eggCycles = 20, + .friendship = 70, + .growthRate = GROWTH_MEDIUM_FAST, + .eggGroup1 = EGG_GROUP_AMORPHOUS, + .eggGroup2 = EGG_GROUP_AMORPHOUS, + .abilities = {ABILITY_DISGUISE, ABILITY_NONE}, + .bodyColor = BODY_COLOR_YELLOW, + }, }; diff --git a/src/data/pokemon/level_up_learnset_pointers.h b/src/data/pokemon/level_up_learnset_pointers.h index 264d6c7b17..879cce2c85 100644 --- a/src/data/pokemon/level_up_learnset_pointers.h +++ b/src/data/pokemon/level_up_learnset_pointers.h @@ -904,4 +904,5 @@ const struct LevelUpMove *const gLevelUpLearnsets[NUM_SPECIES] = [SPECIES_HOOPA_UNBOUND] = sHoopaLevelUpLearnset, [SPECIES_MINIOR_CORE] = sMiniorLevelUpLearnset, [SPECIES_WISHIWASHI_SCHOOL] = sWishiwashiLevelUpLearnset, + [SPECIES_MIMIKYU_BUSTED] = sMimikyuLevelUpLearnset, }; diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h index 94cde813e2..2813774170 100644 --- a/src/data/pokemon_graphics/back_pic_coordinates.h +++ b/src/data/pokemon_graphics/back_pic_coordinates.h @@ -4589,4 +4589,9 @@ const struct MonCoords gMonBackPicCoords[] = .size = 0x66, .y_offset = 0x3, }, + [SPECIES_MIMIKYU_BUSTED] = + { + .size = 0x77, + .y_offset = 0xF + }, }; diff --git a/src/data/pokemon_graphics/back_pic_table.h b/src/data/pokemon_graphics/back_pic_table.h index dae54c3046..ba1b0d8cdb 100644 --- a/src/data/pokemon_graphics/back_pic_table.h +++ b/src/data/pokemon_graphics/back_pic_table.h @@ -905,6 +905,7 @@ const struct CompressedSpriteSheet gMonBackPicTable[] = SPECIES_SPRITE(WISHIWASHI_SCHOOL, gMonBackPic_WishiwashiSchool), SPECIES_SPRITE(KYUREM_BLACK, gMonBackPic_KyuremBlack), SPECIES_SPRITE(KYUREM_WHITE, gMonBackPic_KyuremWhite), + SPECIES_SPRITE(MIMIKYU_BUSTED, gMonBackPic_MimikyuBusted), SPECIES_SPRITE(UNOWN_A, gMonBackPic_UnownA), SPECIES_SPRITE(UNOWN_B, gMonBackPic_UnownB), diff --git a/src/data/pokemon_graphics/front_pic_anims.h b/src/data/pokemon_graphics/front_pic_anims.h index 77438983bd..e1e92486bf 100644 --- a/src/data/pokemon_graphics/front_pic_anims.h +++ b/src/data/pokemon_graphics/front_pic_anims.h @@ -8386,6 +8386,12 @@ static const union AnimCmd sAnim_KYUREM_WHITE_1[] = ANIMCMD_END, }; +static const union AnimCmd sAnim_MIMIKYU_BUSTED_1[] = +{ + ANIMCMD_FRAME(0, 1), + ANIMCMD_END, +}; + static const union AnimCmd *const sAnims_NONE[] ={ sAnim_GeneralFrame0, sAnim_NONE_1, @@ -13071,6 +13077,11 @@ static const union AnimCmd *const sAnims_KYUREM_WHITE[] ={ sAnim_KYUREM_WHITE_1, }; +static const union AnimCmd *const sAnims_MIMIKYU_BUSTED[] ={ + sAnim_GeneralFrame0, + sAnim_MIMIKYU_BUSTED_1, +}; + #define ANIM_CMD(name) [SPECIES_##name] = sAnims_##name #define ANIM_CMD_FULL(name, anims) [SPECIES_##name] = anims @@ -13978,5 +13989,6 @@ const union AnimCmd *const *const gMonFrontAnimsPtrTable[] = ANIM_CMD(WISHIWASHI_SCHOOL), ANIM_CMD(KYUREM_BLACK), ANIM_CMD(KYUREM_WHITE), + ANIM_CMD(MIMIKYU_BUSTED), }; diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h index 40359a9519..f84990ca94 100644 --- a/src/data/pokemon_graphics/front_pic_coordinates.h +++ b/src/data/pokemon_graphics/front_pic_coordinates.h @@ -4589,4 +4589,9 @@ const struct MonCoords gMonFrontPicCoords[] = .size = 0x87, .y_offset = 0x0, }, + [SPECIES_MIMIKYU_BUSTED] = + { + .size = 0x45, + .y_offset = 0x0C, + }, }; diff --git a/src/data/pokemon_graphics/front_pic_table.h b/src/data/pokemon_graphics/front_pic_table.h index 62874427ff..89e743b948 100644 --- a/src/data/pokemon_graphics/front_pic_table.h +++ b/src/data/pokemon_graphics/front_pic_table.h @@ -905,6 +905,7 @@ const struct CompressedSpriteSheet gMonFrontPicTable[] = SPECIES_SPRITE(WISHIWASHI_SCHOOL, gMonFrontPic_WishiwashiSchool), SPECIES_SPRITE(KYUREM_BLACK, gMonFrontPic_KyuremBlack), SPECIES_SPRITE(KYUREM_WHITE, gMonFrontPic_KyuremWhite), + SPECIES_SPRITE(MIMIKYU_BUSTED, gMonFrontPic_MimikyuBusted), SPECIES_SPRITE(UNOWN_A, gMonFrontPic_UnownA), SPECIES_SPRITE(UNOWN_B, gMonFrontPic_UnownB), diff --git a/src/data/pokemon_graphics/palette_table.h b/src/data/pokemon_graphics/palette_table.h index ade16329b8..0410bf0d5f 100644 --- a/src/data/pokemon_graphics/palette_table.h +++ b/src/data/pokemon_graphics/palette_table.h @@ -905,6 +905,7 @@ const struct CompressedSpritePalette gMonPaletteTable[] = SPECIES_PAL(WISHIWASHI_SCHOOL, gMonPalette_WishiwashiSchool), SPECIES_PAL(KYUREM_BLACK, gMonPalette_KyuremBlack), SPECIES_PAL(KYUREM_WHITE, gMonPalette_KyuremWhite), + SPECIES_PAL(MIMIKYU_BUSTED, gMonPalette_MimikyuBusted), SPECIES_PAL(UNOWN_A, gMonPalette_Unown), SPECIES_PAL(UNOWN_B, gMonPalette_Unown), diff --git a/src/data/pokemon_graphics/shiny_palette_table.h b/src/data/pokemon_graphics/shiny_palette_table.h index b7d336b01e..3fe905c996 100644 --- a/src/data/pokemon_graphics/shiny_palette_table.h +++ b/src/data/pokemon_graphics/shiny_palette_table.h @@ -905,6 +905,7 @@ const struct CompressedSpritePalette gMonShinyPaletteTable[] = SPECIES_SHINY_PAL(WISHIWASHI_SCHOOL, gMonShinyPalette_WishiwashiSchool), SPECIES_SHINY_PAL(KYUREM_BLACK, gMonShinyPalette_KyuremBlack), SPECIES_SHINY_PAL(KYUREM_WHITE, gMonShinyPalette_KyuremWhite), + SPECIES_SHINY_PAL(MIMIKYU_BUSTED, gMonShinyPalette_MimikyuBusted), SPECIES_SHINY_PAL(UNOWN_A, gMonShinyPalette_Unown), SPECIES_SHINY_PAL(UNOWN_B, gMonShinyPalette_Unown), diff --git a/src/data/text/species_names.h b/src/data/text/species_names.h index 0a55851b63..79f8b0274f 100644 --- a/src/data/text/species_names.h +++ b/src/data/text/species_names.h @@ -903,4 +903,5 @@ const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1] = { [SPECIES_HOOPA_UNBOUND] = _("Hoopa"), [SPECIES_MINIOR_CORE] = _("Minior"), [SPECIES_WISHIWASHI_SCHOOL] = _("Wishiwashi"), + [SPECIES_MIMIKYU_BUSTED] = _("Mimikyu"), }; diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 624fc7a5b5..d4eff9ac10 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -927,6 +927,7 @@ const u8 *const gMonIconTable[] = [SPECIES_WISHIWASHI_SCHOOL] = gMonIcon_WishiwashiSchool, [SPECIES_KYUREM_BLACK] = gMonIcon_KyuremBlack, [SPECIES_KYUREM_WHITE] = gMonIcon_KyuremWhite, + [SPECIES_MIMIKYU_BUSTED] = gMonIcon_MimikyuBusted, [SPECIES_UNOWN_A] = gMonIcon_UnownA, [SPECIES_UNOWN_B] = gMonIcon_UnownB, [SPECIES_UNOWN_C] = gMonIcon_UnownC, @@ -1860,6 +1861,7 @@ const u8 gMonIconPaletteIndices[] = [SPECIES_WISHIWASHI_SCHOOL] = 0, [SPECIES_KYUREM_BLACK] = 0, [SPECIES_KYUREM_WHITE] = 0, + [SPECIES_MIMIKYU_BUSTED] = 1, [SPECIES_UNOWN_A ... SPECIES_UNOWN_QMARK] = 0, [SPECIES_EGG] = 1, };