diff --git a/graphics/pokemon/zygarde/back_10pc.png b/graphics/pokemon/zygarde/back_10pc.png new file mode 100644 index 0000000000..b9935ebac7 Binary files /dev/null and b/graphics/pokemon/zygarde/back_10pc.png differ diff --git a/graphics/pokemon/zygarde/back_complete.png b/graphics/pokemon/zygarde/back_complete.png new file mode 100644 index 0000000000..0c50a0a79d Binary files /dev/null and b/graphics/pokemon/zygarde/back_complete.png differ diff --git a/graphics/pokemon/zygarde/front_10pc.png b/graphics/pokemon/zygarde/front_10pc.png new file mode 100644 index 0000000000..f475e6cff3 Binary files /dev/null and b/graphics/pokemon/zygarde/front_10pc.png differ diff --git a/graphics/pokemon/zygarde/front_complete.png b/graphics/pokemon/zygarde/front_complete.png new file mode 100644 index 0000000000..891af92226 Binary files /dev/null and b/graphics/pokemon/zygarde/front_complete.png differ diff --git a/graphics/pokemon/zygarde/icon_10pc.png b/graphics/pokemon/zygarde/icon_10pc.png new file mode 100644 index 0000000000..3d968a6b69 Binary files /dev/null and b/graphics/pokemon/zygarde/icon_10pc.png differ diff --git a/graphics/pokemon/zygarde/icon_complete.png b/graphics/pokemon/zygarde/icon_complete.png new file mode 100644 index 0000000000..8575e8d58d Binary files /dev/null and b/graphics/pokemon/zygarde/icon_complete.png differ diff --git a/graphics/pokemon/zygarde/normal_10pc.pal b/graphics/pokemon/zygarde/normal_10pc.pal new file mode 100644 index 0000000000..6ca8f7e4a2 --- /dev/null +++ b/graphics/pokemon/zygarde/normal_10pc.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 176 232 +32 24 16 +80 64 72 +16 16 16 +56 48 40 +200 216 152 +72 120 24 +56 80 32 +248 248 248 +168 200 72 +120 152 24 +192 48 48 +232 72 72 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/zygarde/normal_complete.pal b/graphics/pokemon/zygarde/normal_complete.pal new file mode 100644 index 0000000000..b811fe953d --- /dev/null +++ b/graphics/pokemon/zygarde/normal_complete.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +208 248 184 +32 24 16 +80 64 72 +56 48 40 +16 16 16 +168 200 72 +184 184 136 +248 248 248 +120 152 24 +72 120 24 +192 48 48 +232 72 72 +232 136 32 +80 136 216 +56 80 168 +120 128 96 diff --git a/graphics/pokemon/zygarde/shiny_10pc.pal b/graphics/pokemon/zygarde/shiny_10pc.pal new file mode 100644 index 0000000000..4c9d852cc3 --- /dev/null +++ b/graphics/pokemon/zygarde/shiny_10pc.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 176 232 +88 88 88 +232 232 232 +16 16 16 +176 176 176 +144 232 208 +40 112 96 +8 64 48 +248 248 248 +72 216 176 +56 160 136 +192 48 48 +232 72 72 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/zygarde/shiny_complete.pal b/graphics/pokemon/zygarde/shiny_complete.pal new file mode 100644 index 0000000000..e913a50cfc --- /dev/null +++ b/graphics/pokemon/zygarde/shiny_complete.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +208 248 184 +88 88 88 +232 232 232 +176 176 176 +16 16 16 +72 216 176 +144 176 168 +248 248 248 +56 160 136 +40 112 96 +192 48 48 +232 72 72 +232 136 32 +80 136 216 +56 80 168 +72 96 80 diff --git a/include/constants/species.h b/include/constants/species.h index 86f6cba68f..c10f0051f2 100644 --- a/include/constants/species.h +++ b/include/constants/species.h @@ -911,8 +911,10 @@ #define SPECIES_MIMIKYU_BUSTED 901 #define SPECIES_LYCANROC_MIDNIGHT 902 #define SPECIES_LYCANROC_DUSK 903 +#define SPECIES_ZYGARDE_10 904 +#define SPECIES_ZYGARDE_COMPLETE 905 -#define SPECIES_EGG 904 +#define SPECIES_EGG 906 #define NUM_SPECIES SPECIES_EGG // Unown forms, not actual species diff --git a/include/graphics.h b/include/graphics.h index a7fa7b1a96..60705b856a 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3717,6 +3717,14 @@ extern const u32 gMonFrontPic_LycanrocDusk[]; extern const u32 gMonBackPic_LycanrocDusk[]; extern const u32 gMonPalette_LycanrocDusk[]; extern const u32 gMonShinyPalette_LycanrocDusk[]; +extern const u32 gMonFrontPic_Zygarde10[]; +extern const u32 gMonBackPic_Zygarde10[]; +extern const u32 gMonPalette_Zygarde10[]; +extern const u32 gMonShinyPalette_Zygarde10[]; +extern const u32 gMonFrontPic_ZygardeComplete[]; +extern const u32 gMonBackPic_ZygardeComplete[]; +extern const u32 gMonPalette_ZygardeComplete[]; +extern const u32 gMonShinyPalette_ZygardeComplete[]; extern const u8 gMonIcon_QuestionMark[]; extern const u8 gMonIcon_Bulbasaur[]; @@ -4652,6 +4660,8 @@ extern const u8 gMonIcon_KyuremWhite[]; extern const u8 gMonIcon_MimikyuBusted[]; extern const u8 gMonIcon_LycanrocMidnight[]; extern const u8 gMonIcon_LycanrocDusk[]; +extern const u8 gMonIcon_Zygarde10[]; +extern const u8 gMonIcon_ZygardeComplete[]; extern const u8 gMonFootprint_QuestionMark[]; extern const u8 gMonFootprint_Bulbasaur[]; diff --git a/sound/cry_tables.inc b/sound/cry_tables.inc index fe47a64c09..dabd9ce5b6 100644 --- a/sound/cry_tables.inc +++ b/sound/cry_tables.inc @@ -908,6 +908,8 @@ gCryTable:: @ 869DCF4 cry_not Cry_Mimikyu_Busted cry_not Cry_Lycanroc_Midnight cry_not Cry_Lycanroc_Dusk + cry_not Cry_Zygarde_10 + cry_not Cry_Zygarde_Complete .align 2 gCryTable2:: @ 869EF24 @@ -1818,3 +1820,5 @@ gCryTable2:: @ 869EF24 cry2_not Cry_Mimikyu_Busted cry2_not Cry_Lycanroc_Midnight cry2_not Cry_Lycanroc_Dusk + cry2_not Cry_Zygarde_10 + cry2_not Cry_Zygarde_Complete diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index e9c22df303..8b51cb18cc 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -4006,6 +4006,14 @@ Cry_Lycanroc_Midnight:: Cry_Lycanroc_Dusk:: .incbin "sound/direct_sound_samples/cries/cry_not_lycanroc_dusk.bin" + .align 2 +Cry_Zygarde_10:: + .incbin "sound/direct_sound_samples/cries/cry_not_zygarde_10.bin" + + .align 2 +Cry_Zygarde_Complete:: + .incbin "sound/direct_sound_samples/cries/cry_not_zygarde_complete.bin" + .align 2 DirectSoundWaveData_register_noise:: .incbin "sound/direct_sound_samples/register_noise.bin" diff --git a/sound/direct_sound_samples/cries/cry_not_zygarde_10.aif b/sound/direct_sound_samples/cries/cry_not_zygarde_10.aif new file mode 100644 index 0000000000..45b0cd0c8d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_not_zygarde_10.aif differ diff --git a/sound/direct_sound_samples/cries/cry_not_zygarde_complete.aif b/sound/direct_sound_samples/cries/cry_not_zygarde_complete.aif new file mode 100644 index 0000000000..0d0797ebbb Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_not_zygarde_complete.aif differ diff --git a/src/data/graphics/pokemon.h b/src/data/graphics/pokemon.h index 7b523bc236..ba619aac74 100644 --- a/src/data/graphics/pokemon.h +++ b/src/data/graphics/pokemon.h @@ -3680,6 +3680,14 @@ const u32 gMonFrontPic_LycanrocDusk[] = INCBIN_U32("graphics/pokemon/lycanroc/fr const u32 gMonBackPic_LycanrocDusk[] = INCBIN_U32("graphics/pokemon/lycanroc/back_dusk.4bpp.lz"); const u32 gMonPalette_LycanrocDusk[] = INCBIN_U32("graphics/pokemon/lycanroc/normal_dusk.gbapal.lz"); const u32 gMonShinyPalette_LycanrocDusk[] = INCBIN_U32("graphics/pokemon/lycanroc/shiny_dusk.gbapal.lz"); +const u32 gMonFrontPic_Zygarde10[] = INCBIN_U32("graphics/pokemon/zygarde/front_10pc.4bpp.lz"); +const u32 gMonBackPic_Zygarde10[] = INCBIN_U32("graphics/pokemon/zygarde/back_10pc.4bpp.lz"); +const u32 gMonPalette_Zygarde10[] = INCBIN_U32("graphics/pokemon/zygarde/normal_10pc.gbapal.lz"); +const u32 gMonShinyPalette_Zygarde10[] = INCBIN_U32("graphics/pokemon/zygarde/shiny_10pc.gbapal.lz"); +const u32 gMonFrontPic_ZygardeComplete[] = INCBIN_U32("graphics/pokemon/zygarde/front_complete.4bpp.lz"); +const u32 gMonBackPic_ZygardeComplete[] = INCBIN_U32("graphics/pokemon/zygarde/back_complete.4bpp.lz"); +const u32 gMonPalette_ZygardeComplete[] = INCBIN_U32("graphics/pokemon/zygarde/normal_complete.gbapal.lz"); +const u32 gMonShinyPalette_ZygardeComplete[] = INCBIN_U32("graphics/pokemon/zygarde/shiny_complete.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"); @@ -4615,6 +4623,8 @@ const u8 gMonIcon_KyuremWhite[] = INCBIN_U8("graphics/pokemon/kyurem/icon_white. const u8 gMonIcon_MimikyuBusted[] = INCBIN_U8("graphics/pokemon/mimikyu/icon_busted.4bpp"); const u8 gMonIcon_LycanrocMidnight[] = INCBIN_U8("graphics/pokemon/lycanroc/icon_midnight.4bpp"); const u8 gMonIcon_LycanrocDusk[] = INCBIN_U8("graphics/pokemon/lycanroc/icon_dusk.4bpp"); +const u8 gMonIcon_Zygarde10[] = INCBIN_U8("graphics/pokemon/zygarde/icon_10pc.4bpp"); +const u8 gMonIcon_ZygardeComplete[] = INCBIN_U8("graphics/pokemon/zygarde/icon_complete.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 76b42ad976..71d1de9163 100644 --- a/src/data/pokemon/base_stats.h +++ b/src/data/pokemon/base_stats.h @@ -23525,4 +23525,54 @@ const struct BaseStats gBaseStats[] = .bodyColor = BODY_COLOR_BROWN, .noFlip = FALSE, }, + + [SPECIES_ZYGARDE_10] = + { + .baseHP = 54, + .baseAttack = 100, + .baseDefense = 71, + .baseSpeed = 115, + .baseSpAttack = 61, + .baseSpDefense = 85, + .type1 = TYPE_DRAGON, + .type2 = TYPE_GROUND, + .catchRate = 3, + .expYield = 270, + .evYield_HP = 3, + .evYield_SpAttack = 0, + .genderRatio = MON_GENDERLESS, + .eggCycles = 120, + .friendship = 0, + .growthRate = GROWTH_SLOW, + .eggGroup1 = EGG_GROUP_UNDISCOVERED, + .eggGroup2 = EGG_GROUP_UNDISCOVERED, + .abilities = {ABILITY_AURA_BREAK, ABILITY_POWER_CONSTRUCT}, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = FALSE, + }, + + [SPECIES_ZYGARDE_COMPLETE] = + { + .baseHP = 216, + .baseAttack = 100, + .baseDefense = 121, + .baseSpeed = 85, + .baseSpAttack = 91, + .baseSpDefense = 95, + .type1 = TYPE_DRAGON, + .type2 = TYPE_GROUND, + .catchRate = 3, + .expYield = 270, + .evYield_HP = 3, + .evYield_SpAttack = 0, + .genderRatio = MON_GENDERLESS, + .eggCycles = 120, + .friendship = 0, + .growthRate = GROWTH_SLOW, + .eggGroup1 = EGG_GROUP_UNDISCOVERED, + .eggGroup2 = EGG_GROUP_UNDISCOVERED, + .abilities = {ABILITY_POWER_CONSTRUCT, ABILITY_NONE}, + .bodyColor = BODY_COLOR_GREEN, + .noFlip = FALSE, + }, }; diff --git a/src/data/pokemon/level_up_learnset_pointers.h b/src/data/pokemon/level_up_learnset_pointers.h index c83663977e..6b97b82811 100644 --- a/src/data/pokemon/level_up_learnset_pointers.h +++ b/src/data/pokemon/level_up_learnset_pointers.h @@ -907,4 +907,6 @@ const struct LevelUpMove *const gLevelUpLearnsets[NUM_SPECIES] = [SPECIES_MIMIKYU_BUSTED] = sMimikyuLevelUpLearnset, [SPECIES_LYCANROC_MIDNIGHT] = sLycanrocMidnightLevelUpLearnset, [SPECIES_LYCANROC_DUSK] = sLycanrocDuskLevelUpLearnset, + [SPECIES_ZYGARDE_10] = sZygardeLevelUpLearnset, + [SPECIES_ZYGARDE_COMPLETE] = sZygardeLevelUpLearnset, }; diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h index f92edadde1..b1fa314cf7 100644 --- a/src/data/pokemon_graphics/back_pic_coordinates.h +++ b/src/data/pokemon_graphics/back_pic_coordinates.h @@ -4614,4 +4614,14 @@ const struct MonCoords gMonBackPicCoords[] = .size = 0x77, .y_offset = 0x7 }, + [SPECIES_ZYGARDE_10] = + { + .size = 0x77, + .y_offset = 0x9 + }, + [SPECIES_ZYGARDE_COMPLETE] = + { + .size = 0x88, + .y_offset = 0x4 + }, }; diff --git a/src/data/pokemon_graphics/back_pic_table.h b/src/data/pokemon_graphics/back_pic_table.h index e02bacf5aa..1cbcffb9f7 100644 --- a/src/data/pokemon_graphics/back_pic_table.h +++ b/src/data/pokemon_graphics/back_pic_table.h @@ -908,6 +908,8 @@ const struct CompressedSpriteSheet gMonBackPicTable[] = SPECIES_SPRITE(MIMIKYU_BUSTED, gMonBackPic_MimikyuBusted), SPECIES_SPRITE(LYCANROC_MIDNIGHT, gMonBackPic_LycanrocMidnight), SPECIES_SPRITE(LYCANROC_DUSK, gMonBackPic_LycanrocDusk), + SPECIES_SPRITE(ZYGARDE_10, gMonBackPic_Zygarde10), + SPECIES_SPRITE(ZYGARDE_COMPLETE, gMonBackPic_ZygardeComplete), 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 cd83b85488..640fb9bf80 100644 --- a/src/data/pokemon_graphics/front_pic_anims.h +++ b/src/data/pokemon_graphics/front_pic_anims.h @@ -8404,6 +8404,18 @@ static const union AnimCmd sAnim_LYCANROC_DUSK_1[] = ANIMCMD_END, }; +static const union AnimCmd sAnim_ZYGARDE_10_1[] = +{ + ANIMCMD_FRAME(0, 1), + ANIMCMD_END, +}; + +static const union AnimCmd sAnim_ZYGARDE_COMPLETE_1[] = +{ + ANIMCMD_FRAME(0, 1), + ANIMCMD_END, +}; + static const union AnimCmd *const sAnims_NONE[] ={ sAnim_GeneralFrame0, sAnim_NONE_1, @@ -13104,6 +13116,16 @@ static const union AnimCmd *const sAnims_LYCANROC_DUSK[] ={ sAnim_LYCANROC_DUSK_1, }; +static const union AnimCmd *const sAnims_ZYGARDE_10[] ={ + sAnim_GeneralFrame0, + sAnim_ZYGARDE_10_1, +}; + +static const union AnimCmd *const sAnims_ZYGARDE_COMPLETE[] ={ + sAnim_GeneralFrame0, + sAnim_ZYGARDE_COMPLETE_1, +}; + #define ANIM_CMD(name) [SPECIES_##name] = sAnims_##name #define ANIM_CMD_FULL(name, anims) [SPECIES_##name] = anims @@ -14014,6 +14036,8 @@ const union AnimCmd *const *const gMonFrontAnimsPtrTable[] = ANIM_CMD(MIMIKYU_BUSTED), ANIM_CMD(LYCANROC_MIDNIGHT), ANIM_CMD(LYCANROC_DUSK), + ANIM_CMD(ZYGARDE_10), + ANIM_CMD(ZYGARDE_COMPLETE), }; #undef ANIM_CMD diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h index 36e4abad5e..f377a2333f 100644 --- a/src/data/pokemon_graphics/front_pic_coordinates.h +++ b/src/data/pokemon_graphics/front_pic_coordinates.h @@ -4614,4 +4614,14 @@ const struct MonCoords gMonFrontPicCoords[] = .size = 0x45, .y_offset = 0x00, }, + [SPECIES_ZYGARDE_10] = + { + .size = 0x45, + .y_offset = 0x00, + }, + [SPECIES_ZYGARDE_COMPLETE] = + { + .size = 0x55, + .y_offset = 0x0, + }, }; diff --git a/src/data/pokemon_graphics/front_pic_table.h b/src/data/pokemon_graphics/front_pic_table.h index 7b22227f08..480133434e 100644 --- a/src/data/pokemon_graphics/front_pic_table.h +++ b/src/data/pokemon_graphics/front_pic_table.h @@ -908,6 +908,8 @@ const struct CompressedSpriteSheet gMonFrontPicTable[] = SPECIES_SPRITE(MIMIKYU_BUSTED, gMonFrontPic_MimikyuBusted), SPECIES_SPRITE(LYCANROC_MIDNIGHT, gMonFrontPic_LycanrocMidnight), SPECIES_SPRITE(LYCANROC_DUSK, gMonFrontPic_LycanrocDusk), + SPECIES_SPRITE(ZYGARDE_10, gMonFrontPic_Zygarde10), + SPECIES_SPRITE(ZYGARDE_COMPLETE, gMonFrontPic_ZygardeComplete), 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 831acc37d5..0d92de8280 100644 --- a/src/data/pokemon_graphics/palette_table.h +++ b/src/data/pokemon_graphics/palette_table.h @@ -908,6 +908,8 @@ const struct CompressedSpritePalette gMonPaletteTable[] = SPECIES_PAL(MIMIKYU_BUSTED, gMonPalette_MimikyuBusted), SPECIES_PAL(LYCANROC_MIDNIGHT, gMonPalette_LycanrocMidnight), SPECIES_PAL(LYCANROC_DUSK, gMonPalette_LycanrocDusk), + SPECIES_PAL(ZYGARDE_10, gMonPalette_Zygarde10), + SPECIES_PAL(ZYGARDE_COMPLETE, gMonPalette_ZygardeComplete), 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 c15078cfad..b2915545e2 100644 --- a/src/data/pokemon_graphics/shiny_palette_table.h +++ b/src/data/pokemon_graphics/shiny_palette_table.h @@ -908,6 +908,8 @@ const struct CompressedSpritePalette gMonShinyPaletteTable[] = SPECIES_SHINY_PAL(MIMIKYU_BUSTED, gMonShinyPalette_MimikyuBusted), SPECIES_SHINY_PAL(LYCANROC_MIDNIGHT, gMonShinyPalette_LycanrocMidnight), SPECIES_SHINY_PAL(LYCANROC_DUSK, gMonShinyPalette_LycanrocDusk), + SPECIES_SHINY_PAL(ZYGARDE_10, gMonShinyPalette_Zygarde10), + SPECIES_SHINY_PAL(ZYGARDE_COMPLETE, gMonShinyPalette_ZygardeComplete), 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 1c6cb3f37c..206637c855 100644 --- a/src/data/text/species_names.h +++ b/src/data/text/species_names.h @@ -906,4 +906,6 @@ const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1] = { [SPECIES_MIMIKYU_BUSTED] = _("Mimikyu"), [SPECIES_LYCANROC_MIDNIGHT] = _("Lycanroc"), [SPECIES_LYCANROC_DUSK] = _("Lycanroc"), + [SPECIES_ZYGARDE_10] = _("Zygarde"), + [SPECIES_ZYGARDE_COMPLETE] = _("Zygarde"), }; diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index b782476777..eefd5c9720 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -930,6 +930,8 @@ const u8 *const gMonIconTable[] = [SPECIES_MIMIKYU_BUSTED] = gMonIcon_MimikyuBusted, [SPECIES_LYCANROC_MIDNIGHT] = gMonIcon_LycanrocMidnight, [SPECIES_LYCANROC_DUSK] = gMonIcon_LycanrocDusk, + [SPECIES_ZYGARDE_10] = gMonIcon_Zygarde10, + [SPECIES_ZYGARDE_COMPLETE] = gMonIcon_ZygardeComplete, [SPECIES_UNOWN_A] = gMonIcon_UnownA, [SPECIES_UNOWN_B] = gMonIcon_UnownB, [SPECIES_UNOWN_C] = gMonIcon_UnownC, @@ -1866,6 +1868,8 @@ const u8 gMonIconPaletteIndices[] = [SPECIES_MIMIKYU_BUSTED] = 1, [SPECIES_LYCANROC_MIDNIGHT] = 0, [SPECIES_LYCANROC_DUSK] = 0, + [SPECIES_ZYGARDE_10] = 1, + [SPECIES_ZYGARDE_COMPLETE] = 1, [SPECIES_UNOWN_A ... SPECIES_UNOWN_QMARK] = 0, [SPECIES_EGG] = 1, };