diff --git a/INSTALL.md b/INSTALL.md index 2759124bee9e..5f2a1f05f14f 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -106,7 +106,7 @@ cd /mnt/c/Users//Desktop/decomps > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Desktop/decomp folder"`. > Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed - + If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or continue reading below for [Windows instructions using msys2](#windows-msys2). @@ -216,7 +216,7 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer > Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users//Desktop/decomp folder"`. > Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed - + If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)). ## macOS @@ -539,7 +539,7 @@ devkitARM is now installed. devkitARM is now installed. ### Installing devkitARM on Arch Linux - + 1. Follow [devkitPro's instructions](https://devkitpro.org/wiki/devkitPro_pacman#Customising_Existing_Pacman_Install) to configure `pacman` to download devkitPro packages. 2. Install `gba-dev`: run the following command as root. diff --git a/Makefile b/Makefile index 6a9e0fd6dfb4..2644a9acd9e9 100644 --- a/Makefile +++ b/Makefile @@ -254,7 +254,7 @@ tidynonmodern: tidymodern: rm -f $(MODERN_ROM_NAME) $(MODERN_ELF_NAME) $(MODERN_MAP_NAME) rm -rf $(MODERN_OBJ_DIR_NAME) - + ifneq ($(MODERN),0) $(C_BUILDDIR)/berry_crush.o: override CFLAGS += -Wno-address-of-packed-member endif @@ -412,7 +412,7 @@ LD_SCRIPT := ld_script.txt LD_SCRIPT_DEPS := $(OBJ_DIR)/sym_bss.ld $(OBJ_DIR)/sym_common.ld $(OBJ_DIR)/sym_ewram.ld else LD_SCRIPT := ld_script_modern.txt -LD_SCRIPT_DEPS := +LD_SCRIPT_DEPS := endif $(OBJ_DIR)/ld_script.ld: $(LD_SCRIPT) $(LD_SCRIPT_DEPS) diff --git a/asm/macros/battle_ai_script.inc b/asm/macros/battle_ai_script.inc index 7f054c98634a..eeea15dba65e 100644 --- a/asm/macros/battle_ai_script.inc +++ b/asm/macros/battle_ai_script.inc @@ -558,151 +558,151 @@ .2byte \param1 .4byte \param2 .endm - + .macro get_ally_chosen_move .byte 0x63 .endm - + .macro if_has_no_attacking_moves battler:req, param1:req .byte 0x64 .byte \battler .4byte \param1 .endm - + .macro get_hazards_count battler:req, effect:req .byte 0x65 .byte \battler .2byte \effect .endm - + .macro if_doesnt_hold_berry battler:req, ptr:req .byte 0x66 .byte \battler .4byte \ptr .endm - + .macro if_share_type battler1:req, battler2:req, ptr:req .byte 0x67 .byte \battler1 .byte \battler2 .4byte \ptr .endm - + .macro if_cant_use_last_resort battler:req, ptr:req .byte 0x68 .byte \battler .4byte \ptr .endm - + .macro if_has_move_with_split battler:req, split:req, ptr:req .byte 0x69 .byte \battler .byte \split .4byte \ptr .endm - + .macro if_has_no_move_with_split battler:req, split:req, ptr:req .byte 0x6A .byte \battler .byte \split .4byte \ptr .endm - + .macro if_physical_moves_unusable attacker:req, target:req, ptr:req .byte 0x6B .byte \attacker .byte \target .4byte \ptr .endm - + .macro if_ai_can_go_down ptr:req .byte 0x6C .4byte \ptr .endm - + .macro if_has_move_with_type battler:req, type:req, ptr:req .byte 0x6D .byte \battler .byte \type .4byte \ptr .endm - + .macro if_no_move_used battler:req, ptr:req .byte 0x6E .byte \battler .4byte \ptr .endm - + .macro if_has_move_with_flag battler:req, flag:req, ptr:req .byte 0x6F .byte \battler .4byte \flag .4byte \ptr .endm - + .macro if_battler_absent battler:req, ptr:req .byte 0x70 .byte \battler .4byte \ptr .endm - + .macro if_grounded battler:req, ptr:req .byte 0x71 .byte \battler .4byte \ptr .endm - + .macro get_best_dmg_hp_percent .byte 0x72 .endm - + .macro get_curr_dmg_hp_percent .byte 0x73 .endm - + .macro get_move_split_from_result .byte 0x74 .endm - + .macro get_considered_move_split .byte 0x75 .endm - + .macro get_considered_move_target .byte 0x76 .endm - + .macro compare_speeds battler1:req, battler2:req .byte 0x77 .byte \battler1 .byte \battler2 .endm - + .macro is_wakeup_turn battler:req .byte 0x78 .byte \battler .endm - + .macro if_has_move_with_accuracy_lt battler:req, value:req, ptr:req .byte 0x79 .byte \battler .byte \value .4byte \ptr .endm - + @ useful script macros .macro if_has_physical_move battler:req, ptr:req if_has_move_with_split \battler, SPLIT_PHYSICAL, \ptr .endm - + .macro if_has_no_physical_move battler:req, ptr:req if_has_no_move_with_split \battler, SPLIT_PHYSICAL, \ptr .endm - + .macro if_has_special_move battler:req, ptr:req if_has_move_with_split \battler, SPLIT_SPECIAL, \ptr .endm - + .macro if_has_no_special_move battler:req, ptr:req if_has_no_move_with_split \battler, SPLIT_SPECIAL, \ptr .endm @@ -714,33 +714,33 @@ .macro get_curr_move_type get_type AI_TYPE_MOVE .endm - + .macro get_user_type1 get_type AI_TYPE1_USER .endm - + .macro get_user_type2 get_type AI_TYPE2_USER .endm - + .macro get_target_type1 get_type AI_TYPE1_TARGET .endm - + .macro get_target_type2 get_type AI_TYPE2_TARGET .endm - + .macro if_ability battler:req, ability:req, ptr:req check_ability \battler, \ability if_equal 1, \ptr .endm - + .macro if_no_ability battler:req, ability:req, ptr:req check_ability \battler, \ability if_equal 0, \ptr .endm - + .macro if_type battler:req, type:req, ptr:req is_of_type \battler, \type if_equal 1, \ptr @@ -750,20 +750,20 @@ is_of_type \battler, \type if_equal 0, \ptr .endm - + .macro if_target_faster ptr:req if_user_goes 1, \ptr .endm - + .macro if_user_faster ptr:req if_user_goes 0, \ptr .endm - + .macro if_double_battle ptr:req is_double_battle if_equal 1, \ptr .endm - + .macro if_not_double_battle ptr:req is_double_battle if_equal 0, \ptr @@ -772,11 +772,11 @@ .macro if_any_move_disabled battler:req, ptr:req if_any_move_disabled_or_encored \battler, 0, \ptr .endm - + .macro if_any_move_encored battler:req, ptr:req if_any_move_disabled_or_encored \battler, 1, \ptr .endm - + .macro call_if_always_hit ptr:req get_move_accuracy call_if_eq 0, \ptr diff --git a/asm/macros/battle_anim_script.inc b/asm/macros/battle_anim_script.inc index 8dda8979e5e6..a98a344fa1bf 100644 --- a/asm/macros/battle_anim_script.inc +++ b/asm/macros/battle_anim_script.inc @@ -270,20 +270,20 @@ .macro stopsound .byte 0x2f .endm - + @ useful macros .macro jumpreteq value:req, ptr:req jumpargeq ARG_RET_ID, \value, \ptr .endm - + .macro jumprettrue ptr:req jumpreteq TRUE, \ptr .endm - + .macro jumpretfalse ptr:req jumpreteq FALSE, \ptr .endm - + .macro jumpifdoublebattle ptr:req createvisualtask AnimTask_IsDoubleBattle, 0 jumprettrue \ptr @@ -305,7 +305,7 @@ .hword \launchtemplatearg7 .hword \launchtemplatearg8 .endm - + .macro launchtask launchtaskPtr launchtaskPriority launchtaskArgsNo launchtaskarg0 launchtaskarg1 launchtaskarg2 launchtaskarg3 launchtaskarg4 launchtaskarg5 launchtaskarg6 launchtaskarg7 launchtaskarg8 .byte 0x3 .word \launchtaskPtr @@ -321,7 +321,7 @@ .hword \launchtaskarg7 .hword \launchtaskarg8 .endm - + .macro setblends setblends_value .byte 0xC .hword \setblends_value diff --git a/asm/macros/battle_frontier/battle_tower.inc b/asm/macros/battle_frontier/battle_tower.inc index 46bbc392f600..49e72e744604 100644 --- a/asm/macros/battle_frontier/battle_tower.inc +++ b/asm/macros/battle_frontier/battle_tower.inc @@ -89,15 +89,15 @@ setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_INTERVIEW_DATA special CallBattleTowerFunc .endm - + @Custom multi-battle commands - + .macro choose_mons fadescreen 1 special ChooseHalfPartyForBattle @ choose 3 mons for battle waitstate .endm - + .macro multi_do type:req, partnerId:req, partnerPicId:req special ReducePlayerPartyToSelectedMons setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_DATA @@ -113,26 +113,26 @@ special CallFrontierUtilFunc special LoadPlayerParty .endm - + .macro multi_2_vs_2 trainer1Id:req, trainer1LoseText:req, trainer2Id:req, trainer2LoseText:req, partnerId:req, partnerPicId:req special SavePlayerParty trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons trainerbattle TRAINER_BATTLE_SET_TRAINER_B, \trainer2Id, 0, NULL, \trainer2LoseText @ set second trainer mons multi_do MULTI_BATTLE_2_VS_2, \partnerId, \partnerPicId .endm - + .macro multi_2_vs_1 trainer1Id:req, trainer1LoseText:req, partnerId:req, partnerPicId:req special SavePlayerParty trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons multi_do MULTI_BATTLE_2_VS_1, \partnerId, \partnerPicId .endm - + @ Wild mons need to be assigned to gEnemyParty 0 and 3 slots, other slots need to be cleared out. .macro multi_wild partnerId:req, partnerPicId:req special SavePlayerParty multi_do MULTI_BATTLE_2_VS_WILD, \partnerId, \partnerPicId .endm - + .macro multi_do_fixed type:req, partnerId:req, partnerPicId:req setvar VAR_0x8004, SPECIAL_BATTLE_MULTI setvar VAR_0x8005, \type @@ -144,20 +144,20 @@ special CallFrontierUtilFunc special LoadPlayerParty .endm - + .macro multi_fixed_2_vs_2 trainer1Id:req, trainer1LoseText:req, trainer2Id:req, trainer2LoseText:req, partnerId:req, partnerPicId:req special SavePlayerParty trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons trainerbattle TRAINER_BATTLE_SET_TRAINER_B, \trainer2Id, 0, NULL, \trainer2LoseText @ set second trainer mons multi_do_fixed MULTI_BATTLE_2_VS_2, \partnerId, \partnerPicId .endm - + .macro multi_fixed_2_vs_1 trainer1Id:req, trainer1LoseText:req, partnerId:req, partnerPicId:req special SavePlayerParty trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons multi_do_fixed MULTI_BATTLE_2_VS_1, \partnerId, \partnerPicId .endm - + @ Wild mons need to be assigned to gEnemyParty 0 and 3 slots, other slots need to be cleared out. .macro multi_fixed_wild partnerId:req, partnerPicId:req special SavePlayerParty diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 98a17712e215..25222740fc98 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -1788,7 +1788,7 @@ .macro setzeffect various BS_ATTACKER, VARIOUS_SET_Z_EFFECT .endm - + .macro consumeberry battler:req, restoreItem=FALSE various \battler, VARIOUS_CONSUME_BERRY .byte \restoreItem diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 26391bd4a68d..c7a899eb45ae 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -276,7 +276,7 @@ .2byte SPECIAL_\function .endm - @ Blocks script execution until a command or C code manually unblocks it. Generally used with specific + @ Blocks script execution until a command or C code manually unblocks it. Generally used with specific @ commands and specials. Calling ScriptContext_Enable for instance will allow execution to continue. .macro waitstate .byte 0x27 @@ -985,7 +985,7 @@ .endm @ Gives the player a Pokémon of the specified species and level, holding the specified item. The trailing 0s are unused parameters. - @ VAR_RESULT will be set to MON_GIVEN_TO_PARTY, MON_GIVEN_TO_PC, or MON_CANT_GIVE depending on the outcome. + @ VAR_RESULT will be set to MON_GIVEN_TO_PARTY, MON_GIVEN_TO_PC, or MON_CANT_GIVE depending on the outcome. .macro givemon species:req, level:req, item=ITEM_NONE .byte 0x79 .2byte \species @@ -997,7 +997,7 @@ .endm @ Gives the player an Egg of the specified species. - @ VAR_RESULT will be set to MON_GIVEN_TO_PARTY, MON_GIVEN_TO_PC, or MON_CANT_GIVE depending on the outcome. + @ VAR_RESULT will be set to MON_GIVEN_TO_PARTY, MON_GIVEN_TO_PC, or MON_CANT_GIVE depending on the outcome. .macro giveegg species:req .byte 0x7a .2byte \species @@ -1415,7 +1415,7 @@ .2byte \out .endm - @ Gives 'count' coins to the player, up to a total of MAX_COINS. + @ Gives 'count' coins to the player, up to a total of MAX_COINS. @ If the player already has MAX_COINS then VAR_RESULT is set to TRUE, otherwise it is set to FALSE. .macro addcoins count:req .byte 0xb4 @@ -1893,7 +1893,7 @@ @ Gives 'amount' of the specified 'item' to the player and prints a message with fanfare. @ If the player doesn't have space for all the items then as many are added as possible, the - @ message indicates there is no room, and VAR_RESULT is set to FALSE. + @ message indicates there is no room, and VAR_RESULT is set to FALSE. @ Otherwise VAR_RESULT is set to TRUE, and the message indicates they have received the item(s). .macro giveitem item:req, amount=1 setorcopyvar VAR_0x8000, \item diff --git a/asm/macros/music_voice.inc b/asm/macros/music_voice.inc index 1460efe9e3a7..a4bbbcba63a7 100644 --- a/asm/macros/music_voice.inc +++ b/asm/macros/music_voice.inc @@ -150,13 +150,13 @@ .4byte \sample .byte 0xff, 0, 0xff, 0 .endm - + .macro cry_uncomp sample @ not compressed .byte 0x0, 60, 0, 0 .4byte \sample .byte 0xff, 0, 0xff, 0 .endm - + .macro cry_reverse_uncomp sample @ not compressed .byte 0x10, 60, 0, 0 .4byte \sample diff --git a/charmap.txt b/charmap.txt index 980a3e5dd868..2cb67a86136e 100644 --- a/charmap.txt +++ b/charmap.txt @@ -79,6 +79,7 @@ SUPER_RE = A0 '?' = AC '.' = AD '-' = AE +'_' = AE @ For autogenerating strings based on label names. Not using {UNDERSCORE} on purpose due to how bad it looks. '·' = AF '…' = B0 '“' = B1 diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index f83d437a5dcb..c9dbfd2eec36 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -14196,7 +14196,7 @@ TerrainPulseElectric: createvisualtask AnimTask_SwayMon, 5, 0, 4, 51200, 24, ANIM_TARGET createvisualtask AnimTask_BlendColorCycle, 2, 4, 2, 2, 0, 12, RGB(27, 27, 0) goto TerrainPulseEnd - + TerrainPulseGrass: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_DRAGON_PULSE, 0, 12, 12, RGB(11, 26, 11) waitforvisualfinish @@ -14218,7 +14218,7 @@ TerrainPulseFairy: createvisualtask AnimTask_SwayMon, 5, 0, 4, 51200, 24, ANIM_TARGET createvisualtask AnimTask_BlendColorCycle, 2, 4, 2, 2, 0, 12, RGB(31, 24, 31) goto TerrainPulseEnd - + TerrainPulsePsychic: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_DRAGON_PULSE, 0, 12, 12, RGB(27, 0, 13) waitforvisualfinish @@ -24740,7 +24740,7 @@ General_RestoreBg: restorebg waitbgfadein end - + end General_ZMoveActivate: @@ -24839,15 +24839,15 @@ General_PrimalReversion:: jumpargeq 0x1, ITEM_BLUE_ORB, General_PrimalReversion_Alpha General_PrimalReversion_Alpha: loadspritegfx ANIM_TAG_ALPHA_STONE - loadspritegfx ANIM_TAG_PRIMAL_PARTICLES + loadspritegfx ANIM_TAG_MEGA_PARTICLES loadspritegfx ANIM_TAG_ALPHA_SYMBOL monbg ANIM_ATTACKER setalpha 12, 8 loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 13, 3 createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 6, 0, 11, RGB(31, 31, 11) - call PrimalReversionParticles - call PrimalReversionParticles - call PrimalReversionParticles + call MegaEvolutionParticles + call MegaEvolutionParticles + call MegaEvolutionParticles waitforvisualfinish playsewithpan SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER createsprite gAlphaStoneSpriteTemplate, ANIM_ATTACKER, 41, 0, 0, 0, 0 @@ -24865,15 +24865,15 @@ General_PrimalReversion_Alpha: end General_PrimalReversion_Omega: loadspritegfx ANIM_TAG_OMEGA_STONE - loadspritegfx ANIM_TAG_PRIMAL_PARTICLES + loadspritegfx ANIM_TAG_MEGA_PARTICLES loadspritegfx ANIM_TAG_OMEGA_SYMBOL monbg ANIM_ATTACKER setalpha 12, 8 loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 13, 3 createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 6, 0, 11, RGB(31, 31, 11) - call PrimalReversionParticles - call PrimalReversionParticles - call PrimalReversionParticles + call MegaEvolutionParticles + call MegaEvolutionParticles + call MegaEvolutionParticles waitforvisualfinish playsewithpan SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER createsprite gOmegaStoneSpriteTemplate, ANIM_ATTACKER, 41, 0, 0, 0, 0 @@ -24889,22 +24889,6 @@ General_PrimalReversion_Omega: clearmonbg ANIM_ATK_PARTNER blendoff end -PrimalReversionParticles: - createsprite gPrimalParticlesSpriteTemplate, ANIM_ATTACKER, 2, 40, -10, 13 - delay 3 - createsprite gPrimalParticlesSpriteTemplate, ANIM_ATTACKER, 2, -35, -10, 13 - delay 3 - createsprite gPrimalParticlesSpriteTemplate, ANIM_ATTACKER, 2, 15, -40, 13 - delay 3 - createsprite gPrimalParticlesSpriteTemplate, ANIM_ATTACKER, 2, -10, -32, 13 - delay 3 - createsprite gPrimalParticlesSpriteTemplate, ANIM_ATTACKER, 2, 25, -20, 13 - delay 3 - createsprite gPrimalParticlesSpriteTemplate, ANIM_ATTACKER, 2, -40, -20, 13 - delay 3 - createsprite gPrimalParticlesSpriteTemplate, ANIM_ATTACKER, 2, 5, -40, 13 - delay 3 - return General_AffectionHangedOn:: loadspritegfx ANIM_TAG_RED_HEART @@ -25263,8 +25247,8 @@ FinishSupersonicSkystrike: call UnsetPsychicBg waitforvisualfinish end - - + + Move_ACID_DOWNPOUR: loadspritegfx ANIM_TAG_BLUE_ORB @ reversal loadspritegfx ANIM_TAG_POISON_JAB @ poison jab @@ -25951,7 +25935,7 @@ NeverendingNightmareGeyser: createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 return - + Move_CORKSCREW_CRASH:: loadspritegfx ANIM_TAG_SPIKES @metal bits loadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT @charge @@ -26669,7 +26653,7 @@ HavocSpearSparkTarget: @ launchtemplate gSparkElectricityFlashingSpriteTemplate 0x4 0x8 0x0 0x0 0x20 0xc SOUND_PAN_ATTACKER 0x14 0x2 0x8000 launchtemplate gSparkElectricityFlashingSpriteTemplate 0x4 0x8 0x0 0x0 0x10 0xc SOUND_PAN_ATTACKER 0x14 0x2 0x8000 return - + Move_SHATTERED_PSYCHE:: loadspritegfx ANIM_TAG_IMPACT @hit @@ -29127,7 +29111,7 @@ OceanicOperettaExplosion: launchtemplate gOceanOperaExplosionSpriteTemplate 0x33 0x4 0x10 0x10 ANIM_TARGET 0x1 delay 0x6 return - + Move_SPLINTERED_STORMSHARDS:: loadspritegfx ANIM_TAG_ROCKS @rock @@ -29388,7 +29372,7 @@ SplinteredStormshardsFinishFadeReturn: return -Move_LETS_SNUGGLE_FOREVER:: +Move_LETS_SNUGGLE_FOREVER:: loadspritegfx ANIM_TAG_MAGENTA_HEART @sharm loadspritegfx ANIM_TAG_MUSIC_NOTES @music note loadspritegfx ANIM_TAG_SMALL_BUBBLES @fake tears diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 31c284e7dc99..3c4b0ef2b73b 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -511,7 +511,7 @@ BattleScript_BeakBlastSetUp:: setbeakblast BS_ATTACKER printstring STRINGID_EMPTYSTRING3 waitmessage 1 - playanimation BS_ATTACKER, B_ANIM_BEAK_BLAST_SETUP, NULL + playanimation BS_ATTACKER, B_ANIM_BEAK_BLAST_SETUP, NULL printstring STRINGID_HEATUPBEAK waitmessage B_WAIT_TIME_LONG end2 @@ -601,7 +601,7 @@ BattleScript_ScaleShotEnd:: moveendcase MOVEEND_SYNCHRONIZE_TARGET moveendfrom MOVEEND_STATUS_IMMUNITY_ABILITIES end - + BattleScript_EffectSkyDrop: jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_SkyDropTurn2 attackcanceler @@ -5648,7 +5648,7 @@ BattleScript_EffectRolePlay:: pause 20 destroyabilitypopup pause 40 -.endif +.endif printstring STRINGID_PKMNCOPIEDFOE waitmessage B_WAIT_TIME_LONG switchinabilities BS_ATTACKER @@ -9625,7 +9625,7 @@ BattleScript_StatUpZMove:: waitmessage B_WAIT_TIME_LONG BattleScript_StatUpZMoveEnd: return - + BattleScript_HealReplacementZMove:: playanimation BS_SCRIPTING B_ANIM_WISH_HEAL 0x0 printfromtable gZEffectStringIds @@ -9836,7 +9836,7 @@ BattleScript_NeutralizingGasExitsLoop: jumpifbytenotequal gBattlerTarget, sByteFour, BattleScript_NeutralizingGasExitsLoop @ SOMEHOW, comparing to gBattlersCount is problematic. restoretarget return - + BattleScript_MagicianActivates:: call BattleScript_AbilityPopUp call BattleScript_ItemSteal diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc index d54cf83570e9..3167b17d8164 100644 --- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc +++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc @@ -225,6 +225,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentType:: call_if_eq VAR_0x8005, TYPE_ICE, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesIce call_if_eq VAR_0x8005, TYPE_DRAGON, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDragon call_if_eq VAR_0x8005, TYPE_DARK, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDark + call_if_eq VAR_0x8005, TYPE_FAIRY, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFairy call_if_eq VAR_0x8005, NUMBER_OF_MON_TYPES, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonType return @@ -296,6 +297,10 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesDark:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDarkType, MSGBOX_DEFAULT return +BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentUsesFairy:: + msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFairyType, MSGBOX_DEFAULT + return + BattleFrontier_BattleFactoryPreBattleRoom_EventScript_OpponentHasNoMostCommonType:: msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerHasNoClearFavorite, MSGBOX_DEFAULT return @@ -559,6 +564,10 @@ BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInDarkType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the DARK type.$" +BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInFairyType: + .string "The TRAINER is apparently skilled\n" + .string "in the handling of the FAIRY type.$" + BattleFrontier_BattleFactoryPreBattleRoom_Text_TrainerSkilledInSteelType: .string "The TRAINER is apparently skilled\n" .string "in the handling of the STEEL type.$" diff --git a/data/maps/SkyPillar_Top/map.json b/data/maps/SkyPillar_Top/map.json index a980c6b07baf..2fee121065c2 100644 --- a/data/maps/SkyPillar_Top/map.json +++ b/data/maps/SkyPillar_Top/map.json @@ -56,7 +56,7 @@ "x": 14, "y": 9, "elevation": 3, - "var": "VAR_SKY_PILLAR_RAQUAZA_CRY_DONE", + "var": "VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE", "var_value": "0", "script": "SkyPillar_Top_EventScript_AwakenRayquaza" } diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc index 7b65d9e257b0..19cd7e4f42b6 100644 --- a/data/maps/SkyPillar_Top/scripts.inc +++ b/data/maps/SkyPillar_Top/scripts.inc @@ -128,7 +128,7 @@ SkyPillar_Top_EventScript_AwakenRayquaza:: special RemoveCameraObject setvar VAR_SOOTOPOLIS_CITY_STATE, 5 setvar VAR_SKY_PILLAR_STATE, 1 - setvar VAR_SKY_PILLAR_RAQUAZA_CRY_DONE, 1 + setvar VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE, 1 releaseall end diff --git a/data/scripts/new_game.inc b/data/scripts/new_game.inc index 7c5c3fc7deb3..e9c8dd8d56c0 100644 --- a/data/scripts/new_game.inc +++ b/data/scripts/new_game.inc @@ -38,7 +38,7 @@ EventScript_ResetAllBerries:: setberrytree BERRY_TREE_ROUTE_117_WEPEAR_3, ITEM_TO_BERRY(ITEM_WEPEAR_BERRY), BERRY_STAGE_BERRIES setberrytree BERRY_TREE_ROUTE_117_WEPEAR_2, ITEM_TO_BERRY(ITEM_WEPEAR_BERRY), BERRY_STAGE_BERRIES setberrytree BERRY_TREE_ROUTE_117_WEPEAR_1, ITEM_TO_BERRY(ITEM_WEPEAR_BERRY), BERRY_STAGE_BERRIES - + @ Route 112 setberrytree BERRY_TREE_ROUTE_112_RAWST_2, ITEM_TO_BERRY(ITEM_RAWST_BERRY), BERRY_STAGE_BERRIES setberrytree BERRY_TREE_ROUTE_112_PECHA_2, ITEM_TO_BERRY(ITEM_PECHA_BERRY), BERRY_STAGE_BERRIES diff --git a/data/scripts/roulette.inc b/data/scripts/roulette.inc index 7163a449aac3..fcb09bef2789 100644 --- a/data/scripts/roulette.inc +++ b/data/scripts/roulette.inc @@ -22,7 +22,7 @@ Roulette_EventScript_Play:: special PlayRoulette waitstate end - + Roulette_Text_PlayMinimumWagerIsX:: .string "The minimum wager at this table\n" .string "is {STR_VAR_1}. Do you want to play?$" diff --git a/docs/legacy_WSL1_INSTALL.md b/docs/legacy_WSL1_INSTALL.md index b9840d1c8297..7d40960f3bf9 100644 --- a/docs/legacy_WSL1_INSTALL.md +++ b/docs/legacy_WSL1_INSTALL.md @@ -17,8 +17,8 @@ cd /mnt/c/Users//Downloads ``` - > Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. - > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. + > Note 1: The Windows C:\ drive is called /mnt/c/ in WSL. + > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users//Downloads folder"`. > Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed 4. Once the directory has been changed to the folder containing the devkitPro pacman package, run the following commands to install devkitARM. diff --git a/gflib/text.c b/gflib/text.c index c7efdccce3bb..e7a7d5957b3b 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -73,7 +73,7 @@ static const u8 sDarkDownArrowTiles[] = INCBIN_U8("graphics/fonts/down_arrow_alt static const u8 sUnusedFRLGBlankedDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_blanked_down_arrow.4bpp"); static const u8 sUnusedFRLGDownArrow[] = INCBIN_U8("graphics/fonts/unused_frlg_down_arrow.4bpp"); static const u8 sDownArrowYCoords[] = { 0, 1, 2, 1 }; -static const u8 sWindowVerticalScrollSpeeds[] = { +static const u8 sWindowVerticalScrollSpeeds[] = { [OPTIONS_TEXT_SPEED_SLOW] = 1, [OPTIONS_TEXT_SPEED_MID] = 2, [OPTIONS_TEXT_SPEED_FAST] = 4, @@ -299,7 +299,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, voi else { sTempTextPrinter.textSpeed = 0; - + // Render all text (up to limit) at once for (j = 0; j < 0x400; ++j) { diff --git a/gflib/text.h b/gflib/text.h index c07817290d3c..a88cb990e18f 100644 --- a/gflib/text.h +++ b/gflib/text.h @@ -148,7 +148,6 @@ void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor); void DecompressGlyphTile(const void *src_, void *dest_); void CopyGlyphToWindow(struct TextPrinter *x); void ClearTextSpan(struct TextPrinter *textPrinter, u32 width); -u8 GetMenuCursorDimensionByFont(u8, u8); void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter); void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter); diff --git a/graphics/battle_anims/backgrounds/windstorm_brew.pal b/graphics/battle_anims/backgrounds/windstorm_brew.pal new file mode 100644 index 000000000000..2feb0f59e0dc --- /dev/null +++ b/graphics/battle_anims/backgrounds/windstorm_brew.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +230 148 98 +255 255 222 +230 230 197 +213 205 172 +189 180 148 +172 156 123 +156 131 106 +0 0 0 +0 0 0 +0 0 0 +142 204 143 +123 180 122 +112 165 99 +89 130 87 +67 114 65 +55 91 56 diff --git a/graphics/battle_anims/backgrounds/windstorm_brew.png b/graphics/battle_anims/backgrounds/windstorm_brew.png deleted file mode 100644 index 2a2895266226..000000000000 Binary files a/graphics/battle_anims/backgrounds/windstorm_brew.png and /dev/null differ diff --git a/graphics/battle_anims/sprites/primal_particles.png b/graphics/battle_anims/sprites/primal_particles.png deleted file mode 100644 index 6fdf09d96e0d..000000000000 Binary files a/graphics/battle_anims/sprites/primal_particles.png and /dev/null differ diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index c275c37601c4..8d9db88eaa92 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -112,35 +112,35 @@ $(TILESETGFXDIR)/secondary/sootopolis/tiles.4bpp: %.4bpp: %.png SOOTOPOLISANIMDIR := $(TILESETGFXDIR)/secondary/sootopolis/anim $(SOOTOPOLISANIMDIR)/stormy_water/0.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/0_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/0_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/0_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/1.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/1_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/1_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/1_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/2.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/2_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/2_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/2_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/3.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/3_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/3_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/3_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/4.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/4_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/4_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/4_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/5.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/5_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/5_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/5_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/6.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/6_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/6_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/6_groudon.4bpp @cat $^ >$@ $(SOOTOPOLISANIMDIR)/stormy_water/7.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/7_kyogre.4bpp \ - $(SOOTOPOLISANIMDIR)/stormy_water/7_groudon.4bpp + $(SOOTOPOLISANIMDIR)/stormy_water/7_groudon.4bpp @cat $^ >$@ $(TILESETGFXDIR)/secondary/battle_frontier_outside_west/tiles.4bpp: %.4bpp: %.png @@ -690,7 +690,7 @@ $(OBJEVENTGFXDIR)/pics/effects/unknown_4F6D38/0.4bpp: %.4bpp: %.png $(INTERFACEGFXDIR)/selector_outline.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 8 -Wnum_tiles - + $(BATTRANSGFXDIR)/frontier_logo_center.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 43 -Wnum_tiles @@ -718,7 +718,7 @@ $(PKNAVGFXDIR)/header.4bpp: %.4bpp: %.png $(PKNAVGFXDIR)/device_outline.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 53 -Wnum_tiles - + $(PKNAVGFXDIR)/match_call/ui.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 13 -Wnum_tiles diff --git a/include/battle_util.h b/include/battle_util.h index 9dcd0c91665c..28a488472d52 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -114,6 +114,7 @@ bool8 HasNoMonsToSwitch(u8 battlerId, u8 r1, u8 r2); u8 TryWeatherFormChange(u8 battlerId); bool32 TryChangeBattleWeather(u8 battler, u32 weatherEnumId, bool32 viaAbility); u8 AbilityBattleEffects(u8 caseID, u8 battlerId, u16 ability, u8 special, u16 moveArg); +bool32 IsNeutralizingGasOnField(void); u32 GetBattlerAbility(u8 battlerId); u32 IsAbilityOnSide(u32 battlerId, u32 ability); u32 IsAbilityOnOpposingSide(u32 battlerId, u32 ability); diff --git a/include/constants/battle_ai.h b/include/constants/battle_ai.h index d48827683a58..5dbbccf4892e 100644 --- a/include/constants/battle_ai.h +++ b/include/constants/battle_ai.h @@ -56,6 +56,7 @@ #define AI_FLAG_STALL (1 << 13) // AI stalls battle and prefers secondary damage/trapping/etc. TODO not finished #define AI_FLAG_SCREENER (1 << 14) // AI prefers screening effects like reflect, mist, etc. TODO unfinished #define AI_FLAG_SMART_SWITCHING (1 << 15) // AI includes a lot more switching checks +#define AI_FLAG_ACE_POKEMON (1 << 16) // AI has Ace Pokemon. The last Pokemon in the party will not used until last remaining. // 'other' ai logic flags #define AI_FLAG_ROAMING (1 << 29) diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h index db2efd8d0589..52b20ecaa43a 100644 --- a/include/constants/battle_anim.h +++ b/include/constants/battle_anim.h @@ -392,9 +392,8 @@ #define ANIM_TAG_STONE_PILLAR_MULTI (ANIM_SPRITES_START + 380) #define ANIM_TAG_ALPHA_SYMBOL (ANIM_SPRITES_START + 381) #define ANIM_TAG_OMEGA_SYMBOL (ANIM_SPRITES_START + 382) -#define ANIM_TAG_PRIMAL_PARTICLES (ANIM_SPRITES_START + 383) -#define ANIM_TAG_STEEL_BEAM (ANIM_SPRITES_START + 384) -#define ANIM_TAG_POLTERGEIST (ANIM_SPRITES_START + 385) +#define ANIM_TAG_STEEL_BEAM (ANIM_SPRITES_START + 383) +#define ANIM_TAG_POLTERGEIST (ANIM_SPRITES_START + 384) // battlers #define ANIM_ATTACKER 0 @@ -461,7 +460,7 @@ #define BG_WATER_2 41 #define BG_POISON 42 #define BG_AEROBLAST 43 -#define BG_HURRICANE 44 +#define BG_HURRICANE 44 #define BG_ELECTRIC_TERRAIN 45 #define BG_GRASSY_TERRAIN 46 #define BG_MISTY_TERRAIN 47 diff --git a/include/constants/battle_config.h b/include/constants/battle_config.h index b8d7c9f8ae0b..4b6c0cc1ec06 100644 --- a/include/constants/battle_config.h +++ b/include/constants/battle_config.h @@ -86,6 +86,7 @@ #define B_HEAL_BLOCKING GEN_LATEST // In Gen5+, Heal Block prevents healing by Black Sludge, Leftovers, Shell Bell. Affected Pokémon will not consume held HP-restoring Berries or Berry Juice. // Draining abilities will not heal but will prevent damage. In Gen6+, Heal Block prevents the use of most HP-draining moves. #define B_ROOTED_GROUNDING GEN_LATEST // In Gen4+, Ingrain causes the affected Pokémon to become grounded. +#define B_METRONOME_MOVES GEN_LATEST // This config will determine up to which generation will Metronome pull moves from. // Ability settings #define B_EXPANDED_ABILITY_NAMES TRUE // If TRUE, ability names are increased from 12 characters to 16 characters. diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index 4ef2a3a82dc9..4bce51a4553b 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -379,7 +379,7 @@ #define STRINGID_PKMNBOXLANETTESPCFULL 378 #define STRINGID_TRAINER1WINTEXT 379 #define STRINGID_TRAINER2WINTEXT 380 - + #define STRINGID_ENDUREDSTURDY 381 #define STRINGID_POWERHERB 382 #define STRINGID_HURTBYITEM 383 diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 98b32ffd5197..189007045339 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -325,9 +325,6 @@ #define FORM_BATTLE_BEGIN 5 #define FORM_BATTLE_END 6 -#define NUM_MALE_LINK_FACILITY_CLASSES 8 -#define NUM_FEMALE_LINK_FACILITY_CLASSES 8 - #define MON_PIC_WIDTH 64 #define MON_PIC_HEIGHT 64 #define MON_PIC_SIZE (MON_PIC_WIDTH * MON_PIC_HEIGHT / 2) diff --git a/include/constants/union_room.h b/include/constants/union_room.h index f47a8723ff58..5c0c57a6062a 100644 --- a/include/constants/union_room.h +++ b/include/constants/union_room.h @@ -13,6 +13,10 @@ #define UNION_ROOM_MAX_LEVEL 30 +// The number of possible trainer classes for a trainer of a given gender in the Union Room. +// This value is necessarily a power of 2 because of the way it's treated in GetUnionRoomTrainerPic / GetUnionRoomTrainerClass +#define NUM_UNION_ROOM_CLASSES (1 << 3) // 8 + #define ACTIVITY_NONE 0 #define ACTIVITY_BATTLE_SINGLE 1 #define ACTIVITY_BATTLE_DOUBLE 2 diff --git a/include/constants/vars.h b/include/constants/vars.h index 8128b6f3210a..bd988c789b8e 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -46,235 +46,235 @@ #define VAR_OBJ_GFX_ID_F 0x401F // general purpose vars -#define VAR_RECYCLE_GOODS 0x4020 -#define VAR_REPEL_STEP_COUNT 0x4021 -#define VAR_ICE_STEP_COUNT 0x4022 -#define VAR_STARTER_MON 0x4023 // 0=Treecko, 1=Torchic, 2=Mudkip -#define VAR_MIRAGE_RND_H 0x4024 -#define VAR_MIRAGE_RND_L 0x4025 -#define VAR_SECRET_BASE_MAP 0x4026 -#define VAR_CYCLING_ROAD_RECORD_COLLISIONS 0x4027 -#define VAR_CYCLING_ROAD_RECORD_TIME_L 0x4028 -#define VAR_CYCLING_ROAD_RECORD_TIME_H 0x4029 -#define VAR_FRIENDSHIP_STEP_COUNTER 0x402A -#define VAR_POISON_STEP_COUNTER 0x402B -#define VAR_RESET_RTC_ENABLE 0x402C -#define VAR_ENIGMA_BERRY_AVAILABLE 0x402D -#define VAR_WONDER_NEWS_COUNTER 0x402E +#define VAR_RECYCLE_GOODS 0x4020 +#define VAR_REPEL_STEP_COUNT 0x4021 +#define VAR_ICE_STEP_COUNT 0x4022 +#define VAR_STARTER_MON 0x4023 // 0=Treecko, 1=Torchic, 2=Mudkip +#define VAR_MIRAGE_RND_H 0x4024 +#define VAR_MIRAGE_RND_L 0x4025 +#define VAR_SECRET_BASE_MAP 0x4026 +#define VAR_CYCLING_ROAD_RECORD_COLLISIONS 0x4027 +#define VAR_CYCLING_ROAD_RECORD_TIME_L 0x4028 +#define VAR_CYCLING_ROAD_RECORD_TIME_H 0x4029 +#define VAR_FRIENDSHIP_STEP_COUNTER 0x402A +#define VAR_POISON_STEP_COUNTER 0x402B +#define VAR_RESET_RTC_ENABLE 0x402C +#define VAR_ENIGMA_BERRY_AVAILABLE 0x402D +#define VAR_WONDER_NEWS_COUNTER 0x402E -#define VAR_FRONTIER_MANIAC_FACILITY 0x402F -#define VAR_FRONTIER_GAMBLER_CHALLENGE 0x4030 -#define VAR_FRONTIER_GAMBLER_SET_CHALLENGE 0x4031 -#define VAR_FRONTIER_GAMBLER_AMOUNT_BET 0x4032 -#define VAR_FRONTIER_GAMBLER_STATE 0x4033 +#define VAR_FRONTIER_MANIAC_FACILITY 0x402F +#define VAR_FRONTIER_GAMBLER_CHALLENGE 0x4030 +#define VAR_FRONTIER_GAMBLER_SET_CHALLENGE 0x4031 +#define VAR_FRONTIER_GAMBLER_AMOUNT_BET 0x4032 +#define VAR_FRONTIER_GAMBLER_STATE 0x4033 -#define VAR_DEOXYS_ROCK_STEP_COUNT 0x4034 -#define VAR_DEOXYS_ROCK_LEVEL 0x4035 -#define VAR_PC_BOX_TO_SEND_MON 0x4036 -#define VAR_ABNORMAL_WEATHER_LOCATION 0x4037 -#define VAR_ABNORMAL_WEATHER_STEP_COUNTER 0x4038 -#define VAR_SHOULD_END_ABNORMAL_WEATHER 0x4039 -#define VAR_FARAWAY_ISLAND_STEP_COUNTER 0x403A -#define VAR_REGICE_STEPS_1 0x403B -#define VAR_REGICE_STEPS_2 0x403C -#define VAR_REGICE_STEPS_3 0x403D -#define VAR_ALTERING_CAVE_WILD_SET 0x403E -#define VAR_DISTRIBUTE_EON_TICKET 0x403F // This var is read and written, but is always zero. The only way to obtain the Eon Ticket in Emerald is via Record Mixing -#define VAR_DAYS 0x4040 -#define VAR_FANCLUB_FAN_COUNTER 0x4041 -#define VAR_FANCLUB_LOSE_FAN_TIMER 0x4042 -#define VAR_DEPT_STORE_FLOOR 0x4043 -#define VAR_TRICK_HOUSE_LEVEL 0x4044 -#define VAR_POKELOT_PRIZE_ITEM 0x4045 -#define VAR_NATIONAL_DEX 0x4046 -#define VAR_SEEDOT_SIZE_RECORD 0x4047 -#define VAR_ASH_GATHER_COUNT 0x4048 -#define VAR_BIRCH_STATE 0x4049 -#define VAR_CRUISE_STEP_COUNT 0x404A -#define VAR_POKELOT_RND1 0x404B -#define VAR_POKELOT_RND2 0x404C -#define VAR_POKELOT_PRIZE_PLACE 0x404D -#define VAR_UNUSED_0x404E 0x404E // Unused Var -#define VAR_LOTAD_SIZE_RECORD 0x404F -#define VAR_LITTLEROOT_TOWN_STATE 0x4050 -#define VAR_OLDALE_TOWN_STATE 0x4051 -#define VAR_DEWFORD_TOWN_STATE 0x4052 // Unused Var -#define VAR_LAVARIDGE_TOWN_STATE 0x4053 -#define VAR_CURRENT_SECRET_BASE 0x4054 // was probably allocated for VAR_FALLARBOR_TOWN_STATE at one point -#define VAR_VERDANTURF_TOWN_STATE 0x4055 // Unused Var -#define VAR_PACIFIDLOG_TOWN_STATE 0x4056 // Unused Var -#define VAR_PETALBURG_CITY_STATE 0x4057 -#define VAR_SLATEPORT_CITY_STATE 0x4058 -#define VAR_MAUVILLE_CITY_STATE 0x4059 // Unused Var -#define VAR_RUSTBORO_CITY_STATE 0x405A -#define VAR_FORTREE_CITY_STATE 0x405B // Unused Var -#define VAR_LILYCOVE_CITY_STATE 0x405C // Unused Var -#define VAR_MOSSDEEP_CITY_STATE 0x405D -#define VAR_SOOTOPOLIS_CITY_STATE 0x405E -#define VAR_EVER_GRANDE_CITY_STATE 0x405F // Unused Var -#define VAR_ROUTE101_STATE 0x4060 -#define VAR_ROUTE102_STATE 0x4061 // Unused Var -#define VAR_ROUTE103_STATE 0x4062 // Unused Var -#define VAR_ROUTE104_STATE 0x4063 -#define VAR_ROUTE105_STATE 0x4064 // Unused Var -#define VAR_ROUTE106_STATE 0x4065 // Unused Var -#define VAR_ROUTE107_STATE 0x4066 // Unused Var -#define VAR_ROUTE108_STATE 0x4067 // Unused Var -#define VAR_ROUTE109_STATE 0x4068 // Unused Var -#define VAR_ROUTE110_STATE 0x4069 -#define VAR_ROUTE111_STATE 0x406A // Unused Var -#define VAR_ROUTE112_STATE 0x406B // Unused Var -#define VAR_ROUTE113_STATE 0x406C // Unused Var -#define VAR_ROUTE114_STATE 0x406D // Unused Var -#define VAR_ROUTE115_STATE 0x406E // Unused Var -#define VAR_ROUTE116_STATE 0x406F -#define VAR_ROUTE117_STATE 0x4070 // Unused Var -#define VAR_ROUTE118_STATE 0x4071 -#define VAR_ROUTE119_STATE 0x4072 -#define VAR_ROUTE120_STATE 0x4073 // Unused Var -#define VAR_ROUTE121_STATE 0x4074 -#define VAR_ROUTE122_STATE 0x4075 // Unused Var -#define VAR_ROUTE123_STATE 0x4076 // Unused Var -#define VAR_ROUTE124_STATE 0x4077 // Unused Var -#define VAR_ROUTE125_STATE 0x4078 // Unused Var -#define VAR_ROUTE126_STATE 0x4079 // Unused Var -#define VAR_ROUTE127_STATE 0x407A // Unused Var -#define VAR_ROUTE128_STATE 0x407B -#define VAR_ROUTE129_STATE 0x407C // Unused Var -#define VAR_ROUTE130_STATE 0x407D // Unused Var -#define VAR_ROUTE131_STATE 0x407E // Unused Var -#define VAR_ROUTE132_STATE 0x407F // Unused Var -#define VAR_ROUTE133_STATE 0x4080 // Unused Var -#define VAR_ROUTE134_STATE 0x4081 // Unused Var -#define VAR_LITTLEROOT_HOUSES_STATE_MAY 0x4082 -#define VAR_UNUSED_0x4083 0x4083 // Unused Var -#define VAR_BIRCH_LAB_STATE 0x4084 -#define VAR_PETALBURG_GYM_STATE 0x4085 // 0-1: Wally tutorial, 2-6: 0-4 badges, 7: Defeated Norman, 8: Rematch Norman -#define VAR_CONTEST_HALL_STATE 0x4086 -#define VAR_CABLE_CLUB_STATE 0x4087 -#define VAR_CONTEST_TYPE 0x4088 -#define VAR_SECRET_BASE_INITIALIZED 0x4089 -#define VAR_CONTEST_PRIZE_PICKUP 0x408A -#define VAR_UNUSED_0x408B 0x408B // Unused Var -#define VAR_LITTLEROOT_HOUSES_STATE_BRENDAN 0x408C -#define VAR_LITTLEROOT_RIVAL_STATE 0x408D -#define VAR_BOARD_BRINEY_BOAT_STATE 0x408E -#define VAR_DEVON_CORP_3F_STATE 0x408F -#define VAR_BRINEY_HOUSE_STATE 0x4090 -#define VAR_UNUSED_0x4091 0x4091 // Unused Var -#define VAR_LITTLEROOT_INTRO_STATE 0x4092 -#define VAR_MAUVILLE_GYM_STATE 0x4093 -#define VAR_LILYCOVE_MUSEUM_2F_STATE 0x4094 -#define VAR_LILYCOVE_FAN_CLUB_STATE 0x4095 -#define VAR_BRINEY_LOCATION 0x4096 -#define VAR_INIT_SECRET_BASE 0x4097 -#define VAR_PETALBURG_WOODS_STATE 0x4098 -#define VAR_LILYCOVE_CONTEST_LOBBY_STATE 0x4099 -#define VAR_RUSTURF_TUNNEL_STATE 0x409A -#define VAR_UNUSED_0x409B 0x409B // Unused Var -#define VAR_ELITE_4_STATE 0x409C -#define VAR_UNUSED_0x409D 0x409D // Unused Var -#define VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE 0x409E -#define VAR_MOSSDEEP_SPACE_CENTER_STATE 0x409F -#define VAR_SLATEPORT_HARBOR_STATE 0x40A0 -#define VAR_UNUSED_0x40A1 0x40A1 // Unused var -#define VAR_SEAFLOOR_CAVERN_STATE 0x40A2 -#define VAR_CABLE_CAR_STATION_STATE 0x40A3 -#define VAR_SAFARI_ZONE_STATE 0x40A4 // 0: In or out of SZ, 1: Player exiting SZ, 2: Player entering SZ -#define VAR_TRICK_HOUSE_BEING_WATCHED_STATE 0x40A5 -#define VAR_TRICK_HOUSE_FOUND_TRICK_MASTER 0x40A6 -#define VAR_TRICK_HOUSE_ENTRANCE_STATE 0x40A7 -#define VAR_UNUSED_0x40A8 0x40A8 // Unused Var -#define VAR_CYCLING_CHALLENGE_STATE 0x40A9 -#define VAR_SLATEPORT_MUSEUM_1F_STATE 0x40AA -#define VAR_TRICK_HOUSE_PUZZLE_1_STATE 0x40AB -#define VAR_TRICK_HOUSE_PUZZLE_2_STATE 0x40AC -#define VAR_TRICK_HOUSE_PUZZLE_3_STATE 0x40AD -#define VAR_TRICK_HOUSE_PUZZLE_4_STATE 0x40AE -#define VAR_TRICK_HOUSE_PUZZLE_5_STATE 0x40AF -#define VAR_TRICK_HOUSE_PUZZLE_6_STATE 0x40B0 -#define VAR_TRICK_HOUSE_PUZZLE_7_STATE 0x40B1 -#define VAR_TRICK_HOUSE_PUZZLE_8_STATE 0x40B2 -#define VAR_WEATHER_INSTITUTE_STATE 0x40B3 -#define VAR_SS_TIDAL_STATE 0x40B4 -#define VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR 0x40B5 -#define VAR_TRICK_HOUSE_PUZZLE_7_STATE_2 0x40B6 // Leftover from RS, never set -#define VAR_SLATEPORT_FAN_CLUB_STATE 0x40B7 -#define VAR_UNUSED_0x40B8 0x40B8 // Unused Var -#define VAR_MT_PYRE_STATE 0x40B9 -#define VAR_NEW_MAUVILLE_STATE 0x40BA -#define VAR_UNUSED_0x40BB 0x40BB // Unused Var -#define VAR_BRAVO_TRAINER_BATTLE_TOWER_ON 0x40BC -#define VAR_JAGGED_PASS_ASH_WEATHER 0x40BD -#define VAR_GLASS_WORKSHOP_STATE 0x40BE -#define VAR_METEOR_FALLS_STATE 0x40BF -#define VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE 0x40C0 -#define VAR_TRICK_HOUSE_PRIZE_PICKUP 0x40C1 -#define VAR_PACIFIDLOG_TM_RECEIVED_DAY 0x40C2 -#define VAR_VICTORY_ROAD_1F_STATE 0x40C3 -#define VAR_FOSSIL_RESURRECTION_STATE 0x40C4 -#define VAR_WHICH_FOSSIL_REVIVED 0x40C5 -#define VAR_STEVENS_HOUSE_STATE 0x40C6 -#define VAR_OLDALE_RIVAL_STATE 0x40C7 -#define VAR_JAGGED_PASS_STATE 0x40C8 -#define VAR_SCOTT_PETALBURG_ENCOUNTER 0x40C9 -#define VAR_SKY_PILLAR_STATE 0x40CA -#define VAR_MIRAGE_TOWER_STATE 0x40CB -#define VAR_FOSSIL_MANIAC_STATE 0x40CC -#define VAR_CABLE_CLUB_TUTORIAL_STATE 0x40CD -#define VAR_FRONTIER_BATTLE_MODE 0x40CE -#define VAR_FRONTIER_FACILITY 0x40CF -#define VAR_HAS_ENTERED_BATTLE_FRONTIER 0x40D0 // Var is used like a flag. -#define VAR_SCOTT_STATE 0x40D1 -#define VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE 0x40D2 -#define VAR_DEX_UPGRADE_JOHTO_STARTER_STATE 0x40D3 -#define VAR_SS_TIDAL_SCOTT_STATE 0x40D4 // Always equal to FLAG_MET_SCOTT_ON_SS_TIDAL -#define VAR_ROAMER_POKEMON 0x40D5 // 0 = Latias, 1 = Latios -#define VAR_TRAINER_HILL_IS_ACTIVE 0x40D6 -#define VAR_SKY_PILLAR_RAQUAZA_CRY_DONE 0x40D7 -#define VAR_SOOTOPOLIS_WALLACE_STATE 0x40D8 +#define VAR_DEOXYS_ROCK_STEP_COUNT 0x4034 +#define VAR_DEOXYS_ROCK_LEVEL 0x4035 +#define VAR_PC_BOX_TO_SEND_MON 0x4036 +#define VAR_ABNORMAL_WEATHER_LOCATION 0x4037 +#define VAR_ABNORMAL_WEATHER_STEP_COUNTER 0x4038 +#define VAR_SHOULD_END_ABNORMAL_WEATHER 0x4039 +#define VAR_FARAWAY_ISLAND_STEP_COUNTER 0x403A +#define VAR_REGICE_STEPS_1 0x403B +#define VAR_REGICE_STEPS_2 0x403C +#define VAR_REGICE_STEPS_3 0x403D +#define VAR_ALTERING_CAVE_WILD_SET 0x403E +#define VAR_DISTRIBUTE_EON_TICKET 0x403F // This var is read and written, but is always zero. The only way to obtain the Eon Ticket in Emerald is via Record Mixing +#define VAR_DAYS 0x4040 +#define VAR_FANCLUB_FAN_COUNTER 0x4041 +#define VAR_FANCLUB_LOSE_FAN_TIMER 0x4042 +#define VAR_DEPT_STORE_FLOOR 0x4043 +#define VAR_TRICK_HOUSE_LEVEL 0x4044 +#define VAR_POKELOT_PRIZE_ITEM 0x4045 +#define VAR_NATIONAL_DEX 0x4046 +#define VAR_SEEDOT_SIZE_RECORD 0x4047 +#define VAR_ASH_GATHER_COUNT 0x4048 +#define VAR_BIRCH_STATE 0x4049 +#define VAR_CRUISE_STEP_COUNT 0x404A +#define VAR_POKELOT_RND1 0x404B +#define VAR_POKELOT_RND2 0x404C +#define VAR_POKELOT_PRIZE_PLACE 0x404D +#define VAR_UNUSED_0x404E 0x404E // Unused Var +#define VAR_LOTAD_SIZE_RECORD 0x404F +#define VAR_LITTLEROOT_TOWN_STATE 0x4050 +#define VAR_OLDALE_TOWN_STATE 0x4051 +#define VAR_DEWFORD_TOWN_STATE 0x4052 // Unused Var +#define VAR_LAVARIDGE_TOWN_STATE 0x4053 +#define VAR_CURRENT_SECRET_BASE 0x4054 // was probably allocated for VAR_FALLARBOR_TOWN_STATE at one point +#define VAR_VERDANTURF_TOWN_STATE 0x4055 // Unused Var +#define VAR_PACIFIDLOG_TOWN_STATE 0x4056 // Unused Var +#define VAR_PETALBURG_CITY_STATE 0x4057 +#define VAR_SLATEPORT_CITY_STATE 0x4058 +#define VAR_MAUVILLE_CITY_STATE 0x4059 // Unused Var +#define VAR_RUSTBORO_CITY_STATE 0x405A +#define VAR_FORTREE_CITY_STATE 0x405B // Unused Var +#define VAR_LILYCOVE_CITY_STATE 0x405C // Unused Var +#define VAR_MOSSDEEP_CITY_STATE 0x405D +#define VAR_SOOTOPOLIS_CITY_STATE 0x405E +#define VAR_EVER_GRANDE_CITY_STATE 0x405F // Unused Var +#define VAR_ROUTE101_STATE 0x4060 +#define VAR_ROUTE102_STATE 0x4061 // Unused Var +#define VAR_ROUTE103_STATE 0x4062 // Unused Var +#define VAR_ROUTE104_STATE 0x4063 +#define VAR_ROUTE105_STATE 0x4064 // Unused Var +#define VAR_ROUTE106_STATE 0x4065 // Unused Var +#define VAR_ROUTE107_STATE 0x4066 // Unused Var +#define VAR_ROUTE108_STATE 0x4067 // Unused Var +#define VAR_ROUTE109_STATE 0x4068 // Unused Var +#define VAR_ROUTE110_STATE 0x4069 +#define VAR_ROUTE111_STATE 0x406A // Unused Var +#define VAR_ROUTE112_STATE 0x406B // Unused Var +#define VAR_ROUTE113_STATE 0x406C // Unused Var +#define VAR_ROUTE114_STATE 0x406D // Unused Var +#define VAR_ROUTE115_STATE 0x406E // Unused Var +#define VAR_ROUTE116_STATE 0x406F +#define VAR_ROUTE117_STATE 0x4070 // Unused Var +#define VAR_ROUTE118_STATE 0x4071 +#define VAR_ROUTE119_STATE 0x4072 +#define VAR_ROUTE120_STATE 0x4073 // Unused Var +#define VAR_ROUTE121_STATE 0x4074 +#define VAR_ROUTE122_STATE 0x4075 // Unused Var +#define VAR_ROUTE123_STATE 0x4076 // Unused Var +#define VAR_ROUTE124_STATE 0x4077 // Unused Var +#define VAR_ROUTE125_STATE 0x4078 // Unused Var +#define VAR_ROUTE126_STATE 0x4079 // Unused Var +#define VAR_ROUTE127_STATE 0x407A // Unused Var +#define VAR_ROUTE128_STATE 0x407B +#define VAR_ROUTE129_STATE 0x407C // Unused Var +#define VAR_ROUTE130_STATE 0x407D // Unused Var +#define VAR_ROUTE131_STATE 0x407E // Unused Var +#define VAR_ROUTE132_STATE 0x407F // Unused Var +#define VAR_ROUTE133_STATE 0x4080 // Unused Var +#define VAR_ROUTE134_STATE 0x4081 // Unused Var +#define VAR_LITTLEROOT_HOUSES_STATE_MAY 0x4082 +#define VAR_UNUSED_0x4083 0x4083 // Unused Var +#define VAR_BIRCH_LAB_STATE 0x4084 +#define VAR_PETALBURG_GYM_STATE 0x4085 // 0-1: Wally tutorial, 2-6: 0-4 badges, 7: Defeated Norman, 8: Rematch Norman +#define VAR_CONTEST_HALL_STATE 0x4086 +#define VAR_CABLE_CLUB_STATE 0x4087 +#define VAR_CONTEST_TYPE 0x4088 +#define VAR_SECRET_BASE_INITIALIZED 0x4089 +#define VAR_CONTEST_PRIZE_PICKUP 0x408A +#define VAR_UNUSED_0x408B 0x408B // Unused Var +#define VAR_LITTLEROOT_HOUSES_STATE_BRENDAN 0x408C +#define VAR_LITTLEROOT_RIVAL_STATE 0x408D +#define VAR_BOARD_BRINEY_BOAT_STATE 0x408E +#define VAR_DEVON_CORP_3F_STATE 0x408F +#define VAR_BRINEY_HOUSE_STATE 0x4090 +#define VAR_UNUSED_0x4091 0x4091 // Unused Var +#define VAR_LITTLEROOT_INTRO_STATE 0x4092 +#define VAR_MAUVILLE_GYM_STATE 0x4093 +#define VAR_LILYCOVE_MUSEUM_2F_STATE 0x4094 +#define VAR_LILYCOVE_FAN_CLUB_STATE 0x4095 +#define VAR_BRINEY_LOCATION 0x4096 +#define VAR_INIT_SECRET_BASE 0x4097 +#define VAR_PETALBURG_WOODS_STATE 0x4098 +#define VAR_LILYCOVE_CONTEST_LOBBY_STATE 0x4099 +#define VAR_RUSTURF_TUNNEL_STATE 0x409A +#define VAR_UNUSED_0x409B 0x409B // Unused Var +#define VAR_ELITE_4_STATE 0x409C +#define VAR_UNUSED_0x409D 0x409D // Unused Var +#define VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE 0x409E +#define VAR_MOSSDEEP_SPACE_CENTER_STATE 0x409F +#define VAR_SLATEPORT_HARBOR_STATE 0x40A0 +#define VAR_UNUSED_0x40A1 0x40A1 // Unused var +#define VAR_SEAFLOOR_CAVERN_STATE 0x40A2 +#define VAR_CABLE_CAR_STATION_STATE 0x40A3 +#define VAR_SAFARI_ZONE_STATE 0x40A4 // 0: In or out of SZ, 1: Player exiting SZ, 2: Player entering SZ +#define VAR_TRICK_HOUSE_BEING_WATCHED_STATE 0x40A5 +#define VAR_TRICK_HOUSE_FOUND_TRICK_MASTER 0x40A6 +#define VAR_TRICK_HOUSE_ENTRANCE_STATE 0x40A7 +#define VAR_UNUSED_0x40A8 0x40A8 // Unused Var +#define VAR_CYCLING_CHALLENGE_STATE 0x40A9 +#define VAR_SLATEPORT_MUSEUM_1F_STATE 0x40AA +#define VAR_TRICK_HOUSE_PUZZLE_1_STATE 0x40AB +#define VAR_TRICK_HOUSE_PUZZLE_2_STATE 0x40AC +#define VAR_TRICK_HOUSE_PUZZLE_3_STATE 0x40AD +#define VAR_TRICK_HOUSE_PUZZLE_4_STATE 0x40AE +#define VAR_TRICK_HOUSE_PUZZLE_5_STATE 0x40AF +#define VAR_TRICK_HOUSE_PUZZLE_6_STATE 0x40B0 +#define VAR_TRICK_HOUSE_PUZZLE_7_STATE 0x40B1 +#define VAR_TRICK_HOUSE_PUZZLE_8_STATE 0x40B2 +#define VAR_WEATHER_INSTITUTE_STATE 0x40B3 +#define VAR_SS_TIDAL_STATE 0x40B4 +#define VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR 0x40B5 +#define VAR_TRICK_HOUSE_PUZZLE_7_STATE_2 0x40B6 // Leftover from RS, never set +#define VAR_SLATEPORT_FAN_CLUB_STATE 0x40B7 +#define VAR_UNUSED_0x40B8 0x40B8 // Unused Var +#define VAR_MT_PYRE_STATE 0x40B9 +#define VAR_NEW_MAUVILLE_STATE 0x40BA +#define VAR_UNUSED_0x40BB 0x40BB // Unused Var +#define VAR_BRAVO_TRAINER_BATTLE_TOWER_ON 0x40BC +#define VAR_JAGGED_PASS_ASH_WEATHER 0x40BD +#define VAR_GLASS_WORKSHOP_STATE 0x40BE +#define VAR_METEOR_FALLS_STATE 0x40BF +#define VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE 0x40C0 +#define VAR_TRICK_HOUSE_PRIZE_PICKUP 0x40C1 +#define VAR_PACIFIDLOG_TM_RECEIVED_DAY 0x40C2 +#define VAR_VICTORY_ROAD_1F_STATE 0x40C3 +#define VAR_FOSSIL_RESURRECTION_STATE 0x40C4 +#define VAR_WHICH_FOSSIL_REVIVED 0x40C5 +#define VAR_STEVENS_HOUSE_STATE 0x40C6 +#define VAR_OLDALE_RIVAL_STATE 0x40C7 +#define VAR_JAGGED_PASS_STATE 0x40C8 +#define VAR_SCOTT_PETALBURG_ENCOUNTER 0x40C9 +#define VAR_SKY_PILLAR_STATE 0x40CA +#define VAR_MIRAGE_TOWER_STATE 0x40CB +#define VAR_FOSSIL_MANIAC_STATE 0x40CC +#define VAR_CABLE_CLUB_TUTORIAL_STATE 0x40CD +#define VAR_FRONTIER_BATTLE_MODE 0x40CE +#define VAR_FRONTIER_FACILITY 0x40CF +#define VAR_HAS_ENTERED_BATTLE_FRONTIER 0x40D0 // Var is used like a flag. +#define VAR_SCOTT_STATE 0x40D1 +#define VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE 0x40D2 +#define VAR_DEX_UPGRADE_JOHTO_STARTER_STATE 0x40D3 +#define VAR_SS_TIDAL_SCOTT_STATE 0x40D4 // Always equal to FLAG_MET_SCOTT_ON_SS_TIDAL +#define VAR_ROAMER_POKEMON 0x40D5 // 0 = Latias, 1 = Latios +#define VAR_TRAINER_HILL_IS_ACTIVE 0x40D6 +#define VAR_SKY_PILLAR_RAYQUAZA_CRY_DONE 0x40D7 +#define VAR_SOOTOPOLIS_WALLACE_STATE 0x40D8 #define VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT 0x40D9 -#define VAR_REGISTER_BIRCH_STATE 0x40DA -#define VAR_UNUSED_0x40DB 0x40DB // Unused Var -#define VAR_UNUSED_0x40DC 0x40DC // Unused Var -#define VAR_GIFT_PICHU_SLOT 0x40DD -#define VAR_GIFT_UNUSED_1 0x40DE // Var is written to, but never read -#define VAR_GIFT_UNUSED_2 0x40DF // Var is written to, but never read -#define VAR_GIFT_UNUSED_3 0x40E0 // Var is written to, but never read -#define VAR_GIFT_UNUSED_4 0x40E1 // Var is written to, but never read -#define VAR_GIFT_UNUSED_5 0x40E2 // Var is written to, but never read -#define VAR_GIFT_UNUSED_6 0x40E3 // Var is written to, but never read -#define VAR_GIFT_UNUSED_7 0x40E4 // var is written to, but never read -#define VAR_UNUSED_0x40E5 0x40E5 // Unused Var -#define VAR_DAILY_SLOTS 0x40E6 -#define VAR_DAILY_WILDS 0x40E7 -#define VAR_DAILY_BLENDER 0x40E8 -#define VAR_DAILY_PLANTED_BERRIES 0x40E9 -#define VAR_DAILY_PICKED_BERRIES 0x40EA -#define VAR_DAILY_ROULETTE 0x40EB -#define VAR_SECRET_BASE_STEP_COUNTER 0x40EC // Used by Secret Base TV programs -#define VAR_SECRET_BASE_LAST_ITEM_USED 0x40ED // Used by Secret Base TV programs -#define VAR_SECRET_BASE_LOW_TV_FLAGS 0x40EE // Used by Secret Base TV programs -#define VAR_SECRET_BASE_HIGH_TV_FLAGS 0x40EF // Used by Secret Base TV programs -#define VAR_SECRET_BASE_IS_NOT_LOCAL 0x40F0 // Set to TRUE while in another player's secret base. -#define VAR_DAILY_BP 0x40F1 -#define VAR_WALLY_CALL_STEP_COUNTER 0x40F2 -#define VAR_SCOTT_FORTREE_CALL_STEP_COUNTER 0x40F3 -#define VAR_ROXANNE_CALL_STEP_COUNTER 0x40F4 -#define VAR_SCOTT_BF_CALL_STEP_COUNTER 0x40F5 -#define VAR_RIVAL_RAYQUAZA_CALL_STEP_COUNTER 0x40F6 -#define VAR_UNUSED_0x40F7 0x40F7 // Unused Var -#define VAR_UNUSED_0x40F8 0x40F8 // Unused Var -#define VAR_UNUSED_0x40F9 0x40F9 // Unused Var -#define VAR_UNUSED_0x40FA 0x40FA // Unused Var -#define VAR_UNUSED_0x40FB 0x40FB // Unused Var -#define VAR_UNUSED_0x40FC 0x40FC // Unused Var -#define VAR_UNUSED_0x40FD 0x40FD // Unused Var -#define VAR_UNUSED_0x40FE 0x40FE // Unused Var -#define VAR_UNUSED_0x40FF 0x40FF // Unused Var +#define VAR_REGISTER_BIRCH_STATE 0x40DA +#define VAR_UNUSED_0x40DB 0x40DB // Unused Var +#define VAR_UNUSED_0x40DC 0x40DC // Unused Var +#define VAR_GIFT_PICHU_SLOT 0x40DD +#define VAR_GIFT_UNUSED_1 0x40DE // Var is written to, but never read +#define VAR_GIFT_UNUSED_2 0x40DF // Var is written to, but never read +#define VAR_GIFT_UNUSED_3 0x40E0 // Var is written to, but never read +#define VAR_GIFT_UNUSED_4 0x40E1 // Var is written to, but never read +#define VAR_GIFT_UNUSED_5 0x40E2 // Var is written to, but never read +#define VAR_GIFT_UNUSED_6 0x40E3 // Var is written to, but never read +#define VAR_GIFT_UNUSED_7 0x40E4 // var is written to, but never read +#define VAR_UNUSED_0x40E5 0x40E5 // Unused Var +#define VAR_DAILY_SLOTS 0x40E6 +#define VAR_DAILY_WILDS 0x40E7 +#define VAR_DAILY_BLENDER 0x40E8 +#define VAR_DAILY_PLANTED_BERRIES 0x40E9 +#define VAR_DAILY_PICKED_BERRIES 0x40EA +#define VAR_DAILY_ROULETTE 0x40EB +#define VAR_SECRET_BASE_STEP_COUNTER 0x40EC // Used by Secret Base TV programs +#define VAR_SECRET_BASE_LAST_ITEM_USED 0x40ED // Used by Secret Base TV programs +#define VAR_SECRET_BASE_LOW_TV_FLAGS 0x40EE // Used by Secret Base TV programs +#define VAR_SECRET_BASE_HIGH_TV_FLAGS 0x40EF // Used by Secret Base TV programs +#define VAR_SECRET_BASE_IS_NOT_LOCAL 0x40F0 // Set to TRUE while in another player's secret base. +#define VAR_DAILY_BP 0x40F1 +#define VAR_WALLY_CALL_STEP_COUNTER 0x40F2 +#define VAR_SCOTT_FORTREE_CALL_STEP_COUNTER 0x40F3 +#define VAR_ROXANNE_CALL_STEP_COUNTER 0x40F4 +#define VAR_SCOTT_BF_CALL_STEP_COUNTER 0x40F5 +#define VAR_RIVAL_RAYQUAZA_CALL_STEP_COUNTER 0x40F6 +#define VAR_UNUSED_0x40F7 0x40F7 // Unused Var +#define VAR_UNUSED_0x40F8 0x40F8 // Unused Var +#define VAR_UNUSED_0x40F9 0x40F9 // Unused Var +#define VAR_UNUSED_0x40FA 0x40FA // Unused Var +#define VAR_UNUSED_0x40FB 0x40FB // Unused Var +#define VAR_UNUSED_0x40FC 0x40FC // Unused Var +#define VAR_UNUSED_0x40FD 0x40FD // Unused Var +#define VAR_UNUSED_0x40FE 0x40FE // Unused Var +#define VAR_UNUSED_0x40FF 0x40FF // Unused Var -#define VARS_END 0x40FF -#define VARS_COUNT (VARS_END - VARS_START + 1) +#define VARS_END 0x40FF +#define VARS_COUNT (VARS_END - VARS_START + 1) #define SPECIAL_VARS_START 0x8000 // special vars diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 22cef492194a..aad161553c5d 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -77,55 +77,55 @@ extern const struct SpriteFrameImage *const gBerryTreePicTablePointers[]; extern const u8 *const gBerryTreePaletteSlotTablePointers[]; void ResetObjectEvents(void); -u8 GetMoveDirectionAnimNum(u8); -u8 GetObjectEventIdByLocalIdAndMap(u8, u8, u8); -bool8 TryGetObjectEventIdByLocalIdAndMap(u8, u8, u8, u8 *); -u8 GetObjectEventIdByXY(s16, s16); -void SetObjectEventDirection(struct ObjectEvent *, u8); +u8 GetMoveDirectionAnimNum(u8 direction); +u8 GetObjectEventIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroupId); +bool8 TryGetObjectEventIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroupId, u8 *objectEventId); +u8 GetObjectEventIdByXY(s16 x, s16 y); +void SetObjectEventDirection(struct ObjectEvent *objectEvent, u8 direction); u8 GetFirstInactiveObjectEventId(void); -void RemoveObjectEventByLocalIdAndMap(u8, u8, u8); -void LoadPlayerObjectReflectionPalette(u16, u8); -void LoadSpecialObjectReflectionPalette(u16, u8); -void TryMoveObjectEventToMapCoords(u8, u8, u8, s16, s16); -void PatchObjectPalette(u16, u8); -void SpawnObjectEventsOnReturnToField(s16, s16); +void RemoveObjectEventByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup); +void LoadPlayerObjectReflectionPalette(u16 tag, u8 slot); +void LoadSpecialObjectReflectionPalette(u16 tag, u8 slot); +void TryMoveObjectEventToMapCoords(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y); +void PatchObjectPalette(u16 paletteTag, u8 paletteSlot); +void SpawnObjectEventsOnReturnToField(s16 x, s16 y); void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat); -void GetMapCoordsFromSpritePos(s16, s16, s16 *, s16 *); -u8 GetFaceDirectionAnimNum(u8); -void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16); +void GetMapCoordsFromSpritePos(s16 x, s16 y, s16 *destX, s16 *destY); +u8 GetFaceDirectionAnimNum(u8 direction); +void SetSpritePosToOffsetMapCoords(s16 *x, s16 *y, s16 dx, s16 dy); void ObjectEventClearHeldMovement(struct ObjectEvent *); void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *); -void TrySpawnObjectEvents(s16, s16); +void TrySpawnObjectEvents(s16 cameraX, s16 cameraY); u8 CreateObjectGraphicsSprite(u16, void (*)(struct Sprite *), s16 x, s16 y, u8 subpriority); -u8 TrySpawnObjectEvent(u8, u8, u8); +u8 TrySpawnObjectEvent(u8 localId, u8 mapNum, u8 mapGroup); u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 elevation); u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *); -void SetSpritePosToMapCoords(s16, s16, s16 *, s16 *); +void SetSpritePosToMapCoords(s16 mapX, s16 mapY, s16 *destX, s16 *destY); void CameraObjectReset1(void); void ObjectEventSetGraphicsId(struct ObjectEvent *, u8 graphicsId); -void ObjectEventTurn(struct ObjectEvent *, u8); -void ObjectEventTurnByLocalIdAndMap(u8, u8, u8, u8); +void ObjectEventTurn(struct ObjectEvent *, u8 direction); +void ObjectEventTurnByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 direction); const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId); -void SetObjectInvisibility(u8, u8, u8, bool8); +void SetObjectInvisibility(u8 localId, u8 mapNum, u8 mapGroup, bool8 invisible); void FreeAndReserveObjectSpritePalettes(void); void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y); -void ResetObjectSubpriority(u8, u8, u8); -void SetObjectSubpriority(u8, u8, u8, u8); -void AllowObjectAtPosTriggerGroundEffects(s16, s16); +void ResetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup); +void SetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup, u8 subpriority); +void AllowObjectAtPosTriggerGroundEffects(s16 x, s16 y); void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup); -void ShiftObjectEventCoords(struct ObjectEvent *, s16, s16); -void MoveObjectEventToMapCoords(struct ObjectEvent *, s16, s16); -void TryOverrideObjectEventTemplateCoords(u8, u8, u8); +void ShiftObjectEventCoords(struct ObjectEvent *, s16 x, s16 y); +void MoveObjectEventToMapCoords(struct ObjectEvent *, s16 x, s16 y); +void TryOverrideObjectEventTemplateCoords(u8 localId, u8 mapNum, u8 mapGroup); void InitObjectEventPalettes(u8 palSlot); void UpdateObjectEventCurrentMovement(struct ObjectEvent *, struct Sprite *, bool8(struct ObjectEvent *, struct Sprite *)); -u8 ObjectEventFaceOppositeDirection(struct ObjectEvent *, u8); -u8 GetOppositeDirection(u8); +u8 ObjectEventFaceOppositeDirection(struct ObjectEvent *, u8 direction); +u8 GetOppositeDirection(u8 direction); u8 GetWalkInPlaceFasterMovementAction(u32); u8 GetWalkInPlaceFastMovementAction(u32); u8 GetWalkInPlaceNormalMovementAction(u32); u8 GetWalkInPlaceSlowMovementAction(u32); -u8 GetCollisionAtCoords(struct ObjectEvent *, s16, s16, u32); -void MoveCoords(u8, s16 *, s16 *); +u8 GetCollisionAtCoords(struct ObjectEvent *, s16 x, s16 y, u32 dir); +void MoveCoords(u8 direction, s16 *x, s16 *y); bool8 ObjectEventIsHeldMovementActive(struct ObjectEvent *); u8 ObjectEventClearHeldMovementIfFinished(struct ObjectEvent *); u8 GetObjectEventIdByPosition(u16 x, u16 y, u8 elevation); @@ -168,22 +168,22 @@ u8 AddCameraObject(u8 linkedSpriteId); void UpdateObjectEventsForCameraUpdate(s16 x, s16 y); u8 GetWalkSlowMovementAction(u32); u8 GetJumpMovementAction(u32); -u8 ElevationToPriority(u8); +u8 ElevationToPriority(u8 elevation); void ObjectEventUpdateElevation(struct ObjectEvent *objEvent); -void SetObjectSubpriorityByElevation(u8, struct Sprite *, u8); +void SetObjectSubpriorityByElevation(u8 elevation, struct Sprite *, u8 subpriority); void UnfreezeObjectEvent(struct ObjectEvent *); u8 FindLockedObjectEventIndex(struct ObjectEvent *); -void SetAndStartSpriteAnim(struct Sprite *, u8, u8); +void SetAndStartSpriteAnim(struct Sprite *, u8 animNum, u8 animCmdIndex); bool8 SpriteAnimEnded(struct Sprite *); void UnfreezeObjectEvents(void); void FreezeObjectEventsExceptOne(u8 objectEventId); void FreezeObjectEventsExceptTwo(u8 objectEventId1, u8 objectEventId2); void FreezeObjectEvents(void); bool8 FreezeObjectEvent(struct ObjectEvent *objectEvent); -u8 GetMoveDirectionFastAnimNum(u8); -u8 GetMoveDirectionFasterAnimNum(u8); -u8 GetMoveDirectionFastestAnimNum(u8); -u8 GetLedgeJumpDirection(s16, s16, u8); +u8 GetMoveDirectionFastAnimNum(u8 direction); +u8 GetMoveDirectionFasterAnimNum(u8 direction); +u8 GetMoveDirectionFastestAnimNum(u8 direction); +u8 GetLedgeJumpDirection(s16 x, s16 y, u8 direction); void CameraObjectSetFollowedSpriteId(u8 objectId); u16 GetObjectPaletteTag(u8 palSlot); void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible); @@ -192,7 +192,7 @@ s16 GetFigure8YOffset(s16 idx); void CameraObjectReset2(void); u8 GetObjectEventBerryTreeId(u8 objectEventId); void SetBerryTreeJustPicked(u8 mapId, u8 mapNumber, u8 mapGroup); -bool8 IsBerryTreeSparkling(u8, u8, u8); +bool8 IsBerryTreeSparkling(u8 localId, u8 mapNum, u8 mapGroup); void MovementType_None(struct Sprite *); void MovementType_LookAround(struct Sprite *); @@ -250,7 +250,6 @@ void MovementType_RunInPlace(struct Sprite *); void MovementType_Invisible(struct Sprite *); void MovementType_WalkSlowlyInPlace(struct Sprite *); u8 GetSlideMovementAction(u32); -u8 GetJumpInPlaceMovementAction(u32); u8 GetJumpMovementAction(u32); u8 GetJump2MovementAction(u32); u8 CreateCopySpriteAt(struct Sprite *sprite, s16 x, s16 y, u8 subpriority); @@ -262,17 +261,17 @@ u8 MovementType_WanderAround_Step3(struct ObjectEvent *, struct Sprite *); u8 MovementType_WanderAround_Step4(struct ObjectEvent *, struct Sprite *); u8 MovementType_WanderAround_Step5(struct ObjectEvent *, struct Sprite *); u8 MovementType_WanderAround_Step6(struct ObjectEvent *, struct Sprite *); -u8 GetVectorDirection(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthNorth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_WestEast(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_WestNorth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_EastNorth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_WestSouth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_EastSouth(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthNorthWest(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthNorthEast(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_NorthWestEast(s16, s16, s16, s16); -u8 GetLimitedVectorDirection_SouthWestEast(s16, s16, s16, s16); +u8 GetVectorDirection(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_SouthNorth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_WestEast(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_WestNorth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_EastNorth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_WestSouth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_EastSouth(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_SouthNorthWest(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_SouthNorthEast(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_NorthWestEast(s16 dx, s16 dy, s16 absdx, s16 absdy); +u8 GetLimitedVectorDirection_SouthWestEast(s16 dx, s16 dy, s16 absdx, s16 absdy); u8 MovementType_LookAround_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementType_LookAround_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementType_LookAround_Step2(struct ObjectEvent *, struct Sprite *); diff --git a/include/field_effect.h b/include/field_effect.h index b35a8c869423..4cde29e8a3a7 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -18,7 +18,7 @@ void FieldEffectStop(struct Sprite *sprite, u8 id); u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer); void FldEff_TeleportWarpOut(void); void FieldEffectActiveListRemove(u8 id); -void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8); +void MultiplyInvertedPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b); void FieldEffectActiveListAdd(u8 id); void FieldEffectScript_LoadTiles(u8 **script); void FieldEffectScript_LoadFadedPalette(u8 **script); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 2bf2df26978c..39fc886af8a4 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -38,7 +38,7 @@ void PlayerFreeze(void); void StopPlayerAvatar(void); void SetSpinStartFacingDir(u8); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); -u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8); +u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8 state, u8 gender); void SetPlayerAvatarFieldMove(void); u8 GetPlayerAvatarGraphicsIdByCurrentState(void); void SetPlayerAvatarStateMask(u8 flags); diff --git a/include/fieldmap.h b/include/fieldmap.h index 7caadfcaaa67..2f7eaba66be9 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -47,7 +47,7 @@ void CopySecondaryTilesetToVramUsingHeap(struct MapLayout const *mapLayout); void CopyPrimaryTilesetToVram(const struct MapLayout *); void CopySecondaryTilesetToVram(const struct MapLayout *); struct MapHeader const *const GetMapHeaderFromConnection(struct MapConnection *connection); -struct MapConnection *GetConnectionAtCoords(s16 x, s16 y); +struct MapConnection *GetMapConnectionAtPos(s16 x, s16 y); void MapGridSetMetatileImpassabilityAt(int x, int y, bool32 impassable); // field_region_map.c diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 974fa3382b04..2be44a5f3bee 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -4,9 +4,9 @@ // Masks/shifts for blocks in the map grid // Map grid blocks consist of a 10 bit metatile id, a 2 bit collision value, and a 4 bit elevation value // This is the data stored in each data/layouts/*/map.bin file -#define MAPGRID_METATILE_ID_MASK 0x03FF // Bits 1-10 -#define MAPGRID_COLLISION_MASK 0x0C00 // Bits 11-12 -#define MAPGRID_ELEVATION_MASK 0xF000 // Bits 13-16 +#define MAPGRID_METATILE_ID_MASK 0x03FF // Bits 0-9 +#define MAPGRID_COLLISION_MASK 0x0C00 // Bits 10-11 +#define MAPGRID_ELEVATION_MASK 0xF000 // Bits 12-15 #define MAPGRID_COLLISION_SHIFT 10 #define MAPGRID_ELEVATION_SHIFT 12 @@ -16,8 +16,8 @@ // Masks/shifts for metatile attributes // Metatile attributes consist of an 8 bit behavior value, 4 unused bits, and a 4 bit layer type value // This is the data stored in each data/tilesets/*/*/metatile_attributes.bin file -#define METATILE_ATTR_BEHAVIOR_MASK 0x00FF // Bits 1-8 -#define METATILE_ATTR_LAYER_MASK 0xF000 // Bits 13-16 +#define METATILE_ATTR_BEHAVIOR_MASK 0x00FF // Bits 0-7 +#define METATILE_ATTR_LAYER_MASK 0xF000 // Bits 12-15 #define METATILE_ATTR_LAYER_SHIFT 12 enum { diff --git a/include/global.h b/include/global.h index b27c1e91c0b1..2f5a5c87100f 100644 --- a/include/global.h +++ b/include/global.h @@ -881,7 +881,7 @@ struct MysteryGiftSave struct WonderCardMetadata cardMetadata; u16 questionnaireWords[NUM_QUESTIONNAIRE_WORDS]; struct WonderNewsMetadata newsMetadata; - u32 trainerIds[2][5]; // Saved ids for 10 trainers, 5 each for battles and trades + u32 trainerIds[2][5]; // Saved ids for 10 trainers, 5 each for battles and trades }; // 0x36C 0x3598 // For external event data storage. The majority of these may have never been used. diff --git a/include/graphics.h b/include/graphics.h index 197cb4bb4102..4f8534f9a15b 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -9631,8 +9631,6 @@ extern const u32 gBattleAnimSpriteGfx_MegaStone[]; extern const u32 gBattleAnimSpritePal_MegaStone[]; extern const u32 gBattleAnimSpriteGfx_MegaParticles[]; extern const u32 gBattleAnimSpritePal_MegaParticles[]; -extern const u32 gBattleAnimSpriteGfx_PrimalParticles[]; -extern const u32 gBattleAnimSpritePal_PrimalParticles[]; extern const u32 gBattleAnimSpriteGfx_MegaSymbol[]; extern const u32 gBattleAnimSpritePal_MegaSymbol[]; extern const u32 gBattleAnimSpriteGfx_FlashCannonBall[]; @@ -10085,9 +10083,6 @@ extern const u16 gSlotMachineReelTimePikachu_Pal[]; extern const u32 gBattleAnimBgTilemap_Sandstorm[]; extern const u32 gBattleAnimBgImage_Sandstorm[]; -extern const u32 gBattleAnimBgTilemap_Windstorm[]; -extern const u32 gBattleAnimBgImage_Windstorm[]; - // Pokedex Area Screen extern const u32 gPokedexAreaScreenAreaUnknown_Gfx[]; extern const u16 gPokedexAreaScreenAreaUnknown_Pal[]; diff --git a/include/link.h b/include/link.h index 120c25784eda..7fa5e3fae6fd 100644 --- a/include/link.h +++ b/include/link.h @@ -284,7 +284,7 @@ void SerialCB(void); bool32 InUnionRoom(void); void LoadWirelessStatusIndicatorSpriteGfx(void); bool8 IsLinkTaskFinished(void); -void CreateWirelessStatusIndicatorSprite(u8, u8); +void CreateWirelessStatusIndicatorSprite(u8 x, u8 y); void SetLinkStandbyCallback(void); void SetWirelessCommType1(void); void CheckShouldAdvanceLinkState(void); diff --git a/include/link_rfu.h b/include/link_rfu.h index a8f8362cb386..c576d04a1e8f 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -97,7 +97,7 @@ struct RfuGameCompatibilityData // wireless play (the kind the Pokémon games use) the gname data can be used for // anything the developers want. This struct is what GF decided to use it for. // It can be up to 13 bytes in size (RFU_GAME_NAME_LENGTH). -// The player's name is sent separately as the username ("uname"), and does not +// The player's name is sent separately as the username ("uname"), and does not // use a struct (gHostRfuUsername). struct __attribute__((packed, aligned(2))) RfuGameData { @@ -118,7 +118,7 @@ struct __attribute__((packed, aligned(2))) RfuGameData // Bits 0-2 are a shortened trainerId // Bit 3 is the player's gender // Bits 4-6 are unknown/unused -// Bit 7 is an 'active' flag +// Bit 7 is an 'active' flag #define PINFO_TID_MASK 0x7 #define PINFO_GENDER_SHIFT 3 #define PINFO_ACTIVE_FLAG (1 << 7) diff --git a/include/load_save.h b/include/load_save.h index 309e62e2b4f7..389bd5a2b925 100644 --- a/include/load_save.h +++ b/include/load_save.h @@ -10,24 +10,24 @@ * toolchains. If this is not done, the ClearSav functions will end up erasing * the wrong memory leading to various glitches. */ -struct SaveBlock2DMA { +struct SaveBlock2ASLR { struct SaveBlock2 block; - u8 dma[SAVEBLOCK_MOVE_RANGE]; + u8 aslr[SAVEBLOCK_MOVE_RANGE]; }; -struct SaveBlock1DMA { +struct SaveBlock1ASLR { struct SaveBlock1 block; - u8 dma[SAVEBLOCK_MOVE_RANGE]; + u8 aslr[SAVEBLOCK_MOVE_RANGE]; }; -struct PokemonStorageDMA { +struct PokemonStorageASLR { struct PokemonStorage block; - u8 dma[SAVEBLOCK_MOVE_RANGE]; + u8 aslr[SAVEBLOCK_MOVE_RANGE]; }; -extern struct SaveBlock1DMA gSaveblock1; -extern struct SaveBlock2DMA gSaveblock2; -extern struct PokemonStorageDMA gPokemonStorage; +extern struct SaveBlock1ASLR gSaveblock1; +extern struct SaveBlock2ASLR gSaveblock2; +extern struct PokemonStorageASLR gPokemonStorage; extern bool32 gFlashMemoryPresent; extern struct SaveBlock1 *gSaveBlock1Ptr; diff --git a/include/menu.h b/include/menu.h index 43b564da28fb..0b0a42423d74 100644 --- a/include/menu.h +++ b/include/menu.h @@ -92,7 +92,7 @@ void PrintMenuActionGrid(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth u8 InitMenuActionGrid(u8 windowId, u8 optionWidth, u8 columns, u8 rows, u8 initialCursorPos); u8 ChangeMenuGridCursorPosition(s8 deltaX, s8 deltaY); u8 GetStartMenuWindowId(void); -void ListMenuLoadStdPalAt(u8, u8); +void ListMenuLoadStdPalAt(u8 palOffset, u8 palId); u8 Menu_MoveCursor(s8 cursorDelta); u8 Menu_MoveCursorNoWrapAround(s8 cursorDelta); void DrawStdWindowFrame(u8 windowId, bool8 CopyToVram); diff --git a/include/palette.h b/include/palette.h index 81a1e1caec7c..736fde96bb96 100644 --- a/include/palette.h +++ b/include/palette.h @@ -52,22 +52,22 @@ extern u8 gPaletteDecompressionBuffer[]; extern u16 gPlttBufferUnfaded[PLTT_BUFFER_SIZE]; extern u16 gPlttBufferFaded[PLTT_BUFFER_SIZE]; -void LoadCompressedPalette(const u32 *, u16, u16); -void LoadPalette(const void *, u16, u16); -void FillPalette(u16, u16, u16); +void LoadCompressedPalette(const u32 *src, u16 offset, u16 size); +void LoadPalette(const void *src, u16 offset, u16 size); +void FillPalette(u16 value, u16 offset, u16 size); void TransferPlttBuffer(void); u8 UpdatePaletteFade(void); void ResetPaletteFade(void); -bool8 BeginNormalPaletteFade(u32, s8, u8, u8, u16); -void PaletteStruct_ResetById(u16); +bool8 BeginNormalPaletteFade(u32 selectedPalettes, s8 delay, u8 startY, u8 targetY, u16 blendColor); +void PaletteStruct_ResetById(u16 id); void ResetPaletteFadeControl(void); -void InvertPlttBuffer(u32); -void TintPlttBuffer(u32, s8, s8, s8); -void UnfadePlttBuffer(u32); -void BeginFastPaletteFade(u8); -void BeginHardwarePaletteFade(u8, u8, u8, u8, u8); +void InvertPlttBuffer(u32 selectedPalettes); +void TintPlttBuffer(u32 selectedPalettes, s8 r, s8 g, s8 b); +void UnfadePlttBuffer(u32 selectedPalettes); +void BeginFastPaletteFade(u8 submode); +void BeginHardwarePaletteFade(u8 blendCnt, u8 delay, u8 y, u8 targetY, u8 shouldResetBlendRegisters); void BlendPalettes(u32 selectedPalettes, u8 coeff, u16 color); -void BlendPalettesUnfaded(u32, u8, u16); +void BlendPalettesUnfaded(u32 selectedPalettes, u8 coeff, u16 color); void BlendPalettesGradually(u32 selectedPalettes, s8 delay, u8 coeff, u8 coeffTarget, u16 color, u8 priority, u8 id); void TintPalette_GrayScale(u16 *palette, u16 count); void TintPalette_GrayScale2(u16 *palette, u16 count); diff --git a/include/pokemon.h b/include/pokemon.h index 39f6e406b0f0..ee28985700e7 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -385,7 +385,7 @@ struct FormChange | (((personality) & 0x00000003) >> 0) \ ) % NUM_UNOWN_FORMS) -#define GET_SHINY_VALUE(otId, personality)HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality) +#define GET_SHINY_VALUE(otId, personality) (HIHALF(otId) ^ LOHALF(otId) ^ HIHALF(personality) ^ LOHALF(personality)) extern u8 gPlayerPartyCount; extern struct Pokemon gPlayerParty[PARTY_SIZE]; @@ -405,10 +405,11 @@ extern const u8 gPPUpGetMask[]; extern const u8 gPPUpClearMask[]; extern const u8 gPPUpAddValues[]; extern const u8 gStatStageRatios[MAX_STAT_STAGE + 1][2]; -extern const u16 gLinkPlayerFacilityClasses[]; +extern const u16 gUnionRoomFacilityClasses[]; extern const struct SpriteTemplate gBattlerSpriteTemplates[]; extern const s8 gNatureStatTable[][5]; extern const u16 *const gFormSpeciesIdTables[NUM_SPECIES]; +extern const u32 sExpCandyExperienceTable[]; void ZeroBoxMonData(struct BoxPokemon *boxMon); void ZeroMonData(struct Pokemon *mon); diff --git a/include/pokenav.h b/include/pokenav.h index 959998383f71..c6a8bb253e88 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -116,7 +116,7 @@ enum #define POKENAV_MENU_IDS_START 100000 enum { - POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, // The main menu where the player selects Hoenn Map/Condition/Match Call/Ribbons + POKENAV_MAIN_MENU = POKENAV_MENU_IDS_START, // The main menu where the player selects Hoenn Map/Condition/Match Call/Ribbons POKENAV_MAIN_MENU_CURSOR_ON_MAP, POKENAV_CONDITION_MENU, // The first Condition screen where the player selects Party or Search POKENAV_CONDITION_SEARCH_MENU, // The Condition search menu where the player selects a search parameter diff --git a/include/strings.h b/include/strings.h index 25a96eef0831..4c9f130f7bfb 100644 --- a/include/strings.h +++ b/include/strings.h @@ -500,6 +500,7 @@ extern const u8 gText_StopLearningMove2[]; extern const u8 gText_MoveNotLearned[]; extern const u8 gText_PkmnElevatedToLvVar2[]; extern const u8 gText_PkmnGainedExp[]; +extern const u8 gText_PkmnGainedExpAndElevatedToLvVar3[]; extern const u8 gText_RemoveMailBeforeItem[]; extern const u8 gText_PkmnHoldingItemCantHoldMail[]; extern const u8 gText_MailTransferredFromMailbox[]; @@ -2154,9 +2155,7 @@ extern const u8 gText_Switch2[]; extern const u8 gText_Item[]; extern const u8 gText_NotPkmnOtherTrainerWants[]; extern const u8 gText_ThatIsntAnEgg[]; -extern const u8 gText_PkmnCantBeTradedNow[]; extern const u8 gText_OtherTrainersPkmnCantBeTraded[]; -extern const u8 gText_EggCantBeTradedNow[]; extern const u8 gText_OtherTrainerCantAcceptPkmn[]; extern const u8 gText_CantTradeWithTrainer[]; diff --git a/include/trainer_card.h b/include/trainer_card.h index f14335ae8981..7c37a84a6c2e 100644 --- a/include/trainer_card.h +++ b/include/trainer_card.h @@ -54,7 +54,7 @@ struct TrainerCard /*0x4C*/ bool8 shouldDrawStickers; // FRLG only /*0x4D*/ u8 unused; /*0x4E*/ u8 monIconTint; // FRLG only - /*0x4F*/ u8 facilityClass; + /*0x4F*/ u8 unionRoomClass; /*0x50*/ u8 stickers[TRAINER_CARD_STICKER_TYPES]; // FRLG only /*0x54*/ u16 monSpecies[PARTY_SIZE]; // FRLG only // Note: Link players use linkHasAllFrontierSymbols, not the field below, diff --git a/include/union_room.h b/include/union_room.h index acff4b592904..514a15985027 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -7,7 +7,7 @@ // In the Union Room the player is only ever connected to ≤ 4 other players. // However, there can be up to MAX_UNION_ROOM_LEADERS (8) object events to -// represent leaders of recently discovered link groups, and each of those groups +// represent leaders of recently discovered link groups, and each of those groups // may have up to MAX_RFU_PLAYERS (5) players in it including the leader. // These players are represented on-screen by NPC sprites drawn around the leader. // Thus there can be 40 sprites of other players on-screen, in 8 groups of 5. @@ -16,7 +16,7 @@ // The maximum number of recently connected players that can be tracked. // Note that this is significantly less than NUM_UNION_ROOM_SPRITES, i.e. not // every player that can be shown in the Union Room can be tracked at once. -// Information such as a group member's gender can instead be read from partnerInfo +// Information such as a group member's gender can instead be read from partnerInfo // of the leader's RfuGameData by tracking at least all of the group leaders. #define MAX_RFU_PLAYER_LIST_SIZE 16 diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index 4ce03dbedd9e..95c96fc1ecaa 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -3978,7 +3978,7 @@ Cry_Spectrier:: .align 2 Cry_Calyrex:: .incbin "sound/direct_sound_samples/cries/calyrex.bin" -/* +/* .align 2 Cry_Wyrdeer:: .incbin "sound/direct_sound_samples/cries/wyrdeer.bin" diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index f2a2efe5570b..7493be32b9df 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -1,10 +1,13 @@ #include "global.h" #include "battle.h" +#include "constants/battle_ai.h" #include "battle_ai_main.h" #include "battle_ai_util.h" +#include "battle_util.h" #include "battle_anim.h" #include "battle_controllers.h" #include "battle_main.h" +#include "constants/hold_effects.h" #include "battle_setup.h" #include "data.h" #include "pokemon.h" @@ -12,6 +15,7 @@ #include "util.h" #include "constants/abilities.h" #include "constants/item_effects.h" +#include "constants/battle_move_effects.h" #include "constants/items.h" #include "constants/moves.h" @@ -19,6 +23,7 @@ static bool8 HasSuperEffectiveMoveAgainstOpponents(bool8 noRng); static bool8 FindMonWithFlagsAndSuperEffective(u16 flags, u8 moduloPercent); static bool8 ShouldUseItem(void); +static bool32 AiExpectsToFaintPlayer(void); static bool32 AI_ShouldHeal(u32 healAmount); static bool32 AI_OpponentCanFaintAiWithMod(u32 healAmount); @@ -56,21 +61,6 @@ static bool8 ShouldSwitchIfAllBadMoves(void) } } -static bool8 ShouldSwitchIfPerishSong(void) -{ - if (gStatuses3[gActiveBattler] & STATUS3_PERISH_SONG - && gDisableStructs[gActiveBattler].perishSongTimer == 0) - { - *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; - BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); - return TRUE; - } - else - { - return FALSE; - } -} - static bool8 ShouldSwitchIfWonderGuard(void) { u8 opposingPosition; @@ -119,6 +109,9 @@ static bool8 ShouldSwitchIfWonderGuard(void) continue; if (i == gBattlerPartyIndexes[gActiveBattler]) continue; + if (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && i == (CalculateEnemyPartyCount()-1)) + continue; for (opposingBattler = GetBattlerAtPosition(opposingPosition), j = 0; j < MAX_MON_MOVES; j++) { @@ -180,7 +173,7 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void) else return FALSE; - if (AI_GetAbility(gActiveBattler) == absorbingTypeAbility) + if (AI_DATA->abilities[gActiveBattler] == absorbingTypeAbility) return FALSE; GetAIPartyIndexes(gActiveBattler, &firstId, &lastId); @@ -209,6 +202,10 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void) continue; if (i == *(gBattleStruct->monToSwitchIntoId + battlerIn2)) continue; + if (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && i == (CalculateEnemyPartyCount()-1)) + continue; + species = GetMonData(&party[i], MON_DATA_SPECIES); if (GetMonData(&party[i], MON_DATA_ABILITY_NUM) != 0) @@ -228,43 +225,228 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void) return FALSE; } -static bool8 ShouldSwitchIfNaturalCure(void) +static bool8 ShouldSwitchIfGameStatePrompt(void) { - if (!(gBattleMons[gActiveBattler].status1 & STATUS1_SLEEP)) - return FALSE; - if (AI_GetAbility(gActiveBattler) != ABILITY_NATURAL_CURE) - return FALSE; - if (gBattleMons[gActiveBattler].hp < gBattleMons[gActiveBattler].maxHP / 2) - return FALSE; + bool8 switchMon = FALSE; + u16 monAbility = AI_DATA->abilities[gActiveBattler]; + u16 holdEffect = AI_DATA->holdEffects[gActiveBattler]; + u8 opposingPosition = BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler)); + u8 opposingBattler = GetBattlerAtPosition(opposingPosition); + s32 moduloChance = 4; //25% Chance Default + s32 chanceReducer = 1; //No Reduce default. Increase to reduce + s32 firstId; + s32 lastId; + s32 i; + struct Pokemon *party; + + + if (AnyStatIsRaised(gActiveBattler)) + chanceReducer = 5; // Reduce switchout probability by factor of 5 if setup + + //Perish Song + if (gStatuses3[gActiveBattler] & STATUS3_PERISH_SONG + && gDisableStructs[gActiveBattler].perishSongTimer == 0 + && monAbility != ABILITY_SOUNDPROOF) + switchMon = TRUE; - if ((gLastLandedMoves[gActiveBattler] == MOVE_NONE - || gLastLandedMoves[gActiveBattler] == MOVE_UNAVAILABLE) - && Random() & 1) + if (AI_THINKING_STRUCT->aiFlags & AI_FLAG_SMART_SWITCHING) { - *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; - BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); - return TRUE; + //Yawn + if (gStatuses3[gActiveBattler] & STATUS3_YAWN + && AI_CanSleep(gActiveBattler, monAbility) + && gBattleMons[gActiveBattler].hp > gBattleMons[gActiveBattler].maxHP / 3) + { + switchMon = TRUE; + + //Double Battles + //Check if partner can prevent sleep + if (IsDoubleBattle()) + { + if (IsBattlerAlive(BATTLE_PARTNER(gActiveBattler)) + && (GetAIChosenMove(BATTLE_PARTNER(gActiveBattler)) == MOVE_UPROAR) + ) + switchMon = FALSE; + + if (IsBattlerAlive(BATTLE_PARTNER(gActiveBattler)) + && (gBattleMoves[AI_DATA->partnerMove].effect == EFFECT_MISTY_TERRAIN + || gBattleMoves[AI_DATA->partnerMove].effect == EFFECT_ELECTRIC_TERRAIN) + && IsBattlerGrounded(gActiveBattler) + ) + switchMon = FALSE; + + if (*(gBattleStruct->AI_monToSwitchIntoId + BATTLE_PARTNER(gActiveBattler)) != PARTY_SIZE) //Partner is switching + { + GetAIPartyIndexes(gActiveBattler, &firstId, &lastId); + + if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) + party = gPlayerParty; + + for (i = firstId; i < lastId; i++) + { + if (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && i == (CalculateEnemyPartyCount()-1)) + break; + + //Look for mon in party that is able to be switched into and has ability that sets terrain + if (GetMonData(&party[i], MON_DATA_HP) != 0 + && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_NONE + && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG + && i != gBattlerPartyIndexes[gActiveBattler] + && i != gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)] + && IsBattlerGrounded(gActiveBattler) + && (GetMonAbility(&party[i]) == ABILITY_MISTY_SURGE + || GetMonAbility(&party[i]) == ABILITY_ELECTRIC_SURGE)) //Ally has Misty or Electric Surge + { + *(gBattleStruct->AI_monToSwitchIntoId + BATTLE_PARTNER(gActiveBattler)) = i; + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); + switchMon = FALSE; + break; + } + } + } + } + + //Check if Active Pokemon can KO opponent instead of switching + //Will still fall asleep, but take out opposing Pokemon first + if (AiExpectsToFaintPlayer()) + switchMon = FALSE; + + //Checks to see if active Pokemon can do something against sleep + if (monAbility == (ABILITY_NATURAL_CURE | ABILITY_SHED_SKIN | ABILITY_EARLY_BIRD) + || holdEffect == (HOLD_EFFECT_CURE_SLP | HOLD_EFFECT_CURE_STATUS) + || HasMove(gActiveBattler, MOVE_SLEEP_TALK) + || (HasMoveEffect(gActiveBattler, MOVE_SNORE) && AI_GetTypeEffectiveness(MOVE_SNORE, gActiveBattler, opposingBattler) >= UQ_4_12(1.0)) + || (IsBattlerGrounded(gActiveBattler) + && (HasMove(gActiveBattler, MOVE_MISTY_TERRAIN) || HasMove(gActiveBattler, MOVE_ELECTRIC_TERRAIN))) + ) + switchMon = FALSE; + + //Check if Active Pokemon evasion boosted and might be able to dodge until awake + if (gBattleMons[gActiveBattler].statStages[STAT_EVASION] > (DEFAULT_STAT_STAGE + 3) + && AI_DATA->abilities[opposingBattler] != ABILITY_UNAWARE + && AI_DATA->abilities[opposingBattler] != ABILITY_KEEN_EYE + && !(gBattleMons[gActiveBattler].status2 & STATUS2_FORESIGHT) + && !(gStatuses3[gActiveBattler] & STATUS3_MIRACLE_EYED)) + switchMon = FALSE; + + } + + //Secondary Damage + if (monAbility != ABILITY_MAGIC_GUARD + && !AiExpectsToFaintPlayer()) + { + //Toxic + moduloChance = 2; //50% + if (((gBattleMons[gActiveBattler].status1 & STATUS1_TOXIC_COUNTER) >= STATUS1_TOXIC_TURN(2)) + && gBattleMons[gActiveBattler].hp >= (gBattleMons[gActiveBattler].maxHP / 3) + && (Random() % (moduloChance*chanceReducer)) == 0) + switchMon = TRUE; + + //Cursed + moduloChance = 2; //50% + if (gBattleMons[gActiveBattler].status2 & STATUS2_CURSED + && (Random() % (moduloChance*chanceReducer)) == 0) + switchMon = TRUE; + + //Nightmare + moduloChance = 3; //33.3% + if (gBattleMons[gActiveBattler].status2 & STATUS2_NIGHTMARE + && (Random() % (moduloChance*chanceReducer)) == 0) + switchMon = TRUE; + + //Leech Seed + moduloChance = 4; //25% + if (gStatuses3[gActiveBattler] & STATUS3_LEECHSEED + && (Random() % (moduloChance*chanceReducer)) == 0) + switchMon = TRUE; + } + + //Infatuation + if (gBattleMons[gActiveBattler].status2 & STATUS2_INFATUATION + && !AiExpectsToFaintPlayer()) + switchMon = TRUE; + + //Todo + //Pass Wish Heal + + //Semi-Invulnerable + if (gStatuses3[opposingBattler] & STATUS3_SEMI_INVULNERABLE) + { + if (FindMonThatAbsorbsOpponentsMove()) //If find absorber default to switch + switchMon = TRUE; + if (!AI_OpponentCanFaintAiWithMod(0) + && AnyStatIsRaised(gActiveBattler)) + switchMon = FALSE; + if (AiExpectsToFaintPlayer() + && !WillAIStrikeFirst() + && !AI_OpponentCanFaintAiWithMod(0)) + switchMon = FALSE; + } } - else if (IS_MOVE_STATUS(gLastLandedMoves[gActiveBattler]) && Random() & 1) + + if (switchMon) { *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); return TRUE; } + else + { + return FALSE; + } +} - if (FindMonWithFlagsAndSuperEffective(MOVE_RESULT_DOESNT_AFFECT_FOE, 1)) - return TRUE; - if (FindMonWithFlagsAndSuperEffective(MOVE_RESULT_NOT_VERY_EFFECTIVE, 1)) - return TRUE; +static bool8 ShouldSwitchIfAbilityBenefit(void) +{ + s32 monToSwitchId; + s32 moduloChance = 4; //25% Chance Default + s32 chanceReducer = 1; //No Reduce default. Increase to reduce + u8 battlerId = GetBattlerPosition(gActiveBattler); - if (Random() & 1) - { - *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; - BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); - return TRUE; + if (AnyStatIsRaised(battlerId)) + chanceReducer = 5; // Reduce switchout probability by factor of 5 if setup + + //Check if ability is blocked + if (gStatuses3[gActiveBattler] & STATUS3_GASTRO_ACID + ||IsNeutralizingGasOnField()) + return FALSE; + + switch(AI_DATA->abilities[gActiveBattler]) { + case ABILITY_NATURAL_CURE: + moduloChance = 4; //25% + //Attempt to cure bad ailment + if (gBattleMons[gActiveBattler].status1 & (STATUS1_SLEEP | STATUS1_FREEZE | STATUS1_TOXIC_POISON) + && GetMostSuitableMonToSwitchInto() != PARTY_SIZE) + break; + //Attempt to cure lesser ailment + if ((gBattleMons[gActiveBattler].status1 & STATUS1_ANY) + && (gBattleMons[gActiveBattler].hp >= gBattleMons[gActiveBattler].maxHP / 2) + && GetMostSuitableMonToSwitchInto() != PARTY_SIZE + && Random() % (moduloChance*chanceReducer) == 0) + break; + + return FALSE; + + case ABILITY_REGENERATOR: + moduloChance = 2; //50% + //Don't switch if ailment + if (gBattleMons[gActiveBattler].status1 & STATUS1_ANY) + return FALSE; + if ((gBattleMons[gActiveBattler].hp <= ((gBattleMons[gActiveBattler].maxHP * 2) / 3)) + && GetMostSuitableMonToSwitchInto() != PARTY_SIZE + && Random() % (moduloChance*chanceReducer) == 0) + break; + + return FALSE; + + default: + return FALSE; } - return FALSE; + *(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE; + BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0); + + return TRUE; } static bool8 HasSuperEffectiveMoveAgainstOpponents(bool8 noRng) @@ -392,6 +574,10 @@ static bool8 FindMonWithFlagsAndSuperEffective(u16 flags, u8 moduloPercent) continue; if (i == *(gBattleStruct->monToSwitchIntoId + battlerIn2)) continue; + if (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && i == (CalculateEnemyPartyCount()-1)) + continue; + species = GetMonData(&party[i], MON_DATA_SPECIES); if (GetMonData(&party[i], MON_DATA_ABILITY_NUM) != 0) @@ -480,26 +666,42 @@ bool32 ShouldSwitch(void) continue; if (i == *(gBattleStruct->monToSwitchIntoId + battlerIn2)) continue; + if (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && i == (CalculateEnemyPartyCount()-1)) + continue; availableToSwitch++; } if (availableToSwitch == 0) return FALSE; - if (ShouldSwitchIfAllBadMoves()) - return TRUE; - if (ShouldSwitchIfPerishSong()) - return TRUE; + + //NOTE: The sequence of the below functions matter! Do not change unless you have carefully considered the outcome. + //Since the order is sequencial, and some of these functions prompt switch to specific party members. + + //These Functions can prompt switch to specific party members if (ShouldSwitchIfWonderGuard()) return TRUE; + if (ShouldSwitchIfGameStatePrompt()) + return TRUE; if (FindMonThatAbsorbsOpponentsMove()) return TRUE; - if (ShouldSwitchIfNaturalCure()) + + //These Functions can prompt switch to generic pary members + if (ShouldSwitchIfAllBadMoves()) + return TRUE; + if (ShouldSwitchIfAbilityBenefit()) return TRUE; + + //Removing switch capabilites under specific conditions + //These Functions prevent the "FindMonWithFlagsAndSuperEffective" from getting out of hand. if (HasSuperEffectiveMoveAgainstOpponents(FALSE)) return FALSE; if (AreStatsRaised()) return FALSE; + + //Default Function + //Can prompt switch if AI has a pokemon in party that resists current opponent & has super effective move if (FindMonWithFlagsAndSuperEffective(MOVE_RESULT_DOESNT_AFFECT_FOE, 2) || FindMonWithFlagsAndSuperEffective(MOVE_RESULT_NOT_VERY_EFFECTIVE, 3)) return TRUE; @@ -542,7 +744,7 @@ void AI_TrySwitchOrUseItem(void) GetAIPartyIndexes(gActiveBattler, &firstId, &lastId); - for (monToSwitchId = firstId; monToSwitchId < lastId; monToSwitchId++) + for (monToSwitchId = (lastId-1); monToSwitchId >= firstId; monToSwitchId--) { if (GetMonData(&party[monToSwitchId], MON_DATA_HP) == 0) continue; @@ -554,6 +756,9 @@ void AI_TrySwitchOrUseItem(void) continue; if (monToSwitchId == *(gBattleStruct->monToSwitchIntoId + battlerIn2)) continue; + if (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && monToSwitchId == (CalculateEnemyPartyCount()-1)) + continue; break; } @@ -751,7 +956,9 @@ u8 GetMostSuitableMonToSwitchInto(void) || gBattlerPartyIndexes[battlerIn2] == i || i == *(gBattleStruct->monToSwitchIntoId + battlerIn1) || i == *(gBattleStruct->monToSwitchIntoId + battlerIn2) - || (GetMonAbility(&party[i]) == ABILITY_TRUANT && IsTruantMonVulnerable(gActiveBattler, opposingBattler))) // While not really invalid per say, not really wise to switch into this mon. + || (GetMonAbility(&party[i]) == ABILITY_TRUANT && IsTruantMonVulnerable(gActiveBattler, opposingBattler)) // While not really invalid per say, not really wise to switch into this mon. + || (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && i == (CalculateEnemyPartyCount()-1))) //Save Ace Pokemon for last invalidMons |= gBitTable[i]; else aliveCount++; @@ -793,17 +1000,17 @@ static bool32 AiExpectsToFaintPlayer(void) bool32 canFaintPlayer; u32 i; u8 target = gBattleStruct->aiChosenTarget[gActiveBattler]; - + if (gBattleStruct->aiMoveOrAction[gActiveBattler] > 3) return FALSE; // AI not planning to use move - + if (GetBattlerSide(target) != GetBattlerSide(gActiveBattler) && CanIndexMoveFaintTarget(gActiveBattler, target, gBattleStruct->aiMoveOrAction[gActiveBattler], 0) && AI_WhoStrikesFirst(gActiveBattler, target, GetAIChosenMove(gActiveBattler)) == AI_IS_FASTER) { // We expect to faint the target and move first -> dont use an item return TRUE; } - + return FALSE; } @@ -818,10 +1025,10 @@ static bool8 ShouldUseItem(void) if ((gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && GetBattlerPosition(gActiveBattler) == B_POSITION_PLAYER_RIGHT) || gStatuses3[gActiveBattler] & STATUS3_SKY_DROPPED) return FALSE; - + if (gStatuses3[gActiveBattler] & STATUS3_EMBARGO) return FALSE; - + if (AiExpectsToFaintPlayer()) return FALSE; @@ -948,14 +1155,14 @@ static bool8 ShouldUseItem(void) static bool32 AI_ShouldHeal(u32 healAmount) { bool32 shouldHeal = FALSE; - + if (gBattleMons[gActiveBattler].hp < gBattleMons[gActiveBattler].maxHP / 4 || gBattleMons[gActiveBattler].hp == 0 || (healAmount != 0 && gBattleMons[gActiveBattler].maxHP - gBattleMons[gActiveBattler].hp > healAmount)) { // We have low enough HP to consider healing shouldHeal = !AI_OpponentCanFaintAiWithMod(healAmount); // if target can kill us even after we heal, why bother } - + return shouldHeal; } diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 75964664e33d..e1654eb30c6a 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -793,7 +793,7 @@ s32 AI_CalcDamage(u16 move, u8 battlerAtk, u8 battlerDef, u8 *typeEffectiveness, dmg *= 2; else if (move == MOVE_SURGING_STRIKES || (move == MOVE_WATER_SHURIKEN && gBattleMons[battlerAtk].species == SPECIES_GRENINJA_ASH)) dmg *= 3; - + if (dmg == 0) dmg = 1; } @@ -804,7 +804,7 @@ s32 AI_CalcDamage(u16 move, u8 battlerAtk, u8 battlerDef, u8 *typeEffectiveness, RestoreBattlerData(battlerAtk); RestoreBattlerData(battlerDef); - + // convert multiper to AI_EFFECTIVENESS_xX *typeEffectiveness = AI_GetEffectiveness(effectivenessMultiplier); @@ -1159,11 +1159,11 @@ bool32 AI_IsAbilityOnSide(u32 battlerId, u32 ability) s32 AI_GetAbility(u32 battlerId) { u32 knownAbility = GetBattlerAbility(battlerId); - + // The AI knows its own ability. if (IsBattlerAIControlled(battlerId)) return knownAbility; - + // Check neutralizing gas, gastro acid if (knownAbility == ABILITY_NONE) return knownAbility; @@ -1183,10 +1183,10 @@ s32 AI_GetAbility(u32 battlerId) { abilityGuess = gBaseStats[gBattleMons[battlerId].species].abilities[Random() % NUM_ABILITY_SLOTS]; } - + return abilityGuess; } - + return ABILITY_NONE; // Unknown. } @@ -2691,7 +2691,7 @@ static bool32 AI_CanPoisonType(u8 battlerAttacker, u8 battlerTarget) static bool32 AI_CanBePoisoned(u8 battlerAtk, u8 battlerDef) { u16 ability = AI_DATA->abilities[battlerDef]; - + if (!(AI_CanPoisonType(battlerAtk, battlerDef)) || gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_SAFEGUARD || gBattleMons[battlerDef].status1 & STATUS1_ANY @@ -3042,7 +3042,7 @@ bool32 IsValidDoubleBattle(u8 battlerAtk) u16 GetAllyChosenMove(u8 battlerId) { u8 partnerBattler = BATTLE_PARTNER(battlerId); - + if (!IsBattlerAlive(partnerBattler) || !IsBattlerAIControlled(partnerBattler)) return MOVE_NONE; else if (partnerBattler > battlerId) // Battler with the lower id chooses the move first. @@ -3444,7 +3444,7 @@ void IncreaseStatUpScore(u8 battlerAtk, u8 battlerDef, u8 statId, s16 *score) if (AI_DATA->hpPercents[battlerAtk] < 80 && AI_RandLessThan(128)) return; - + if ((AI_THINKING_STRUCT->aiFlags & AI_FLAG_TRY_TO_FAINT) && CanAIFaintTarget(battlerAtk, battlerDef, 0)) return; // Damaging moves would get a score boost from AI_TryToFaint or PreferStrongestMove so we don't consider them here @@ -3563,7 +3563,7 @@ void IncreaseParalyzeScore(u8 battlerAtk, u8 battlerDef, u16 move, s16 *score) { if ((AI_THINKING_STRUCT->aiFlags & AI_FLAG_TRY_TO_FAINT) && CanAIFaintTarget(battlerAtk, battlerDef, 0)) return; - + if (AI_CanParalyze(battlerAtk, battlerDef, AI_DATA->abilities[battlerDef], move, AI_DATA->partnerMove)) { u8 atkSpeed = GetBattlerTotalSpeedStat(battlerAtk); @@ -3584,7 +3584,7 @@ void IncreaseSleepScore(u8 battlerAtk, u8 battlerDef, u16 move, s16 *score) { if ((AI_THINKING_STRUCT->aiFlags & AI_FLAG_TRY_TO_FAINT) && CanAIFaintTarget(battlerAtk, battlerDef, 0)) return; - + if (AI_CanPutToSleep(battlerAtk, battlerDef, AI_DATA->abilities[battlerDef], move, AI_DATA->partnerMove)) *score += 2; else @@ -3602,7 +3602,7 @@ void IncreaseConfusionScore(u8 battlerAtk, u8 battlerDef, u16 move, s16 *score) { if ((AI_THINKING_STRUCT->aiFlags & AI_FLAG_TRY_TO_FAINT) && CanAIFaintTarget(battlerAtk, battlerDef, 0)) return; - + if (AI_CanConfuse(battlerAtk, battlerDef, AI_DATA->abilities[battlerDef], BATTLE_PARTNER(battlerAtk), move, AI_DATA->partnerMove) && AI_DATA->holdEffects[battlerDef] != HOLD_EFFECT_CURE_CONFUSION && AI_DATA->holdEffects[battlerDef] != HOLD_EFFECT_CURE_STATUS) @@ -3633,26 +3633,26 @@ bool32 ShouldUseZMove(u8 battlerAtk, u8 battlerDef, u16 chosenMove) return FALSE; //don't use z move on partner if (gBattleStruct->zmove.used[battlerAtk]) return FALSE; //cant use z move twice - + if (IsViableZMove(battlerAtk, chosenMove)) { u8 effectiveness; - + if (gBattleMons[battlerDef].ability == ABILITY_DISGUISE && gBattleMons[battlerDef].species == SPECIES_MIMIKYU) return FALSE; // Don't waste a Z-Move busting disguise if (gBattleMons[battlerDef].ability == ABILITY_ICE_FACE && gBattleMons[battlerDef].species == SPECIES_EISCUE && IS_MOVE_PHYSICAL(chosenMove)) return FALSE; // Don't waste a Z-Move busting Ice Face - + if (IS_MOVE_STATUS(chosenMove) && !IS_MOVE_STATUS(gBattleStruct->zmove.chosenZMove)) return FALSE; else if (!IS_MOVE_STATUS(chosenMove) && IS_MOVE_STATUS(gBattleStruct->zmove.chosenZMove)) return FALSE; - + if (!IS_MOVE_STATUS(chosenMove) && AI_CalcDamage(chosenMove, battlerAtk, battlerDef, &effectiveness, FALSE) >= gBattleMons[battlerDef].hp) return FALSE; // don't waste damaging z move if can otherwise faint target - + return TRUE; } - + return FALSE; } diff --git a/src/battle_anim.c b/src/battle_anim.c index 2806160149ae..509369789c44 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -219,7 +219,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo { s32 i; bool32 hideHpBoxes = (tableId == MOVE_TRANSFORM) ? FALSE : TRUE; - + if (!isMoveAnim) { switch (tableId) diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 048b37c660de..93bb49524114 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -6798,7 +6798,7 @@ static const union AffineAnimCmd sCompressTargetHorizontallyAffineAnimCmds[] = static void AnimTask_CompressTargetStep(u8 taskId) { struct Task* task = &gTasks[taskId]; - + if (!RunAffineAnimFromTaskData(task)) DestroyAnimVisualTask(taskId); } diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 3b9a9a8f8ecc..552fcf5170c0 100755 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -1239,17 +1239,6 @@ const struct SpriteTemplate gOmegaStoneSpriteTemplate = .callback = AnimSpriteOnMonPos, }; -const struct SpriteTemplate gPrimalParticlesSpriteTemplate = -{ - .tileTag = ANIM_TAG_PRIMAL_PARTICLES, - .paletteTag = ANIM_TAG_PRIMAL_PARTICLES, - .oam = &gOamData_AffineNormal_ObjBlend_16x16, - .anims = gPowerAbsorptionOrbAnimTable, - .images = NULL, - .affineAnims = gPowerAbsorptionOrbAffineAnimTable, - .callback = AnimPowerAbsorptionOrb, -}; - const struct SpriteTemplate gAlphaSymbolSpriteTemplate = { .tileTag = ANIM_TAG_ALPHA_SYMBOL, diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 59d012f9aee6..2735ea447838 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -1252,8 +1252,8 @@ void AnimTask_LoadWindstormBackground(u8 taskId) SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); GetBattleAnimBg1Data(&animBg); - AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Windstorm, animBg.tilesOffset); - AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimBgTilemap_Windstorm, 0); + AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Sandstorm, animBg.tilesOffset); + AnimLoadCompressedBgTilemapHandleContest(&animBg, gBattleAnimBgTilemap_Sandstorm, 0); LoadCompressedPalette(gBattleAnimSpritePal_Windstorm, animBg.paletteId * 16, 32); if (gBattleAnimArgs[0] && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index 81cc6760c96a..f21654e3e84c 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -888,7 +888,7 @@ void AnimTask_DestinyBondWhiteShadow(u8 taskId) spriteId = CreateSprite(&gDarkVoidBlackHoleTemplate, baseX, baseY, 55); //dark void else spriteId = CreateSprite(&gDestinyBondWhiteShadowSpriteTemplate, baseX, baseY, 55); //destiny bond - + if (spriteId != MAX_SPRITES) { x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); @@ -914,7 +914,7 @@ void AnimTask_DestinyBondWhiteShadow(u8 taskId) spriteId = CreateSprite(&gDarkVoidBlackHoleTemplate, baseX, baseY, 55); //dark void else spriteId = CreateSprite(&gDestinyBondWhiteShadowSpriteTemplate, baseX, baseY, 55); //destiny bond - + if (spriteId != MAX_SPRITES) { x = 48; diff --git a/src/battle_anim_new.c b/src/battle_anim_new.c index 0a3d433b4687..2134a8914d2e 100644 --- a/src/battle_anim_new.c +++ b/src/battle_anim_new.c @@ -85,7 +85,7 @@ static const union AffineAnimCmd sSquishTargetAffineAnimCmds[] = // GEN 4 // shadow sneak -const struct SpriteTemplate gShadowSneakImpactSpriteTemplate = +const struct SpriteTemplate gShadowSneakImpactSpriteTemplate = { .tileTag = ANIM_TAG_IMPACT, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -97,7 +97,7 @@ const struct SpriteTemplate gShadowSneakImpactSpriteTemplate = }; // power trick -const struct SpriteTemplate gPowerTrickSpriteTemplate = +const struct SpriteTemplate gPowerTrickSpriteTemplate = { .tileTag = ANIM_TAG_POWER_TRICK, .paletteTag = ANIM_TAG_POWER_TRICK, @@ -111,7 +111,7 @@ const struct SpriteTemplate gPowerTrickSpriteTemplate = //// GEN 5 //shell smash -const struct SpriteTemplate gShellSmashLeftShellSpriteTemplate = +const struct SpriteTemplate gShellSmashLeftShellSpriteTemplate = { .tileTag = ANIM_TAG_SHELL_RIGHT, .paletteTag = ANIM_TAG_SHELL_RIGHT, @@ -122,7 +122,7 @@ const struct SpriteTemplate gShellSmashLeftShellSpriteTemplate = .callback = AnimBite }; -const struct SpriteTemplate gShellSmashRightShellSpriteTemplate = +const struct SpriteTemplate gShellSmashRightShellSpriteTemplate = { .tileTag = ANIM_TAG_SHELL_LEFT, .paletteTag = ANIM_TAG_SHELL_LEFT, @@ -133,7 +133,7 @@ const struct SpriteTemplate gShellSmashRightShellSpriteTemplate = .callback = AnimBite }; -const struct SpriteTemplate gShellSmashPurpleRocksSpriteTemplate = +const struct SpriteTemplate gShellSmashPurpleRocksSpriteTemplate = { .tileTag = ANIM_TAG_ROCKS, .paletteTag = ANIM_TAG_SHELL_RIGHT, @@ -352,7 +352,7 @@ const struct SpriteTemplate gSimpleBeamBrownTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = TranslateAnimSpriteToTargetMonLocation }; - + const struct SpriteTemplate gSimpleBeamPinkTemplate = { .tileTag = ANIM_TAG_GOLD_RING, @@ -411,12 +411,12 @@ const struct SpriteTemplate gQuickGuardArmImpactTemplate = }; //sky drop -static const union AffineAnimCmd sSkyDropFlyBallAffineAnimCmd_0[] = +static const union AffineAnimCmd sSkyDropFlyBallAffineAnimCmd_0[] = { - AFFINEANIMCMD_FRAME(0xa0, 0x100, 0x50, 0x0), + AFFINEANIMCMD_FRAME(0xa0, 0x100, 0x50, 0x0), AFFINEANIMCMD_END }; -static const union AffineAnimCmd *const sSkyDropFlyBallAffineAnimCmds[] = +static const union AffineAnimCmd *const sSkyDropFlyBallAffineAnimCmds[] = { sSkyDropFlyBallAffineAnimCmd_0 }; @@ -604,7 +604,7 @@ const struct SpriteTemplate gHornLeechHornTemplate = }; //dual chop -const struct SpriteTemplate gDualChopImpactTemplate = +const struct SpriteTemplate gDualChopImpactTemplate = { .tileTag = ANIM_TAG_IMPACT, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -971,7 +971,7 @@ const struct SpriteTemplate gTechnoBlastIceBlastTemplate = .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = TranslateAnimSpriteToTargetMonLocation -}; +}; const struct SpriteTemplate gTechnoBlastIceSparkTemplate = { .tileTag = ANIM_TAG_SPARK_2, @@ -1202,7 +1202,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_DrakeStrikePlayer[] = AFFINEANIMCMD_FRAME(0, 0, 0xb9, 1), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd sSpriteAffineAnim_DrakeStrikeOpponent[] = +static const union AffineAnimCmd sSpriteAffineAnim_DrakeStrikeOpponent[] = { AFFINEANIMCMD_FRAME(0, 0, 0x50, 1), AFFINEANIMCMD_END, @@ -1270,15 +1270,15 @@ const struct SpriteTemplate gForestsCurseIngrainTemplate = }; //petal blizzard -static const union AnimCmd sAnimCmd_PetalBlizzard1_0[] = +static const union AnimCmd sAnimCmd_PetalBlizzard1_0[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sAnimCmdTable_PetalBlizzard1[] = +static const union AnimCmd *const sAnimCmdTable_PetalBlizzard1[] = { sAnimCmd_PetalBlizzard1_0, -}; +}; const struct SpriteTemplate gPetalBlizzardTwister1Template = { .tileTag = ANIM_TAG_FLOWER, @@ -1290,13 +1290,13 @@ const struct SpriteTemplate gPetalBlizzardTwister1Template = .callback = AnimMoveTwisterParticle }; static const u16 sPetalBlizzardFlowerOam[] = {0x0, 0x2000,0x0800,0x0}; //todo: convert to oam data -static const union AnimCmd sAnimCmd_PetalBlizzard2_0[] = +static const union AnimCmd sAnimCmd_PetalBlizzard2_0[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(4, 0), ANIMCMD_END, }; -static const union AnimCmd *const sAnimCmdTable_PetalBlizzard2[] = +static const union AnimCmd *const sAnimCmdTable_PetalBlizzard2[] = { sAnimCmd_PetalBlizzard2_0, }; @@ -2040,7 +2040,7 @@ const struct SpriteTemplate gPrecipiceBladesPlumeTemplate = }; //dragon ascent -static const union AffineAnimCmd sAffineAnimCmd_Drake[] = +static const union AffineAnimCmd sAffineAnimCmd_Drake[] = { AFFINEANIMCMD_FRAME(0, 0, 0, 1), //drake faces up AFFINEANIMCMD_END, @@ -2837,7 +2837,7 @@ const struct SpriteTemplate gCoreEnforcerBeamTemplate = .callback = SpriteCB_CoreEnforcerBeam }; -const struct SpriteTemplate gCoreEnforcerExplosionTemplate = +const struct SpriteTemplate gCoreEnforcerExplosionTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_EXPLOSION, @@ -3009,7 +3009,7 @@ const struct SpriteTemplate gPrismaticLaserChargeTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; - + const struct SpriteTemplate gPrismaticLaserYellowOutwardTemplate = { .tileTag = ANIM_TAG_GREEN_SPIKE, @@ -4111,7 +4111,7 @@ const struct SpriteTemplate gSteelBeamSpikeShardTemplate = // Z MOVES //activate -const struct SpriteTemplate gZMoveSymbolSpriteTemplate = +const struct SpriteTemplate gZMoveSymbolSpriteTemplate = { .tileTag = ANIM_TAG_Z_MOVE_SYMBOL, .paletteTag = ANIM_TAG_Z_MOVE_SYMBOL, @@ -4152,7 +4152,7 @@ const struct SpriteTemplate gYellowZMoveEnergySpriteTemplate = .callback = AnimEndureEnergy, }; // breakneck blitz -const struct SpriteTemplate gBreakneckBlitzDanceSpriteTemplate = +const struct SpriteTemplate gBreakneckBlitzDanceSpriteTemplate = { .tileTag = ANIM_TAG_HOLLOW_ORB, .paletteTag = ANIM_TAG_FLAT_ROCK, @@ -4162,7 +4162,7 @@ const struct SpriteTemplate gBreakneckBlitzDanceSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimDragonDanceOrb }; -const struct SpriteTemplate gBreakneckBlitzHitSpriteTemplate = +const struct SpriteTemplate gBreakneckBlitzHitSpriteTemplate = { .tileTag = ANIM_TAG_IMPACT, .paletteTag = ANIM_TAG_FLAT_ROCK, @@ -4173,7 +4173,7 @@ const struct SpriteTemplate gBreakneckBlitzHitSpriteTemplate = .callback = AnimHitSplatBasic }; // all out pummelling -const struct SpriteTemplate gAllOutPummelingOnslaughtSpriteTemplate = +const struct SpriteTemplate gAllOutPummelingOnslaughtSpriteTemplate = { .tileTag = ANIM_TAG_HANDS_AND_FEET, .paletteTag = ANIM_TAG_IMPACT, @@ -4196,7 +4196,7 @@ static const union AffineAnimCmd* const sSupersonicSkystrikeAffineAnimTable[] = sSupersonicSkystrikeAffinePlayerSide, sSupersonicSkystrikeAffineOpponentSide, }; -const struct SpriteTemplate gSupersonicSkystrikeFlySpriteTemplate = +const struct SpriteTemplate gSupersonicSkystrikeFlySpriteTemplate = { .tileTag = ANIM_TAG_BIRD, .paletteTag = ANIM_TAG_BIRD, @@ -4207,7 +4207,7 @@ const struct SpriteTemplate gSupersonicSkystrikeFlySpriteTemplate = .callback = AnimFlyBallAttack }; //acid downpour -const struct SpriteTemplate gAcidDownpourReversalSpriteTemplate = +const struct SpriteTemplate gAcidDownpourReversalSpriteTemplate = { .tileTag = ANIM_TAG_POISON_BUBBLE, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4217,7 +4217,7 @@ const struct SpriteTemplate gAcidDownpourReversalSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimReversalOrb }; -const struct SpriteTemplate gAcidDownpourAuraSpriteTemplate = +const struct SpriteTemplate gAcidDownpourAuraSpriteTemplate = { .tileTag = ANIM_TAG_POISON_BUBBLE, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4228,7 +4228,7 @@ const struct SpriteTemplate gAcidDownpourAuraSpriteTemplate = .callback = AnimParticleInVortex }; //tectonic rage -const struct SpriteTemplate gTectonicRageBlastBurnSpriteTemplate = +const struct SpriteTemplate gTectonicRageBlastBurnSpriteTemplate = { .tileTag = ANIM_TAG_FIRE_PLUME, .paletteTag = ANIM_TAG_FIRE_PLUME, @@ -4238,7 +4238,7 @@ const struct SpriteTemplate gTectonicRageBlastBurnSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimBlastBurnTargetPlume }; -const struct SpriteTemplate gTectonicRageExplosionSpriteTemplate = +const struct SpriteTemplate gTectonicRageExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_EXPLOSION_2, @@ -4250,7 +4250,7 @@ const struct SpriteTemplate gTectonicRageExplosionSpriteTemplate = }; // continental crush -const struct SpriteTemplate gContinentalCrushNeedleArmSpriteTemplate = +const struct SpriteTemplate gContinentalCrushNeedleArmSpriteTemplate = { .tileTag = ANIM_TAG_ROCKS, .paletteTag = ANIM_TAG_ROCKS, @@ -4260,7 +4260,7 @@ const struct SpriteTemplate gContinentalCrushNeedleArmSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimNeedleArmSpike }; -const struct SpriteTemplate gContinentalCrushBigRockStompSpriteTemplate = +const struct SpriteTemplate gContinentalCrushBigRockStompSpriteTemplate = { .tileTag = ANIM_TAG_REALLY_BIG_ROCK, .paletteTag = ANIM_TAG_REALLY_BIG_ROCK, @@ -4270,7 +4270,7 @@ const struct SpriteTemplate gContinentalCrushBigRockStompSpriteTemplate = .affineAnims = sSpriteAffineAnimTable_LargeHailRock, .callback = SpriteCB_FallingObject }; -const struct SpriteTemplate gContinentalCrushFocusEnergySpriteTemplate = +const struct SpriteTemplate gContinentalCrushFocusEnergySpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_ROCKS, @@ -4280,7 +4280,7 @@ const struct SpriteTemplate gContinentalCrushFocusEnergySpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gContinentalCrushGrowingRockSpriteTemplate = +const struct SpriteTemplate gContinentalCrushGrowingRockSpriteTemplate = { .tileTag = ANIM_TAG_REALLY_BIG_ROCK, .paletteTag = ANIM_TAG_REALLY_BIG_ROCK, @@ -4290,7 +4290,7 @@ const struct SpriteTemplate gContinentalCrushGrowingRockSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gContinentalCrushEruptionSpriteTemplate = +const struct SpriteTemplate gContinentalCrushEruptionSpriteTemplate = { .tileTag = ANIM_TAG_ROCKS, .paletteTag = ANIM_TAG_ROCKS, @@ -4302,7 +4302,7 @@ const struct SpriteTemplate gContinentalCrushEruptionSpriteTemplate = }; // savage spin out -const struct SpriteTemplate gSavageSpinOutStringBlastSpriteTemplate = +const struct SpriteTemplate gSavageSpinOutStringBlastSpriteTemplate = { .tileTag = ANIM_TAG_STRING, .paletteTag = ANIM_TAG_STRING, @@ -4312,7 +4312,7 @@ const struct SpriteTemplate gSavageSpinOutStringBlastSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimAirWaveCrescent }; -const struct SpriteTemplate gSavageSpinOutCacoonSpriteTemplate = +const struct SpriteTemplate gSavageSpinOutCacoonSpriteTemplate = { .tileTag = ANIM_TAG_COCOON, .paletteTag = ANIM_TAG_COCOON, @@ -4322,7 +4322,7 @@ const struct SpriteTemplate gSavageSpinOutCacoonSpriteTemplate = .affineAnims = gAffineAnims_Bite, .callback = AnimBite }; -const struct SpriteTemplate gSavageSpinOutGreenChargeSpriteTemplate = +const struct SpriteTemplate gSavageSpinOutGreenChargeSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_RAZOR_LEAF, @@ -4332,7 +4332,7 @@ const struct SpriteTemplate gSavageSpinOutGreenChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gSavageSpinOutGreenCutSpriteTemplate = +const struct SpriteTemplate gSavageSpinOutGreenCutSpriteTemplate = { .tileTag = ANIM_TAG_CUT, .paletteTag = ANIM_TAG_RAZOR_LEAF, @@ -4342,7 +4342,7 @@ const struct SpriteTemplate gSavageSpinOutGreenCutSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimCuttingSlice }; -const struct SpriteTemplate gSavageSpinOutWhiteExplosionSpriteTemplate = +const struct SpriteTemplate gSavageSpinOutWhiteExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_AIR_WAVE_2, @@ -4354,7 +4354,7 @@ const struct SpriteTemplate gSavageSpinOutWhiteExplosionSpriteTemplate = }; // never ending nightmare -const struct SpriteTemplate gNeverEndingNightmareRingAttackerSpriteTemplate = +const struct SpriteTemplate gNeverEndingNightmareRingAttackerSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4364,7 +4364,7 @@ const struct SpriteTemplate gNeverEndingNightmareRingAttackerSpriteTemplate = .affineAnims = gThinRingExpandingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gNeverEndingNightmareRingTargetSpriteTemplate = +const struct SpriteTemplate gNeverEndingNightmareRingTargetSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4374,7 +4374,7 @@ const struct SpriteTemplate gNeverEndingNightmareRingTargetSpriteTemplate = .affineAnims = gThinRingShrinkingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gNeverEndingNightmareFocusEnergySpriteTemplate = +const struct SpriteTemplate gNeverEndingNightmareFocusEnergySpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4384,7 +4384,7 @@ const struct SpriteTemplate gNeverEndingNightmareFocusEnergySpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gNeverEndingNightmareHandSpriteTemplate = +const struct SpriteTemplate gNeverEndingNightmareHandSpriteTemplate = { .tileTag = ANIM_TAG_ASSURANCE_HAND, .paletteTag = ANIM_TAG_ASSURANCE_HAND, @@ -4394,7 +4394,7 @@ const struct SpriteTemplate gNeverEndingNightmareHandSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimNeedleArmSpike }; -const struct SpriteTemplate gNeverEndingNightmareBlastBurnSpriteTemplate = +const struct SpriteTemplate gNeverEndingNightmareBlastBurnSpriteTemplate = { .tileTag = ANIM_TAG_FIRE_PLUME, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4404,7 +4404,7 @@ const struct SpriteTemplate gNeverEndingNightmareBlastBurnSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimBlastBurnTargetPlume }; -const struct SpriteTemplate gNeverEndingNightmareGeyserHexSpriteTemplate = +const struct SpriteTemplate gNeverEndingNightmareGeyserHexSpriteTemplate = { .tileTag = ANIM_TAG_VERTICAL_HEX, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -4414,7 +4414,7 @@ const struct SpriteTemplate gNeverEndingNightmareGeyserHexSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_GeyserTarget }; -const struct SpriteTemplate gNeverEndingNightmareExplosionSpriteTemplate = +const struct SpriteTemplate gNeverEndingNightmareExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -4426,7 +4426,7 @@ const struct SpriteTemplate gNeverEndingNightmareExplosionSpriteTemplate = }; // corkscrew crash -const struct SpriteTemplate gCorkscrewCrashMetalBitSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashMetalBitSpriteTemplate = { .tileTag = ANIM_TAG_SPIKES, .paletteTag = ANIM_TAG_SPIKES, @@ -4436,7 +4436,7 @@ const struct SpriteTemplate gCorkscrewCrashMetalBitSpriteTemplate = .affineAnims = gAffineAnims_TearDrop, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gCorkscrewCrashChargeSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashChargeSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4446,7 +4446,7 @@ const struct SpriteTemplate gCorkscrewCrashChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gCorkscrewCrashCorkscrewFlyUpSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashCorkscrewFlyUpSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4463,7 +4463,7 @@ static const union AffineAnimCmd sCorkscrewCrashFlyDownAffineOpponentSide[] = { static const union AffineAnimCmd* const sCorkscrewCrashFlyDownAffineAnimTable[] = { sCorkscrewCrashFlyDownAffineOpponentSide, }; -const struct SpriteTemplate gCorkscrewCrashCorkscrewFlyDownSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashCorkscrewFlyDownSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4485,7 +4485,7 @@ static const union AffineAnimCmd* const sCorkscrewCrashStrikeAffineAnimTable[] = sCorkscrewCrashStrikePlayerAffineAnims, sCorkscrewCrashStrikeTargetAffineAnims, }; -const struct SpriteTemplate gCorkscrewCrashStrikeSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashStrikeSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4502,7 +4502,7 @@ static const union AffineAnimCmd sCorkscrewCrashLeftAffineAnims[] = { static const union AffineAnimCmd* const sCorkscrewCrashLeftAffineAnimTable[] = { sCorkscrewCrashLeftAffineAnims, }; -const struct SpriteTemplate gCorkscrewCrashLeftUpSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashLeftUpSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4512,7 +4512,7 @@ const struct SpriteTemplate gCorkscrewCrashLeftUpSpriteTemplate = .affineAnims = sCorkscrewCrashLeftAffineAnimTable, .callback = AnimAssistPawprint }; -const struct SpriteTemplate gCorkscrewCrashLeftDownSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashLeftDownSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4529,7 +4529,7 @@ static const union AffineAnimCmd sCorkscrewCrashRightUpAffineAnims[] = { static const union AffineAnimCmd* const sCorkscrewCrashRightUpAffineAnimTable[] = { sCorkscrewCrashRightUpAffineAnims, }; -const struct SpriteTemplate gCorkscrewCrashRightUpSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashRightUpSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4546,7 +4546,7 @@ static const union AffineAnimCmd sCorkscrewCrashRightDownAffineAnims[] = { static const union AffineAnimCmd* const sCorkscrewCrashRightDownAffineAnimTable[] = { sCorkscrewCrashRightDownAffineAnims, }; -const struct SpriteTemplate gCorkscrewCrashRightDownSpriteTemplate = +const struct SpriteTemplate gCorkscrewCrashRightDownSpriteTemplate = { .tileTag = ANIM_TAG_CORKSCREW, .paletteTag = ANIM_TAG_CORKSCREW, @@ -4558,7 +4558,7 @@ const struct SpriteTemplate gCorkscrewCrashRightDownSpriteTemplate = }; // inferno overdrive -const struct SpriteTemplate gInfernoOverdriveSuperpowerSpriteTemplate = +const struct SpriteTemplate gInfernoOverdriveSuperpowerSpriteTemplate = { .tileTag = ANIM_TAG_METEOR, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -4568,7 +4568,7 @@ const struct SpriteTemplate gInfernoOverdriveSuperpowerSpriteTemplate = .affineAnims = sSpriteAffineAnimTable_GrowingSuperpower, .callback = SpriteCB_GrowingSuperpower }; -const struct SpriteTemplate gInfernoOverdriveChargeSpriteTemplate = +const struct SpriteTemplate gInfernoOverdriveChargeSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -4578,7 +4578,7 @@ const struct SpriteTemplate gInfernoOverdriveChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gInfernoOverdriveExplosionSpriteTemplate = +const struct SpriteTemplate gInfernoOverdriveExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_EXPLOSION_2, @@ -4590,7 +4590,7 @@ const struct SpriteTemplate gInfernoOverdriveExplosionSpriteTemplate = }; // hydro vortex -const struct SpriteTemplate gHydroVortexSuperpowerSpriteTemplate = +const struct SpriteTemplate gHydroVortexSuperpowerSpriteTemplate = { .tileTag = ANIM_TAG_METEOR, .paletteTag = ANIM_TAG_WATER_ORB, @@ -4600,7 +4600,7 @@ const struct SpriteTemplate gHydroVortexSuperpowerSpriteTemplate = .affineAnims = sSpriteAffineAnimTable_GrowingSuperpower, .callback = SpriteCB_GrowingSuperpower }; -const struct SpriteTemplate gHydroVortexHurricaneSpriteTemplate = +const struct SpriteTemplate gHydroVortexHurricaneSpriteTemplate = { .tileTag = ANIM_TAG_GUST, .paletteTag = ANIM_TAG_WATER_ORB, @@ -4610,7 +4610,7 @@ const struct SpriteTemplate gHydroVortexHurricaneSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEllipticalGust }; -const struct SpriteTemplate gHydroVortexImpactSpriteTemplate = +const struct SpriteTemplate gHydroVortexImpactSpriteTemplate = { .tileTag = ANIM_TAG_IMPACT, .paletteTag = ANIM_TAG_WATER_ORB, @@ -4622,7 +4622,7 @@ const struct SpriteTemplate gHydroVortexImpactSpriteTemplate = }; // bloom doom -const struct SpriteTemplate gBloomDoomPetalSpinSpriteTemplate = +const struct SpriteTemplate gBloomDoomPetalSpinSpriteTemplate = { .tileTag = ANIM_TAG_FLOWER, .paletteTag = ANIM_TAG_FLOWER, @@ -4632,7 +4632,7 @@ const struct SpriteTemplate gBloomDoomPetalSpinSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimFireSpiralOutward }; -const struct SpriteTemplate gBloomDoomGreenChargeSpriteTemplate = +const struct SpriteTemplate gBloomDoomGreenChargeSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_RAZOR_LEAF, @@ -4642,7 +4642,7 @@ const struct SpriteTemplate gBloomDoomGreenChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gBloomDoomHurricaneSpriteTemplate = +const struct SpriteTemplate gBloomDoomHurricaneSpriteTemplate = { .tileTag = ANIM_TAG_GUST, .paletteTag = ANIM_TAG_RAZOR_LEAF, @@ -4652,7 +4652,7 @@ const struct SpriteTemplate gBloomDoomHurricaneSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEllipticalGustAttacker, }; -const struct SpriteTemplate gBloomDoomFlowerGeyserSpriteTemplate = +const struct SpriteTemplate gBloomDoomFlowerGeyserSpriteTemplate = { .tileTag = ANIM_TAG_FLOWER, .paletteTag = ANIM_TAG_FLOWER, @@ -4662,7 +4662,7 @@ const struct SpriteTemplate gBloomDoomFlowerGeyserSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_Geyser }; -const struct SpriteTemplate gBloomDoomGreenBeamSpriteTemplate = +const struct SpriteTemplate gBloomDoomGreenBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_RAZOR_LEAF, @@ -4672,7 +4672,7 @@ const struct SpriteTemplate gBloomDoomGreenBeamSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb }; -const struct SpriteTemplate gBloomDoomPetalStarSpriteTemplate = +const struct SpriteTemplate gBloomDoomPetalStarSpriteTemplate = { .tileTag = ANIM_TAG_FLOWER, .paletteTag = ANIM_TAG_FLOWER, @@ -4682,7 +4682,7 @@ const struct SpriteTemplate gBloomDoomPetalStarSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimNeedleArmSpike }; -const struct SpriteTemplate gBloomDoomExplosionSpriteTemplate = +const struct SpriteTemplate gBloomDoomExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_RAZOR_LEAF, @@ -4694,7 +4694,7 @@ const struct SpriteTemplate gBloomDoomExplosionSpriteTemplate = }; // gigavolt havoc -const struct SpriteTemplate gGigavoltHavocChargingSpearSpriteTemplate = +const struct SpriteTemplate gGigavoltHavocChargingSpearSpriteTemplate = { .tileTag = ANIM_TAG_HAVOC_SPEAR, .paletteTag = ANIM_TAG_HAVOC_SPEAR, @@ -4704,7 +4704,7 @@ const struct SpriteTemplate gGigavoltHavocChargingSpearSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gGigavoltHavocLaunchSpearSpriteTemplate = +const struct SpriteTemplate gGigavoltHavocLaunchSpearSpriteTemplate = { .tileTag = ANIM_TAG_HAVOC_SPEAR, .paletteTag = ANIM_TAG_HAVOC_SPEAR, @@ -4714,7 +4714,7 @@ const struct SpriteTemplate gGigavoltHavocLaunchSpearSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSuperpowerFireball }; -const struct SpriteTemplate gGigavoltHavocRingsSpriteTemplate = +const struct SpriteTemplate gGigavoltHavocRingsSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -4724,7 +4724,7 @@ const struct SpriteTemplate gGigavoltHavocRingsSpriteTemplate = .affineAnims = gThinRingExpandingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gGigavoltHavocGeyserSpriteTemplate = +const struct SpriteTemplate gGigavoltHavocGeyserSpriteTemplate = { .tileTag = ANIM_TAG_VERTICAL_HEX, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -4736,7 +4736,7 @@ const struct SpriteTemplate gGigavoltHavocGeyserSpriteTemplate = }; // shattered psyche -const struct SpriteTemplate gShatteredPsycheReflectHitSpriteTemplate = +const struct SpriteTemplate gShatteredPsycheReflectHitSpriteTemplate = { .tileTag = ANIM_TAG_BLUE_LIGHT_WALL, .paletteTag = ANIM_TAG_BLUE_LIGHT_WALL, @@ -4746,7 +4746,7 @@ const struct SpriteTemplate gShatteredPsycheReflectHitSpriteTemplate = .affineAnims = gAffineAnims_HitSplat, .callback = AnimHitSplatBasic }; -const struct SpriteTemplate gShatteredPsychePinkChargeSpriteTemplate = +const struct SpriteTemplate gShatteredPsychePinkChargeSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_PINK_PETAL, @@ -4756,7 +4756,7 @@ const struct SpriteTemplate gShatteredPsychePinkChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gShatteredPsycheRingSpriteTemplate = +const struct SpriteTemplate gShatteredPsycheRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_PINK_PETAL, @@ -4768,7 +4768,7 @@ const struct SpriteTemplate gShatteredPsycheRingSpriteTemplate = }; // subzero slammer -const struct SpriteTemplate gSubzeroSlammerIceSpinSpriteTemplate = +const struct SpriteTemplate gSubzeroSlammerIceSpinSpriteTemplate = { .tileTag = ANIM_TAG_ICE_CRYSTALS, .paletteTag = ANIM_TAG_ICE_CRYSTALS, @@ -4778,7 +4778,7 @@ const struct SpriteTemplate gSubzeroSlammerIceSpinSpriteTemplate = .affineAnims = gAffineAnims_IceCrystalHit, .callback = AnimFireSpiralOutward }; -const struct SpriteTemplate gSubzeroSlammerExplosionSpriteTemplate = +const struct SpriteTemplate gSubzeroSlammerExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_EXPLOSION_2, @@ -4788,7 +4788,7 @@ const struct SpriteTemplate gSubzeroSlammerExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gSubzeroSlammerIceSwirlSpriteTemplate = +const struct SpriteTemplate gSubzeroSlammerIceSwirlSpriteTemplate = { .tileTag = ANIM_TAG_ICE_CRYSTALS, .paletteTag = ANIM_TAG_ICE_CRYSTALS, @@ -4836,7 +4836,7 @@ static const union AffineAnimCmd* const sDevastatingDrakeLeftAffineAnimTable[] = sDevastatingDrakeLeftAffineAnims, sDevastatingDrakeLeftAffineAnims, }; -const struct SpriteTemplate gDevastatingDrakePurpleEnergySpriteTemplate = +const struct SpriteTemplate gDevastatingDrakePurpleEnergySpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4846,7 +4846,7 @@ const struct SpriteTemplate gDevastatingDrakePurpleEnergySpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gDevastatingDrakeShockwaveSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeShockwaveSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -4856,7 +4856,7 @@ const struct SpriteTemplate gDevastatingDrakeShockwaveSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingShockWaveOrb }; -const struct SpriteTemplate gDevastatingDrakeDrakeUpSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeDrakeUpSpriteTemplate = { .tileTag = ANIM_TAG_PURPLE_DRAKE, .paletteTag = ANIM_TAG_PURPLE_DRAKE, @@ -4866,7 +4866,7 @@ const struct SpriteTemplate gDevastatingDrakeDrakeUpSpriteTemplate = .affineAnims = sDevastatingDrakeFlyUpAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gDevastatingDrakeRightSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeRightSpriteTemplate = { .tileTag = ANIM_TAG_PURPLE_DRAKE, .paletteTag = ANIM_TAG_PURPLE_DRAKE, @@ -4876,7 +4876,7 @@ const struct SpriteTemplate gDevastatingDrakeRightSpriteTemplate = .affineAnims = sDevastatingDrakeRightAffineAnimTable, .callback = AnimAssistPawprint }; -const struct SpriteTemplate gDevastatingDrakeLeftSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeLeftSpriteTemplate = { .tileTag = ANIM_TAG_PURPLE_DRAKE, .paletteTag = ANIM_TAG_PURPLE_DRAKE, @@ -4886,7 +4886,7 @@ const struct SpriteTemplate gDevastatingDrakeLeftSpriteTemplate = .affineAnims = sDevastatingDrakeLeftAffineAnimTable, .callback = AnimAssistPawprint }; -const struct SpriteTemplate gDevastatingDrakeStrikeSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeStrikeSpriteTemplate = { .tileTag = ANIM_TAG_PURPLE_DRAKE, .paletteTag = ANIM_TAG_PURPLE_DRAKE, @@ -4896,7 +4896,7 @@ const struct SpriteTemplate gDevastatingDrakeStrikeSpriteTemplate = .affineAnims = sDevastatingDrakeStrikeAffineAnimTable, .callback = AnimFlyBallAttack }; -const struct SpriteTemplate gDevastatingDrakePurpleBlastSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakePurpleBlastSpriteTemplate = { .tileTag = ANIM_TAG_FIRE_PLUME, .paletteTag = ANIM_TAG_FIRE_PLUME, @@ -4906,7 +4906,7 @@ const struct SpriteTemplate gDevastatingDrakePurpleBlastSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimBlastBurnTargetPlume }; -const struct SpriteTemplate gDevastatingDrakeHexSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeHexSpriteTemplate = { .tileTag = ANIM_TAG_VERTICAL_HEX, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -4916,7 +4916,7 @@ const struct SpriteTemplate gDevastatingDrakeHexSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_Geyser }; -const struct SpriteTemplate gDevastatingDrakeExplosionSpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_EXPLOSION, @@ -4926,7 +4926,7 @@ const struct SpriteTemplate gDevastatingDrakeExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gDevastatingDrakeExplosion2SpriteTemplate = +const struct SpriteTemplate gDevastatingDrakeExplosion2SpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_EXPLOSION_2, @@ -4938,7 +4938,7 @@ const struct SpriteTemplate gDevastatingDrakeExplosion2SpriteTemplate = }; // black hole eclipse -const struct SpriteTemplate gBlackHoleEclipseShockwaveSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseShockwaveSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_BLACK_BALL_2, @@ -4948,7 +4948,7 @@ const struct SpriteTemplate gBlackHoleEclipseShockwaveSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingShockWaveOrb }; -const struct SpriteTemplate gBlackHoleEclipseBlueRingSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseBlueRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_ICE_CHUNK, @@ -4958,7 +4958,7 @@ const struct SpriteTemplate gBlackHoleEclipseBlueRingSpriteTemplate = .affineAnims = gThinRingExpandingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gBlackHoleEclipseBlackRingSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseBlackRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -4968,7 +4968,7 @@ const struct SpriteTemplate gBlackHoleEclipseBlackRingSpriteTemplate = .affineAnims = gThinRingExpandingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gBlackHoleEclipseRedExplosionSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseRedExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -4978,7 +4978,7 @@ const struct SpriteTemplate gBlackHoleEclipseRedExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gBlackHoleEclipseWispSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseWispSpriteTemplate = { .tileTag = ANIM_TAG_WISP_ORB, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -4988,7 +4988,7 @@ const struct SpriteTemplate gBlackHoleEclipseWispSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimWillOWispOrb }; -const struct SpriteTemplate gBlackHoleEclipseRedRingSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseRedRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -4998,7 +4998,7 @@ const struct SpriteTemplate gBlackHoleEclipseRedRingSpriteTemplate = .affineAnims = gThinRingExpandingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gBlackHoleEclipseBlueRingInwardsSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseBlueRingInwardsSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_ICE_CHUNK, @@ -5008,7 +5008,7 @@ const struct SpriteTemplate gBlackHoleEclipseBlueRingInwardsSpriteTemplate = .affineAnims = gThinRingShrinkingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gBlackHoleEclipseRedRingInwardsSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseRedRingInwardsSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5026,7 +5026,7 @@ static const union AffineAnimCmd gGrowingBackHoleTargetAffineCmds[] = { static const union AffineAnimCmd *const gGrowingBlackHoleTargetAffineAnimTable[] = { gGrowingBackHoleTargetAffineCmds, }; -const struct SpriteTemplate gBlackHoleEclipseHoleSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseHoleSpriteTemplate = { .tileTag = ANIM_TAG_SHADOW_BALL, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5044,7 +5044,7 @@ static const union AffineAnimCmd gShrinkingBlackHoleAffineCmds[] = { static const union AffineAnimCmd *const gShrinkingBlackHoleAffineAnimTable[] = { gShrinkingBlackHoleAffineCmds, }; -const struct SpriteTemplate gBlackHoleEclipseHoleShrinkSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseHoleShrinkSpriteTemplate = { .tileTag = ANIM_TAG_SHADOW_BALL, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5062,7 +5062,7 @@ static const union AffineAnimCmd gGrowingBackHoleAffineCmds[] = { static const union AffineAnimCmd *const gGrowingBlackHoleAffineAnimTable[] = { gGrowingBackHoleAffineCmds, }; -const struct SpriteTemplate gBlackHoleEclipseHoleUserSpriteTemplate = +const struct SpriteTemplate gBlackHoleEclipseHoleUserSpriteTemplate = { .tileTag = ANIM_TAG_SHADOW_BALL, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -5072,7 +5072,7 @@ const struct SpriteTemplate gBlackHoleEclipseHoleUserSpriteTemplate = .affineAnims = gGrowingBlackHoleAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gTargetTwinkleSpriteTemplate = +const struct SpriteTemplate gTargetTwinkleSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_4, .paletteTag = ANIM_TAG_SPARKLE_4, @@ -5098,7 +5098,7 @@ static const union AffineAnimCmd *const sTwinkleTackleStarAffineAnimTable[] = { sTwinkleTackleStarPlayerAffineAnims, sTwinkleTackleStarOpponentAffineAnims }; -const struct SpriteTemplate gTwinkleTacklePinkStarSpriteTemplate = +const struct SpriteTemplate gTwinkleTacklePinkStarSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_2, .paletteTag = ANIM_TAG_PINK_PETAL, @@ -5108,7 +5108,7 @@ const struct SpriteTemplate gTwinkleTacklePinkStarSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimGrantingStars }; -const struct SpriteTemplate gTwinkleTacklePinkRingSpriteTemplate = +const struct SpriteTemplate gTwinkleTacklePinkRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_PINK_PETAL, @@ -5118,7 +5118,7 @@ const struct SpriteTemplate gTwinkleTacklePinkRingSpriteTemplate = .affineAnims = gThinRingExpandingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gTwinkleTackleStarGrowSpriteTemplate = +const struct SpriteTemplate gTwinkleTackleStarGrowSpriteTemplate = { .tileTag = ANIM_TAG_YELLOW_STAR, .paletteTag = ANIM_TAG_YELLOW_STAR, @@ -5128,7 +5128,7 @@ const struct SpriteTemplate gTwinkleTackleStarGrowSpriteTemplate = .affineAnims = sTwinkleTackleStarAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gTwinkleTackleTwinkleSpriteTemplate = +const struct SpriteTemplate gTwinkleTackleTwinkleSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_4, .paletteTag = ANIM_TAG_SPARKLE_4, @@ -5138,7 +5138,7 @@ const struct SpriteTemplate gTwinkleTackleTwinkleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCB_TwinkleOnBattler }; -const struct SpriteTemplate gTwinkleTackleDigStarSpriteTemplate = +const struct SpriteTemplate gTwinkleTackleDigStarSpriteTemplate = { .tileTag = ANIM_TAG_YELLOW_STAR, .paletteTag = ANIM_TAG_YELLOW_STAR, @@ -5148,7 +5148,7 @@ const struct SpriteTemplate gTwinkleTackleDigStarSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimDirtPlumeParticle }; -const struct SpriteTemplate gTwinkleTackleYellowImpactSpriteTemplate = +const struct SpriteTemplate gTwinkleTackleYellowImpactSpriteTemplate = { .tileTag = ANIM_TAG_IMPACT, .paletteTag = ANIM_TAG_YELLOW_STAR, @@ -5158,7 +5158,7 @@ const struct SpriteTemplate gTwinkleTackleYellowImpactSpriteTemplate = .affineAnims = gAffineAnims_HitSplat, .callback = AnimHitSplatBasic }; -const struct SpriteTemplate gTwinkleTackleImpactStarsSpriteTemplate = +const struct SpriteTemplate gTwinkleTackleImpactStarsSpriteTemplate = { .tileTag = ANIM_TAG_PAIN_SPLIT, .paletteTag = ANIM_TAG_YELLOW_STAR, @@ -5170,7 +5170,7 @@ const struct SpriteTemplate gTwinkleTackleImpactStarsSpriteTemplate = }; // catastrokpika -const struct SpriteTemplate gCatastrokpikaSuperpowerSpriteTemplate = +const struct SpriteTemplate gCatastrokpikaSuperpowerSpriteTemplate = { .tileTag = ANIM_TAG_METEOR, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -5182,7 +5182,7 @@ const struct SpriteTemplate gCatastrokpikaSuperpowerSpriteTemplate = }; // 10e6 volt thunderbolt -const struct SpriteTemplate g10MillionVoltBoltYellowFlySpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltYellowFlySpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_SPARK_2, @@ -5192,7 +5192,7 @@ const struct SpriteTemplate g10MillionVoltBoltYellowFlySpriteTemplate = .affineAnims = gAffineAnims_FlyBallUp, .callback = AnimFlyBallUp }; -const struct SpriteTemplate g10MillionVoltBoltShockwaveSpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltShockwaveSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -5202,7 +5202,7 @@ const struct SpriteTemplate g10MillionVoltBoltShockwaveSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingShockWaveOrbOnTarget, }; -const struct SpriteTemplate g10MillionVoltBoltRedBeamSpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltRedBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5212,7 +5212,7 @@ const struct SpriteTemplate g10MillionVoltBoltRedBeamSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb }; -const struct SpriteTemplate g10MillionVoltBoltBlueBeamSpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltBlueBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5222,7 +5222,7 @@ const struct SpriteTemplate g10MillionVoltBoltBlueBeamSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb }; -const struct SpriteTemplate g10MillionVoltBoltPinkBeamSpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltPinkBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_BERRY_EATEN, @@ -5232,7 +5232,7 @@ const struct SpriteTemplate g10MillionVoltBoltPinkBeamSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb }; -const struct SpriteTemplate g10MillionVoltBoltYellowBeamSpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltYellowBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_ELECTRIC_ORBS, @@ -5242,7 +5242,7 @@ const struct SpriteTemplate g10MillionVoltBoltYellowBeamSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb }; -const struct SpriteTemplate g10MillionVoltBoltGreenBeamSpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltGreenBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_LEAF, @@ -5252,7 +5252,7 @@ const struct SpriteTemplate g10MillionVoltBoltGreenBeamSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb }; -const struct SpriteTemplate g10MillionVoltBoltPurpleBeamSpriteTemplate = +const struct SpriteTemplate g10MillionVoltBoltPurpleBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -5264,7 +5264,7 @@ const struct SpriteTemplate g10MillionVoltBoltPurpleBeamSpriteTemplate = }; // stoked sparksurfer -const struct SpriteTemplate gStokedSparksurferFlySpriteTemplate = +const struct SpriteTemplate gStokedSparksurferFlySpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_SPARK_2, @@ -5276,7 +5276,7 @@ const struct SpriteTemplate gStokedSparksurferFlySpriteTemplate = }; // extreme evoboost -const struct SpriteTemplate gExtremeEvoboostRedChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostRedChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5286,7 +5286,7 @@ const struct SpriteTemplate gExtremeEvoboostRedChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostPinkChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostPinkChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_BERRY_EATEN, @@ -5296,7 +5296,7 @@ const struct SpriteTemplate gExtremeEvoboostPinkChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostIceChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostIceChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_ICE_CHUNK, @@ -5306,7 +5306,7 @@ const struct SpriteTemplate gExtremeEvoboostIceChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostBlackChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostBlackChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_WISP_ORB, @@ -5316,7 +5316,7 @@ const struct SpriteTemplate gExtremeEvoboostBlackChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostBlueChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostBlueChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5326,7 +5326,7 @@ const struct SpriteTemplate gExtremeEvoboostBlueChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostPurpleChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostPurpleChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -5336,7 +5336,7 @@ const struct SpriteTemplate gExtremeEvoboostPurpleChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostYellowChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostYellowChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -5346,7 +5346,7 @@ const struct SpriteTemplate gExtremeEvoboostYellowChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostGreenChargeUpSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostGreenChargeUpSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_LEAF, @@ -5356,7 +5356,7 @@ const struct SpriteTemplate gExtremeEvoboostGreenChargeUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gExtremeEvoboostRedChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostRedChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5366,7 +5366,7 @@ const struct SpriteTemplate gExtremeEvoboostRedChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostPinkChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostPinkChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_BERRY_EATEN, @@ -5376,7 +5376,7 @@ const struct SpriteTemplate gExtremeEvoboostPinkChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostIceChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostIceChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_ICE_CHUNK, @@ -5386,7 +5386,7 @@ const struct SpriteTemplate gExtremeEvoboostIceChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostBlackChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostBlackChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_WISP_ORB, @@ -5396,7 +5396,7 @@ const struct SpriteTemplate gExtremeEvoboostBlackChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostBlueChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostBlueChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5406,7 +5406,7 @@ const struct SpriteTemplate gExtremeEvoboostBlueChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostPurpleChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostPurpleChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -5416,7 +5416,7 @@ const struct SpriteTemplate gExtremeEvoboostPurpleChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostYellowChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostYellowChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -5426,7 +5426,7 @@ const struct SpriteTemplate gExtremeEvoboostYellowChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostGreenChargeCircleSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostGreenChargeCircleSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_LEAF, @@ -5436,7 +5436,7 @@ const struct SpriteTemplate gExtremeEvoboostGreenChargeCircleSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimExtremeEvoboostCircle }; -const struct SpriteTemplate gExtremeEvoboostRedStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostRedStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5446,7 +5446,7 @@ const struct SpriteTemplate gExtremeEvoboostRedStockpileSpriteTemplate = .affineAnims = gStockpileAbsorptionOrbAffineAnimTable, .callback = AnimPowerAbsorptionOrb }; -const struct SpriteTemplate gExtremeEvoboostPinkStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostPinkStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_BERRY_EATEN, @@ -5456,7 +5456,7 @@ const struct SpriteTemplate gExtremeEvoboostPinkStockpileSpriteTemplate = .affineAnims = gStockpileAbsorptionOrbAffineAnimTable, .callback = AnimPowerAbsorptionOrb }; -const struct SpriteTemplate gExtremeEvoboostIceStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostIceStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_ICE_CHUNK, @@ -5466,7 +5466,7 @@ const struct SpriteTemplate gExtremeEvoboostIceStockpileSpriteTemplate = .affineAnims = gStockpileAbsorptionOrbAffineAnimTable, .callback = AnimPowerAbsorptionOrb }; -const struct SpriteTemplate gExtremeEvoboostBlackStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostBlackStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_WISP_ORB, @@ -5476,7 +5476,7 @@ const struct SpriteTemplate gExtremeEvoboostBlackStockpileSpriteTemplate = .affineAnims = gStockpileAbsorptionOrbAffineAnimTable, .callback = AnimPowerAbsorptionOrb }; -const struct SpriteTemplate gExtremeEvoboostBlueStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostBlueStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5486,7 +5486,7 @@ const struct SpriteTemplate gExtremeEvoboostBlueStockpileSpriteTemplate = .affineAnims = gStockpileAbsorptionOrbAffineAnimTable, .callback = AnimPowerAbsorptionOrb }; -const struct SpriteTemplate gExtremeEvoboostPurpleStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostPurpleStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -5496,7 +5496,7 @@ const struct SpriteTemplate gExtremeEvoboostPurpleStockpileSpriteTemplate = .affineAnims = gStockpileAbsorptionOrbAffineAnimTable, .callback = AnimPowerAbsorptionOrb }; -const struct SpriteTemplate gExtremeEvoboostYellowStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostYellowStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -5506,7 +5506,7 @@ const struct SpriteTemplate gExtremeEvoboostYellowStockpileSpriteTemplate = .affineAnims = gStockpileAbsorptionOrbAffineAnimTable, .callback = AnimPowerAbsorptionOrb }; -const struct SpriteTemplate gExtremeEvoboostGreenStockpileSpriteTemplate = +const struct SpriteTemplate gExtremeEvoboostGreenStockpileSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_LEAF, @@ -5518,7 +5518,7 @@ const struct SpriteTemplate gExtremeEvoboostGreenStockpileSpriteTemplate = }; // pulverizing pancake -const struct SpriteTemplate gPulverizingPancakeRedDetectSpriteTemplate = +const struct SpriteTemplate gPulverizingPancakeRedDetectSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_4, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5528,7 +5528,7 @@ const struct SpriteTemplate gPulverizingPancakeRedDetectSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpinningSparkle }; -const struct SpriteTemplate gPulverizingPancakeExplosionSpriteTemplate = +const struct SpriteTemplate gPulverizingPancakeExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_ELECTRIC_ORBS, @@ -5538,7 +5538,7 @@ const struct SpriteTemplate gPulverizingPancakeExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gPulverizingPancakeYellowRingSpriteTemplate = +const struct SpriteTemplate gPulverizingPancakeYellowRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_ELECTRIC_ORBS, @@ -5550,7 +5550,7 @@ const struct SpriteTemplate gPulverizingPancakeYellowRingSpriteTemplate = }; // genesis supernova -const struct SpriteTemplate gGenesisSupernovaOrbRiseSpriteTemplate = +const struct SpriteTemplate gGenesisSupernovaOrbRiseSpriteTemplate = { .tileTag = ANIM_TAG_POISON_BUBBLE, .paletteTag = ANIM_TAG_POISON_JAB, @@ -5560,7 +5560,7 @@ const struct SpriteTemplate gGenesisSupernovaOrbRiseSpriteTemplate = .affineAnims = gAffineAnims_Bubble, .callback = AnimAssistPawprint }; -const struct SpriteTemplate gGenesisSupernovaReversalSpriteTemplate = +const struct SpriteTemplate gGenesisSupernovaReversalSpriteTemplate = { .tileTag = ANIM_TAG_POISON_BUBBLE, .paletteTag = ANIM_TAG_POISON_JAB, @@ -5570,7 +5570,7 @@ const struct SpriteTemplate gGenesisSupernovaReversalSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimReversalOrb }; -const struct SpriteTemplate gGenesisSupernovaSpinUpSpriteTemplate = +const struct SpriteTemplate gGenesisSupernovaSpinUpSpriteTemplate = { .tileTag = ANIM_TAG_POISON_BUBBLE, .paletteTag = ANIM_TAG_POISON_JAB, @@ -5580,7 +5580,7 @@ const struct SpriteTemplate gGenesisSupernovaSpinUpSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gGenesisSupernovaChargeSpriteTemplate = +const struct SpriteTemplate gGenesisSupernovaChargeSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_POISON_JAB, @@ -5590,7 +5590,7 @@ const struct SpriteTemplate gGenesisSupernovaChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gGenesisSupernovaSuperpowerSpriteTemplate = +const struct SpriteTemplate gGenesisSupernovaSuperpowerSpriteTemplate = { .tileTag = ANIM_TAG_METEOR, .paletteTag = ANIM_TAG_WISP_ORB, @@ -5600,7 +5600,7 @@ const struct SpriteTemplate gGenesisSupernovaSuperpowerSpriteTemplate = .affineAnims = sSpriteAffineAnimTable_GrowingSuperpower, .callback = SpriteCB_GrowingSuperpower }; -const struct SpriteTemplate gGenesisSupernovaBubbleSpriteTemplate = +const struct SpriteTemplate gGenesisSupernovaBubbleSpriteTemplate = { .tileTag = ANIM_TAG_POISON_BUBBLE, .paletteTag = ANIM_TAG_POISON_JAB, @@ -5610,7 +5610,7 @@ const struct SpriteTemplate gGenesisSupernovaBubbleSpriteTemplate = .affineAnims = gAffineAnims_Bubble, .callback = AnimBubbleEffect }; -const struct SpriteTemplate gGenesisSupernovaExplosionSpriteTemplate = +const struct SpriteTemplate gGenesisSupernovaExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_WISP_ORB, @@ -5650,7 +5650,7 @@ static const union AffineAnimCmd *const sArrowRaidFlyLeftAffineAnimTable[] = { sArrowRaidFlyLeftAffineAnims, sArrowRaidFlyLeftAffineAnims }; -const struct SpriteTemplate gArrowRaidExplosionSpriteTemplate = +const struct SpriteTemplate gArrowRaidExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -5660,7 +5660,7 @@ const struct SpriteTemplate gArrowRaidExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gArrowRaidFlyUpSpriteTemplate = +const struct SpriteTemplate gArrowRaidFlyUpSpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_LEAF, @@ -5670,7 +5670,7 @@ const struct SpriteTemplate gArrowRaidFlyUpSpriteTemplate = .affineAnims = gAffineAnims_FlyBallUp, .callback = AnimFlyBallUp }; -const struct SpriteTemplate gArrowRaidFlyRightSpriteTemplate = +const struct SpriteTemplate gArrowRaidFlyRightSpriteTemplate = { .tileTag = ANIM_TAG_BIRD, .paletteTag = ANIM_TAG_LEAF, @@ -5680,7 +5680,7 @@ const struct SpriteTemplate gArrowRaidFlyRightSpriteTemplate = .affineAnims = sArrowRaidFlyRightAffineAnimTable, .callback = AnimAssistPawprint }; -const struct SpriteTemplate gArrowRaidFlyLeftSpriteTemplate = +const struct SpriteTemplate gArrowRaidFlyLeftSpriteTemplate = { .tileTag = ANIM_TAG_BIRD, .paletteTag = ANIM_TAG_LEAF, @@ -5690,7 +5690,7 @@ const struct SpriteTemplate gArrowRaidFlyLeftSpriteTemplate = .affineAnims = sArrowRaidFlyLeftAffineAnimTable, .callback = AnimAssistPawprint }; -const struct SpriteTemplate gArrowRaidFlyStrikeSpriteTemplate = +const struct SpriteTemplate gArrowRaidFlyStrikeSpriteTemplate = { .tileTag = ANIM_TAG_BIRD, .paletteTag = ANIM_TAG_LEAF, @@ -5707,7 +5707,7 @@ static const union AffineAnimCmd sArrowRaidArrowUpAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidArrowUpAffineAnimTable[] = { sArrowRaidArrowUpAffineAnims, }; -const struct SpriteTemplate gArrowRaidArrowUpSpriteTemplate = +const struct SpriteTemplate gArrowRaidArrowUpSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5724,7 +5724,7 @@ static const union AffineAnimCmd sArrowRaidArrowRightUpAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidArrowRightUpAffineAnimTable[] = { sArrowRaidArrowRightUpAffineAnims, }; -const struct SpriteTemplate gArrowRaidRightUpSpriteTemplate = +const struct SpriteTemplate gArrowRaidRightUpSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5741,7 +5741,7 @@ static const union AffineAnimCmd sArrowRaidRightDownAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidRightDownAffineAnimTable[] = { sArrowRaidRightDownAffineAnims, }; -const struct SpriteTemplate gArrowRaidRightDownSpriteTemplate = +const struct SpriteTemplate gArrowRaidRightDownSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5758,7 +5758,7 @@ static const union AffineAnimCmd sArrowRaidArrowLeftUpAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidLeftUpAffineAnimTable[] = { sArrowRaidArrowLeftUpAffineAnims, }; -const struct SpriteTemplate gArrowRaidLeftUpSpriteTemplate = +const struct SpriteTemplate gArrowRaidLeftUpSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5775,7 +5775,7 @@ static const union AffineAnimCmd sArrowRaidFaceUpLeftAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidFaceUpLeftAffineAnimTable[] = { sArrowRaidFaceUpLeftAffineAnims, }; -const struct SpriteTemplate gArrowRaidFaceUpLeftSpriteTemplate = +const struct SpriteTemplate gArrowRaidFaceUpLeftSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5792,7 +5792,7 @@ static const union AffineAnimCmd sArrowRaidArrowFaceRightAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidArrowFaceRightAffineAnimTable[] = { sArrowRaidArrowFaceRightAffineAnims }; -const struct SpriteTemplate gArrowRaidRightSpriteTemplate = +const struct SpriteTemplate gArrowRaidRightSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5809,7 +5809,7 @@ static const union AffineAnimCmd sArrowRaidLeftDownAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidLeftDownAffineAnimTable[] = { sArrowRaidLeftDownAffineAnims }; -const struct SpriteTemplate gArrowRaidLeftDownSpriteTemplate = +const struct SpriteTemplate gArrowRaidLeftDownSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5826,7 +5826,7 @@ static const union AffineAnimCmd sArrowRaidOnslaughtAffineAnims[] = { static const union AffineAnimCmd *const sArrowRaidOnslaughtAffineAnimTable[] = { sArrowRaidOnslaughtAffineAnims }; -const struct SpriteTemplate gArrowRaidArrowOnslaughtSpriteTemplate = +const struct SpriteTemplate gArrowRaidArrowOnslaughtSpriteTemplate = { .tileTag = ANIM_TAG_SPIRIT_ARROW, .paletteTag = ANIM_TAG_SPIRIT_ARROW, @@ -5838,7 +5838,7 @@ const struct SpriteTemplate gArrowRaidArrowOnslaughtSpriteTemplate = }; // malicious moonsault -const struct SpriteTemplate gMaliciousMoonsaultRedFlySpriteTemplate = +const struct SpriteTemplate gMaliciousMoonsaultRedFlySpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5848,7 +5848,7 @@ const struct SpriteTemplate gMaliciousMoonsaultRedFlySpriteTemplate = .affineAnims = gAffineAnims_FlyBallUp, .callback = AnimFlyBallUp }; -const struct SpriteTemplate gMaliciousMoonsaultRedBounceSpriteTemplate = +const struct SpriteTemplate gMaliciousMoonsaultRedBounceSpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5858,7 +5858,7 @@ const struct SpriteTemplate gMaliciousMoonsaultRedBounceSpriteTemplate = .affineAnims = gAffineAnims_BounceBallLand, .callback = AnimBounceBallLand }; -const struct SpriteTemplate gMaliciousMoonsaultRedImpactSpriteTemplate = +const struct SpriteTemplate gMaliciousMoonsaultRedImpactSpriteTemplate = { .tileTag = ANIM_TAG_IMPACT, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5868,7 +5868,7 @@ const struct SpriteTemplate gMaliciousMoonsaultRedImpactSpriteTemplate = .affineAnims = gAffineAnims_HitSplat, .callback = AnimHitSplatBasic }; -const struct SpriteTemplate gMaliciousMoonsaultFireblastSpriteTemplate = +const struct SpriteTemplate gMaliciousMoonsaultFireblastSpriteTemplate = { .tileTag = ANIM_TAG_SMALL_EMBER, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -5878,7 +5878,7 @@ const struct SpriteTemplate gMaliciousMoonsaultFireblastSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimFireCross }; -const struct SpriteTemplate gMaliciousMoonsaultExplosionSpriteTemplate = +const struct SpriteTemplate gMaliciousMoonsaultExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_EXPLOSION_2, @@ -5900,7 +5900,7 @@ const struct SpriteTemplate gOceanOperaSpotlightSpriteTemplate = .affineAnims = gSpotlightAffineAnimTable, .callback = AnimOceanicOperettaSpotlight, }; -const struct SpriteTemplate gOceanOperaBlueFlareSpriteTemplate = +const struct SpriteTemplate gOceanOperaBlueFlareSpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5910,7 +5910,7 @@ const struct SpriteTemplate gOceanOperaBlueFlareSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gOceanOperaBlueChargeSpriteTemplate = +const struct SpriteTemplate gOceanOperaBlueChargeSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5920,7 +5920,7 @@ const struct SpriteTemplate gOceanOperaBlueChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gOceanOperaBlueRingSpriteTemplate = +const struct SpriteTemplate gOceanOperaBlueRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5930,7 +5930,7 @@ const struct SpriteTemplate gOceanOperaBlueRingSpriteTemplate = .affineAnims = gThinRingShrinkingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gOceanOperaMovingOrbsSpriteTemplate = +const struct SpriteTemplate gOceanOperaMovingOrbsSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5940,7 +5940,7 @@ const struct SpriteTemplate gOceanOperaMovingOrbsSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimThrowMistBall }; -const struct SpriteTemplate gOceanOperaBlueOrbsSpriteTemplate = +const struct SpriteTemplate gOceanOperaBlueOrbsSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5950,7 +5950,7 @@ const struct SpriteTemplate gOceanOperaBlueOrbsSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimBite }; -const struct SpriteTemplate gOceanOperaExpandingRingSpriteTemplate = +const struct SpriteTemplate gOceanOperaExpandingRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5960,7 +5960,7 @@ const struct SpriteTemplate gOceanOperaExpandingRingSpriteTemplate = .affineAnims = gThinRingExpandingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gOceanOperaExplosionSpriteTemplate = +const struct SpriteTemplate gOceanOperaExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5970,7 +5970,7 @@ const struct SpriteTemplate gOceanOperaExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gOceanOperaSparkleSpriteTemplate = +const struct SpriteTemplate gOceanOperaSparkleSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_2, .paletteTag = ANIM_TAG_WATER_ORB, @@ -5982,7 +5982,7 @@ const struct SpriteTemplate gOceanOperaSparkleSpriteTemplate = }; // splintered stormshards -const struct SpriteTemplate gSplinteredShardsFlySpriteTemplate = +const struct SpriteTemplate gSplinteredShardsFlySpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_ROCKS, @@ -5992,7 +5992,7 @@ const struct SpriteTemplate gSplinteredShardsFlySpriteTemplate = .affineAnims = gAffineAnims_FlyBallUp, .callback = AnimFlyBallUp }; -const struct SpriteTemplate gSplinteredShardsExplosionSpriteTemplate = +const struct SpriteTemplate gSplinteredShardsExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_ROCKS, @@ -6002,7 +6002,7 @@ const struct SpriteTemplate gSplinteredShardsExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gSplinteredShardsRisingSpearSpriteTemplate = +const struct SpriteTemplate gSplinteredShardsRisingSpearSpriteTemplate = { .tileTag = ANIM_TAG_ICICLE_SPEAR, .paletteTag = ANIM_TAG_ROCKS, @@ -6019,7 +6019,7 @@ static const union AffineAnimCmd sSplinteredShardsOpponentSteepAffineAnims[] = { static const union AffineAnimCmd *const sSplinteredShardsOpponentSteepAffineAnimTable[] = { sSplinteredShardsOpponentSteepAffineAnims, }; -const struct SpriteTemplate gSplinteredShardsSplinterOpponentSteepSpriteTemplate = +const struct SpriteTemplate gSplinteredShardsSplinterOpponentSteepSpriteTemplate = { .tileTag = ANIM_TAG_ICICLE_SPEAR, .paletteTag = ANIM_TAG_ROCKS, @@ -6036,7 +6036,7 @@ static const union AffineAnimCmd sSplinteredShardsOpponentShallowAffineAnims[] = static const union AffineAnimCmd *const sSplinteredShardsOpponentShallowAffineAnimTable[] = { sSplinteredShardsOpponentShallowAffineAnims }; -const struct SpriteTemplate gSplinteredShardsSplinterOpponentShallowSpriteTemplate = +const struct SpriteTemplate gSplinteredShardsSplinterOpponentShallowSpriteTemplate = { .tileTag = ANIM_TAG_ICICLE_SPEAR, .paletteTag = ANIM_TAG_ROCKS, @@ -6053,7 +6053,7 @@ static const union AffineAnimCmd sSplinteredShardsPlayerSteepAffineAnims[] = { static const union AffineAnimCmd *const sSplinteredShardsPlayerSteepAffineAnimTable[] = { sSplinteredShardsPlayerSteepAffineAnims }; -const struct SpriteTemplate gSplinteredShardsSplinterPlayerSteepSpriteTemplate = +const struct SpriteTemplate gSplinteredShardsSplinterPlayerSteepSpriteTemplate = { .tileTag = ANIM_TAG_ICICLE_SPEAR, .paletteTag = ANIM_TAG_ROCKS, @@ -6070,7 +6070,7 @@ static const union AffineAnimCmd sSplinteredShardsPlayerShallowAffineAnims[] = { static const union AffineAnimCmd *const sSplinteredShardsPlayerShallowAffineAnimTable[] = { sSplinteredShardsPlayerShallowAffineAnims }; -const struct SpriteTemplate gSplinteredShardsSplinterPlayerShallowSpriteTemplate = +const struct SpriteTemplate gSplinteredShardsSplinterPlayerShallowSpriteTemplate = { .tileTag = ANIM_TAG_ICICLE_SPEAR, .paletteTag = ANIM_TAG_ROCKS, @@ -6082,7 +6082,7 @@ const struct SpriteTemplate gSplinteredShardsSplinterPlayerShallowSpriteTemplate }; // lets snuggle forever -const struct SpriteTemplate gSnuggleForeverEyesSpriteTemplate = +const struct SpriteTemplate gSnuggleForeverEyesSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_4, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -6092,7 +6092,7 @@ const struct SpriteTemplate gSnuggleForeverEyesSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpinningSparkle }; -const struct SpriteTemplate gSnuggleForeverStarSpriteTemplate = +const struct SpriteTemplate gSnuggleForeverStarSpriteTemplate = { .tileTag = ANIM_TAG_PAIN_SPLIT, .paletteTag = ANIM_TAG_DUCK, @@ -6102,7 +6102,7 @@ const struct SpriteTemplate gSnuggleForeverStarSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimDizzyPunchDuck }; -const struct SpriteTemplate gSnuggleForeverHeartSpriteTemplate = +const struct SpriteTemplate gSnuggleForeverHeartSpriteTemplate = { .tileTag = ANIM_TAG_MAGENTA_HEART, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -6114,7 +6114,7 @@ const struct SpriteTemplate gSnuggleForeverHeartSpriteTemplate = }; // clangorous soulblaze -const struct SpriteTemplate gClangoorousSoulblazeWhiteFlySpriteTemplate = +const struct SpriteTemplate gClangoorousSoulblazeWhiteFlySpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_AIR_WAVE_2, @@ -6124,7 +6124,7 @@ const struct SpriteTemplate gClangoorousSoulblazeWhiteFlySpriteTemplate = .affineAnims = gAffineAnims_FlyBallUp, .callback = AnimFlyBallUp }; -const struct SpriteTemplate gClangoorousSoulblazePurpleSwirlSpriteTemplate = +const struct SpriteTemplate gClangoorousSoulblazePurpleSwirlSpriteTemplate = { .tileTag = ANIM_TAG_WATER_ORB, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -6134,7 +6134,7 @@ const struct SpriteTemplate gClangoorousSoulblazePurpleSwirlSpriteTemplate = .affineAnims = gAffineAnims_Whirlpool, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gClangoorousSoulblazePurpleChargeSpriteTemplate = +const struct SpriteTemplate gClangoorousSoulblazePurpleChargeSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -6144,7 +6144,7 @@ const struct SpriteTemplate gClangoorousSoulblazePurpleChargeSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gClangoorousSoulblazePulseSpriteTemplate = +const struct SpriteTemplate gClangoorousSoulblazePulseSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -6155,8 +6155,8 @@ const struct SpriteTemplate gClangoorousSoulblazePulseSpriteTemplate = .callback = TranslateAnimSpriteToTargetMonLocation }; -// guardian of alola -const struct SpriteTemplate gGuardianOfAlolaFistSpriteTemplate = +// guardian of alola +const struct SpriteTemplate gGuardianOfAlolaFistSpriteTemplate = { .tileTag = ANIM_TAG_HORSESHOE_SIDE_FIST, .paletteTag = ANIM_TAG_HORSESHOE_SIDE_FIST, @@ -6166,7 +6166,7 @@ const struct SpriteTemplate gGuardianOfAlolaFistSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimStompFoot }; -const struct SpriteTemplate gGuardianOfAlolaDirtGeyserSpriteTemplate = +const struct SpriteTemplate gGuardianOfAlolaDirtGeyserSpriteTemplate = { .tileTag = ANIM_TAG_MUD_SAND, .paletteTag = ANIM_TAG_MUD_SAND, @@ -6186,7 +6186,7 @@ static const union AffineAnimCmd sSearingSunrazeSmashWormholeGrowingAffineAnims[ static const union AffineAnimCmd *const sSearingSunrazeSmashWormholeGrowingAffineAnimTable[] = { sSearingSunrazeSmashWormholeGrowingAffineAnims }; -const struct SpriteTemplate gSearingSunrazeSmashGrowWormholeSpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashGrowWormholeSpriteTemplate = { .tileTag = ANIM_TAG_SHADOW_BALL, .paletteTag = ANIM_TAG_WATER_ORB, @@ -6196,7 +6196,7 @@ const struct SpriteTemplate gSearingSunrazeSmashGrowWormholeSpriteTemplate = .affineAnims = sSearingSunrazeSmashWormholeGrowingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gSearingSunrazeSmashBlueRingInwardsSpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashBlueRingInwardsSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_WATER_ORB, @@ -6206,7 +6206,7 @@ const struct SpriteTemplate gSearingSunrazeSmashBlueRingInwardsSpriteTemplate = .affineAnims = gThinRingShrinkingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gSearingSunrazeSmashWhiteRingInwardsSpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashWhiteRingInwardsSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_AIR_WAVE_2, @@ -6216,7 +6216,7 @@ const struct SpriteTemplate gSearingSunrazeSmashWhiteRingInwardsSpriteTemplate = .affineAnims = gThinRingShrinkingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gSearingSunrazeSmashCrossImpactSpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashCrossImpactSpriteTemplate = { .tileTag = ANIM_TAG_CROSS_IMPACT, .paletteTag = ANIM_TAG_AIR_WAVE_2, @@ -6226,7 +6226,7 @@ const struct SpriteTemplate gSearingSunrazeSmashCrossImpactSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimCrossImpact }; -const struct SpriteTemplate gSearingSunrazeSmashWhiteCutSpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashWhiteCutSpriteTemplate = { .tileTag = ANIM_TAG_CUT, .paletteTag = ANIM_TAG_AIR_WAVE_2, @@ -6236,7 +6236,7 @@ const struct SpriteTemplate gSearingSunrazeSmashWhiteCutSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimCuttingSlice }; -const struct SpriteTemplate gSearingSunrazeSmashInfernoOrbSpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashInfernoOrbSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -6246,7 +6246,7 @@ const struct SpriteTemplate gSearingSunrazeSmashInfernoOrbSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingChargeOrb }; -const struct SpriteTemplate gSearingSunrazeSmashShockwaveSpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashShockwaveSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -6256,7 +6256,7 @@ const struct SpriteTemplate gSearingSunrazeSmashShockwaveSpriteTemplate = .affineAnims = gAffineAnims_GrowingElectricOrb, .callback = AnimGrowingShockWaveOrbOnTarget }; -const struct SpriteTemplate gSearingSunrazeSmashRedFlySpriteTemplate = +const struct SpriteTemplate gSearingSunrazeSmashRedFlySpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_VERTICAL_HEX, @@ -6268,7 +6268,7 @@ const struct SpriteTemplate gSearingSunrazeSmashRedFlySpriteTemplate = }; // menacing moonraze maelstrom -const struct SpriteTemplate gMoonrazeMaelstromBlueBuffSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromBlueBuffSpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_WATER_ORB, @@ -6278,7 +6278,7 @@ const struct SpriteTemplate gMoonrazeMaelstromBlueBuffSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gMoonrazeMaelstromBlackBuffSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromBlackBuffSpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -6288,7 +6288,7 @@ const struct SpriteTemplate gMoonrazeMaelstromBlackBuffSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gMoonrazeMaelstromPurpleBuffSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromPurpleBuffSpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -6298,7 +6298,7 @@ const struct SpriteTemplate gMoonrazeMaelstromPurpleBuffSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gMoonrazeMaelstromBlackSparklesSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromBlackSparklesSpriteTemplate = { .tileTag = ANIM_TAG_SPARKLE_2, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -6308,27 +6308,27 @@ const struct SpriteTemplate gMoonrazeMaelstromBlackSparklesSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimGrantingStars }; -const struct SpriteTemplate gMoonrazeMaelstromBlueRingSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromBlueRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_WATER_ORB, .oam = &gOamData_AffineDouble_ObjBlend_64x64, .anims = gDummySpriteAnimTable, - .images = NULL, + .images = NULL, .affineAnims = gThinRingShrinkingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gMoonrazeMaelstromWhiteRingSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromWhiteRingSpriteTemplate = { .tileTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_AIR_WAVE_2, .oam = &gOamData_AffineDouble_ObjBlend_64x64, .anims = gDummySpriteAnimTable, - .images = NULL, + .images = NULL, .affineAnims = gThinRingShrinkingAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gMoonrazeMaelstromSuperpowerSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromSuperpowerSpriteTemplate = { .tileTag = ANIM_TAG_METEOR, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -6338,7 +6338,7 @@ const struct SpriteTemplate gMoonrazeMaelstromSuperpowerSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSuperpowerFireball }; -const struct SpriteTemplate gMoonrazeMaelstromBlackOrbsSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromBlackOrbsSpriteTemplate = { .tileTag = ANIM_TAG_POISON_BUBBLE, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -6348,7 +6348,7 @@ const struct SpriteTemplate gMoonrazeMaelstromBlackOrbsSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimParticleInVortex }; -const struct SpriteTemplate gMoonrazeMaelstromBeamSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromBeamSpriteTemplate = { .tileTag = ANIM_TAG_ORBS, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -6358,7 +6358,7 @@ const struct SpriteTemplate gMoonrazeMaelstromBeamSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimHyperBeamOrb }; -const struct SpriteTemplate gMoonrazeMaelstromExplosionSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -6368,7 +6368,7 @@ const struct SpriteTemplate gMoonrazeMaelstromExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gMoonrazeMaelstromShockwaveSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromShockwaveSpriteTemplate = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, .paletteTag = ANIM_TAG_POISON_BUBBLE, @@ -6386,7 +6386,7 @@ static const union AffineAnimCmd sMoonrazeMaelstromWormholeAffineAnims[] = { static const union AffineAnimCmd *const sMoonrazeMaelstromWormholeAffineAnimTable[] = { sMoonrazeMaelstromWormholeAffineAnims }; -const struct SpriteTemplate gMoonrazeMaelstromWormholeSpriteTemplate = +const struct SpriteTemplate gMoonrazeMaelstromWormholeSpriteTemplate = { .tileTag = ANIM_TAG_SHADOW_BALL, .paletteTag = ANIM_TAG_WATER_ORB, @@ -6398,7 +6398,7 @@ const struct SpriteTemplate gMoonrazeMaelstromWormholeSpriteTemplate = }; // light that burns the sky -const struct SpriteTemplate gLightThatBurnsTheSkyGreenSparkSpriteTemplate = +const struct SpriteTemplate gLightThatBurnsTheSkyGreenSparkSpriteTemplate = { .tileTag = ANIM_TAG_SPARK_2, .paletteTag = ANIM_TAG_LEAF, @@ -6408,7 +6408,7 @@ const struct SpriteTemplate gLightThatBurnsTheSkyGreenSparkSpriteTemplate = .affineAnims = gAffineAnims_FlashingSpark, .callback = AnimSparkElectricityFlashing }; -const struct SpriteTemplate gLightThatBurnsTheSkyBlastBurnSpriteTemplate = +const struct SpriteTemplate gLightThatBurnsTheSkyBlastBurnSpriteTemplate = { .tileTag = ANIM_TAG_FIRE_PLUME, .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -6426,7 +6426,7 @@ static const struct OamData sGeyserOam = .size = SPRITE_SIZE(32x32), .priority = 1, //Above sprites }; -const struct SpriteTemplate gLightThatBurnsTheSkyExplosionSpriteTemplate = +const struct SpriteTemplate gLightThatBurnsTheSkyExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION_2, .paletteTag = ANIM_TAG_EXPLOSION_2, @@ -6438,7 +6438,7 @@ const struct SpriteTemplate gLightThatBurnsTheSkyExplosionSpriteTemplate = }; // soul stealing 7star strike -const struct SpriteTemplate gSoulStealBlackFlySpriteTemplate = +const struct SpriteTemplate gSoulStealBlackFlySpriteTemplate = { .tileTag = ANIM_TAG_ROUND_SHADOW, .paletteTag = ANIM_TAG_HANDS_AND_FEET, @@ -6448,7 +6448,7 @@ const struct SpriteTemplate gSoulStealBlackFlySpriteTemplate = .affineAnims = gAffineAnims_FlyBallUp, .callback = AnimFlyBallUp }; -const struct SpriteTemplate gSoulStealIceBuffSpriteTemplate = +const struct SpriteTemplate gSoulStealIceBuffSpriteTemplate = { .tileTag = ANIM_TAG_FOCUS_ENERGY, .paletteTag = ANIM_TAG_ICE_CRYSTALS, @@ -6458,7 +6458,7 @@ const struct SpriteTemplate gSoulStealIceBuffSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimEndureEnergy }; -const struct SpriteTemplate gSoulStealBlueFistSpriteTemplate = +const struct SpriteTemplate gSoulStealBlueFistSpriteTemplate = { .tileTag = ANIM_TAG_HANDS_AND_FEET, .paletteTag = ANIM_TAG_ICE_CRYSTALS, @@ -6468,7 +6468,7 @@ const struct SpriteTemplate gSoulStealBlueFistSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimJumpKick }; -const struct SpriteTemplate gSoulStealBlueStarSpriteTemplate = +const struct SpriteTemplate gSoulStealBlueStarSpriteTemplate = { .tileTag = ANIM_TAG_PAIN_SPLIT, .paletteTag = ANIM_TAG_ICE_CRYSTALS, @@ -6478,7 +6478,7 @@ const struct SpriteTemplate gSoulStealBlueStarSpriteTemplate = .affineAnims = gAffineAnims_Bite, .callback = AnimSoulStealingStar }; -const struct SpriteTemplate gSoulStealBlueParalyzeSpriteTemplate = +const struct SpriteTemplate gSoulStealBlueParalyzeSpriteTemplate = { .tileTag = ANIM_TAG_SPARK_2, .paletteTag = ANIM_TAG_ICE_CRYSTALS, @@ -6488,7 +6488,7 @@ const struct SpriteTemplate gSoulStealBlueParalyzeSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimElectricity }; -const struct SpriteTemplate gSoulStealBlastburnSpriteTemplate = +const struct SpriteTemplate gSoulStealBlastburnSpriteTemplate = { .tileTag = ANIM_TAG_FIRE_PLUME, .paletteTag = ANIM_TAG_WISP_FIRE, @@ -6498,7 +6498,7 @@ const struct SpriteTemplate gSoulStealBlastburnSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimFirePlume }; -const struct SpriteTemplate gSoulStealExplosionSpriteTemplate = +const struct SpriteTemplate gSoulStealExplosionSpriteTemplate = { .tileTag = ANIM_TAG_EXPLOSION, .paletteTag = ANIM_TAG_WISP_FIRE, @@ -6508,7 +6508,7 @@ const struct SpriteTemplate gSoulStealExplosionSpriteTemplate = .affineAnims = gDummySpriteAffineAnimTable, .callback = AnimSpriteOnMonPos }; -const struct SpriteTemplate gSoulStealZStarSpriteTemplate = +const struct SpriteTemplate gSoulStealZStarSpriteTemplate = { .tileTag = ANIM_TAG_SNORE_Z, .paletteTag = ANIM_TAG_SNORE_Z, @@ -6572,7 +6572,7 @@ void AnimTask_AllBanksInvisibleExceptAttackerAndTarget(u8 taskId) static u8 LoadBattleAnimTarget(u8 arg) { u8 battler; - + if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { switch (gBattleAnimArgs[arg]) @@ -6598,7 +6598,7 @@ static u8 LoadBattleAnimTarget(u8 arg) else battler = gBattleAnimTarget; } - + return battler; } @@ -7276,7 +7276,7 @@ static void SpriteCB_PyroBallRockBounceStep(struct Sprite *sprite) { s8 initialVerticalVelocity; s8 initialHorizontalVelocity; - + if (sprite->y2 > 0) //Rock returned back down { if (gBattleAnimArgs[2] || sMovingBackHorizontally) //Finished moving from left to right @@ -7357,7 +7357,7 @@ static void SpriteCB_PyroBallLaunch(struct Sprite *sprite) static void SpriteCB_AcidLaunchSingleTarget(struct Sprite *sprite) { s16 l1, l2; - + if (!gBattleAnimArgs[3]) StartSpriteAnim(sprite, 2); @@ -7550,7 +7550,7 @@ static void AnimHappyHourCoinShower(struct Sprite *sprite) { if (gBattleAnimArgs[3] != 0) SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y); //coin shower on attacker - + sprite->x += gBattleAnimArgs[0]; sprite->y += 14; StartSpriteAnim(sprite, gBattleAnimArgs[1]); @@ -7707,7 +7707,7 @@ void AnimTask_GetTimeOfDay(u8 taskId) gBattleAnimArgs[0] = 1; else if (gLocalTime.hours >= 17 && gLocalTime.hours < 20) gBattleAnimArgs[0] = 2; - + DestroyAnimVisualTask(taskId); } @@ -7717,7 +7717,7 @@ void AnimTask_GetLycanrocForm(u8 taskId) gBattleAnimArgs[0] = 1; else gBattleAnimArgs[0] = 0; - + gBattleAnimArgs[0] = 0; DestroyAnimVisualTask(taskId); } @@ -7766,7 +7766,7 @@ static void AnimOceanicOperettaSpotlight(struct Sprite *sprite) static void AnimTask_WaitAffineAnim(u8 taskId) { struct Task* task = &gTasks[taskId]; - + if (!RunAffineAnimFromTaskData(task)) DestroyAnimVisualTask(taskId); } @@ -7775,7 +7775,7 @@ void AnimTask_SquishTarget(u8 taskId) { struct Task* task = &gTasks[taskId]; u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); - + PrepareAffineAnimInTaskData(task, spriteId, sSquishTargetAffineAnimCmds); task->func = AnimTask_WaitAffineAnim; } diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 0b2bab9e66e0..e95b13944f8d 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -388,13 +388,9 @@ static void CompleteOnHealthbarDone(void) SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]); if (hpValue != -1) - { UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], HP_CURRENT, hpValue, gBattleMons[gActiveBattler].maxHP); - } else - { LinkOpponentBufferExecCompleted(); - } } static void HideHealthboxAfterMonFaint(void) diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 5e21232d9b15..07cf95589f35 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -2,6 +2,7 @@ #include "battle.h" #include "battle_ai_main.h" #include "battle_ai_util.h" +#include "constants/battle_ai.h" #include "battle_anim.h" #include "battle_arena.h" #include "battle_controllers.h" @@ -94,6 +95,7 @@ static void OpponentHandleResetActionMoveSelection(void); static void OpponentHandleEndLinkBattle(void); static void OpponentHandleDebugMenu(void); static void OpponentCmdEnd(void); +static u8 CountAIAliveNonEggMonsExcept(u8 slotToIgnore); static void OpponentBufferRunCommand(void); static void OpponentBufferExecCompleted(void); @@ -409,9 +411,7 @@ static void CompleteOnHealthbarDone(void) s16 hpValue = MoveBattleBar(gActiveBattler, gHealthboxSpriteIds[gActiveBattler], HEALTH_BAR, 0); SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]); if (hpValue != -1) - { UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], HP_CURRENT, hpValue, gBattleMons[gActiveBattler].maxHP); - } else OpponentBufferExecCompleted(); } @@ -1670,6 +1670,7 @@ static void OpponentHandleChooseItem(void) static void OpponentHandleChoosePokemon(void) { s32 chosenMonId; + s32 pokemonInBattle = 1; if (*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) == PARTY_SIZE) { @@ -1687,15 +1688,20 @@ static void OpponentHandleChoosePokemon(void) { battler1 = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT); battler2 = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT); + pokemonInBattle = 2; + } GetAIPartyIndexes(gActiveBattler, &firstId, &lastId); - for (chosenMonId = firstId; chosenMonId < lastId; chosenMonId++) + for (chosenMonId = (lastId-1); chosenMonId >= firstId; chosenMonId--) { if (GetMonData(&gEnemyParty[chosenMonId], MON_DATA_HP) != 0 && chosenMonId != gBattlerPartyIndexes[battler1] - && chosenMonId != gBattlerPartyIndexes[battler2]) + && chosenMonId != gBattlerPartyIndexes[battler2] + && (AI_THINKING_STRUCT->aiFlags & AI_FLAG_ACE_POKEMON + && (!(chosenMonId == (CalculateEnemyPartyCount()-1)) + || CountAIAliveNonEggMonsExcept(PARTY_SIZE) == pokemonInBattle))) { break; } @@ -1714,6 +1720,24 @@ static void OpponentHandleChoosePokemon(void) OpponentBufferExecCompleted(); } +static u8 CountAIAliveNonEggMonsExcept(u8 slotToIgnore) +{ + u16 i, count; + + for (i = 0, count = 0; i < PARTY_SIZE; i++) + { + if (i != slotToIgnore + && GetMonData(&gEnemyParty[i], MON_DATA_SPECIES) != SPECIES_NONE + && !GetMonData(&gEnemyParty[i], MON_DATA_IS_EGG) + && GetMonData(&gEnemyParty[i], MON_DATA_HP) != 0) + { + count++; + } + } + + return count; +} + static void OpponentHandleCmd23(void) { OpponentBufferExecCompleted(); diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 6d52f1bf8c32..9f3631a3754d 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -375,13 +375,9 @@ static void CompleteOnHealthbarDone(void) SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]); if (hpValue != -1) - { UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], HP_CURRENT, hpValue, gBattleMons[gActiveBattler].maxHP); - } else - { RecordedOpponentBufferExecCompleted(); - } } static void HideHealthboxAfterMonFaint(void) diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 8603678b077f..0814f6d12612 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -670,18 +670,12 @@ static void PrepareBufferDataTransfer(u8 bufferId, u8 *data, u16 size) switch (bufferId) { case BUFFER_A: - for (i = 0; i < size; i++) - { + for (i = 0; i < size; data++, i++) gBattleResources->bufferA[gActiveBattler][i] = *data; - data++; - } break; case BUFFER_B: - for (i = 0; i < size; i++) - { + for (i = 0; i < size; data++, i++) gBattleResources->bufferB[gActiveBattler][i] = *data; - data++; - } break; } } @@ -818,8 +812,7 @@ static void Task_HandleSendLinkBuffersData(u8 taskId) } break; case 5: - gTasks[taskId].data[13]--; - if (gTasks[taskId].data[13] == 0) + if (--gTasks[taskId].data[13] == 0) { gTasks[taskId].data[13] = 1; gTasks[taskId].data[11] = 3; @@ -834,7 +827,7 @@ void TryReceiveLinkBattleData(void) s32 j; u8 *recvBuffer; - if (gReceivedRemoteLinkPlayers != 0 && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE)) + if (gReceivedRemoteLinkPlayers && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE)) { DestroyTask_RfuIdle(); for (i = 0; i < GetLinkPlayerCount(); i++) diff --git a/src/battle_debug.c b/src/battle_debug.c index 9911154022ed..8e869df9cb0f 100644 --- a/src/battle_debug.c +++ b/src/battle_debug.c @@ -817,7 +817,7 @@ static void SwitchToAiPointsView(u8 taskId) GetStructPtr(taskId)->aiViewState = 0; } -static const u8 *const sAiInfoItemNames[] = +static const u8 *const sAiInfoItemNames[] = { sText_Ability, sText_HeldItem, @@ -829,13 +829,13 @@ static void PutAiInfoText(struct BattleDebugMenu *data) u8 *text = malloc(0x50); FillWindowPixelBuffer(data->aiMovesWindowId, 0x11); - + // item names for (i = 0; i < ARRAY_COUNT(sAiInfoItemNames); i++) { AddTextPrinterParameterized(data->aiMovesWindowId, 1, sAiInfoItemNames[i], 3, i * 15, 0, NULL); } - + // items info for (i = 0; i < gBattlersCount; i++) { @@ -2004,7 +2004,7 @@ static const u8 sText_HoldEffectRoomService[] = _("Room Service"); static const u8 sText_HoldEffectBlunderPolicy[] = _("Blunder Policy"); static const u8 sText_HoldEffectHeavyDutyBoots[] = _("Heavy Duty Boots"); static const u8 sText_HoldEffectThroatSpray[] = _("Throat Spray"); -static const u8 *const sHoldEffectNames[] = +static const u8 *const sHoldEffectNames[] = { [HOLD_EFFECT_NONE] = sText_HoldEffectNone, [HOLD_EFFECT_RESTORE_HP] = sText_HoldEffectRestoreHp, diff --git a/src/battle_main.c b/src/battle_main.c index 07b4deb9112b..97e1fe459e93 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -868,7 +868,7 @@ static void CB2_HandleStartBattle(void) case 1: if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (IsLinkTaskFinished()) { @@ -1075,7 +1075,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) case 1: if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { u8 language; @@ -1342,7 +1342,7 @@ static void CB2_PreInitMultiBattle(void) switch (gBattleCommunication[MULTIUSE_STATE]) { case 0: - if (gReceivedRemoteLinkPlayers != 0 && IsLinkTaskFinished()) + if (gReceivedRemoteLinkPlayers && IsLinkTaskFinished()) { sMultiPartnerPartyBuffer = Alloc(sizeof(gMultiPartnerParty)); SetMultiPartnerMenuParty(0); @@ -1478,7 +1478,7 @@ static void CB2_HandleStartMultiBattle(void) case 1: if (gBattleTypeFlags & BATTLE_TYPE_LINK) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (IsLinkTaskFinished()) { @@ -5306,7 +5306,7 @@ static void ReturnFromBattleToOverworld(void) PartySpreadPokerus(gPlayerParty); } - if (gBattleTypeFlags & BATTLE_TYPE_LINK && gReceivedRemoteLinkPlayers != 0) + if (gBattleTypeFlags & BATTLE_TYPE_LINK && gReceivedRemoteLinkPlayers) return; gSpecialVar_Result = gBattleOutcome; diff --git a/src/battle_message.c b/src/battle_message.c index 8298accf1ff4..e56269eb5f22 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1383,7 +1383,7 @@ const u8 *const gBattleStringsTable[BATTLESTRINGS_COUNT] = [STRINGID_TARGETTOOHEAVY - BATTLESTRINGS_TABLE_START] = sText_TargetTooHeavy, }; -const u16 gZEffectStringIds[] = +const u16 gZEffectStringIds[] = { [B_MSG_Z_RESET_STATS] = STRINGID_ZMOVERESETSSTATS, [B_MSG_Z_ALL_STATS_UP]= STRINGID_ZMOVEALLSTATSUP, @@ -1394,7 +1394,7 @@ const u16 gZEffectStringIds[] = [B_MSG_Z_HP_TRAP] = STRINGID_ZMOVEHPTRAP, }; -const u16 gMentalHerbCureStringIds[] = +const u16 gMentalHerbCureStringIds[] = { [B_MSG_MENTALHERBCURE_INFATUATION] = STRINGID_ATKGOTOVERINFATUATION, [B_MSG_MENTALHERBCURE_TAUNT] = STRINGID_BUFFERENDS, @@ -1409,7 +1409,7 @@ const u16 gTerrainStringIds[] = STRINGID_TERRAINBECOMESMISTY, STRINGID_TERRAINBECOMESGRASSY, STRINGID_TERRAINBECOMESELECTRIC, STRINGID_TERRAINBECOMESPSYCHIC, STRINGID_TERRAINREMOVED, }; -const u16 gTerrainEndingStringIds[] = +const u16 gTerrainEndingStringIds[] = { STRINGID_MISTYTERRAINENDS, STRINGID_GRASSYTERRAINENDS, STRINGID_ELECTRICTERRAINENDS, STRINGID_PSYCHICTERRAINENDS }; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index b03220066db6..f5884d206dbd 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -11472,9 +11472,23 @@ static void Cmd_mimicattackcopy(void) static void Cmd_metronome(void) { +#if B_METRONOME_MOVES >= GEN_8 + u16 moveCount = MOVES_COUNT_GEN8; +#elif B_METRONOME_MOVES >= GEN_7 + u16 moveCount = MOVES_COUNT_GEN7; +#elif B_METRONOME_MOVES >= GEN_6 + u16 moveCount = MOVES_COUNT_GEN6; +#elif B_METRONOME_MOVES >= GEN_5 + u16 moveCount = MOVES_COUNT_GEN5; +#elif B_METRONOME_MOVES >= GEN_4 + u16 moveCount = MOVES_COUNT_GEN4; +#elif B_METRONOME_MOVES >= GEN_3 + u16 moveCount = MOVES_COUNT_GEN3; +#endif + while (TRUE) { - gCurrentMove = (Random() % (MOVES_COUNT - 1)) + 1; + gCurrentMove = (Random() % (moveCount - 1)) + 1; if (gBattleMoves[gCurrentMove].effect == EFFECT_PLACEHOLDER) continue; diff --git a/src/battle_tent.c b/src/battle_tent.c index dba9e6e8a013..e51ac38a5a2a 100644 --- a/src/battle_tent.c +++ b/src/battle_tent.c @@ -390,7 +390,7 @@ static void GenerateOpponentMons(void) while (i != FRONTIER_PARTY_SIZE) { sRandMonId = monSet[Random() % numMons]; - + // Ensure none of the opponent's pokemon are the same as the potential rental pokemon for the player for (j = 0; j < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons); j++) { diff --git a/src/battle_tower.c b/src/battle_tower.c index 62479186ffd7..3ae7c350ca25 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -2679,7 +2679,7 @@ static void LoadLinkMultiOpponentsData(void) gTrainerBattleOpponent_B = gSaveBlock2Ptr->frontier.trainerIds[battleNum * 2 + 1]; SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0); SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_B, 1); - if (gReceivedRemoteLinkPlayers != 0 && gWirelessCommType == 0) + if (gReceivedRemoteLinkPlayers && gWirelessCommType == 0) gSpecialVar_Result = 4; else gSpecialVar_Result = 6; diff --git a/src/battle_transition.c b/src/battle_transition.c index bc289efa7f8d..3675421ee101 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -2434,7 +2434,7 @@ static bool8 Mugshot_WaitStartPlayerSlide(struct Task *task) { sTransitionData->BG0HOFS_Lower -= 8; sTransitionData->BG0HOFS_Upper += 8; - + // Start player's slide in once the opponent is finished if (IsTrainerPicSlideDone(task->tOpponentSpriteId)) { @@ -2770,7 +2770,7 @@ static bool8 Slice_Main(struct Task *task) { u16 *storeLoc1 = &gScanlineEffectRegBuffers[0][i]; u16 *storeLoc2 = &gScanlineEffectRegBuffers[0][i + DISPLAY_HEIGHT]; - + // Alternate rows if (i % 2) { @@ -3251,7 +3251,7 @@ static bool8 RectangularSpiral_Main(struct Task *task) // The line moved to a new position, draw the tile. done = FALSE; position = sRectangularSpiralLines[j].position; - + // Invert position for the two lines that start at the bottom. if ((j % 2) == 1) position = 637 - position; @@ -3281,7 +3281,7 @@ static bool8 RectangularSpiral_End(struct Task *task) static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, struct RectangularSpiralLine *line) { const s16 *moveData = moveDataTable[line->state]; - + // Has spiral finished? // Note that most move data arrays endsin SPIRAL_END but it is // only ever reached on the final array of spiraling outward. @@ -3294,9 +3294,9 @@ static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, stru sDebug_RectangularSpiralData = moveData[2]; sDebug_RectangularSpiralData = moveData[3]; - // Note that for the two lines originating at the bottom the + // Note that for the two lines originating at the bottom the // position is inverted, so the directions are flipped. - // i.e. position += 1 is right for the top lines and left + // i.e. position += 1 is right for the top lines and left // for their inverted partners on the bottom. switch (moveData[0]) { @@ -4170,13 +4170,13 @@ static void InitBlackWipe(s16 *data, s16 startX, s16 startY, s16 endX, s16 endY, static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) { u8 numFinished; - + if (tWipeXDist > tWipeYDist) { // X has further to move, move it first tWipeCurrX += tWipeXMove; - // If it has been far enough since Y's + // If it has been far enough since Y's // last move then move it too tWipeTemp += tWipeYDist; if (tWipeTemp > tWipeXDist) @@ -4190,7 +4190,7 @@ static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) // Y has further to move, move it first tWipeCurrY += tWipeYMove; - // If it has been far enough since X's + // If it has been far enough since X's // last move then move it too tWipeTemp += tWipeXDist; if (tWipeTemp > tWipeYDist) @@ -4201,9 +4201,9 @@ static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) } numFinished = 0; - + // Has X coord reached end? - if ((tWipeXMove > 0 && tWipeCurrX >= tWipeEndX) + if ((tWipeXMove > 0 && tWipeCurrX >= tWipeEndX) || (tWipeXMove < 0 && tWipeCurrX <= tWipeEndX)) { numFinished++; @@ -4212,7 +4212,7 @@ static bool8 UpdateBlackWipe(s16 *data, bool8 xExact, bool8 yExact) } // Has Y coord reached end? - if ((tWipeYMove > 0 && tWipeCurrY >= tWipeEndY) + if ((tWipeYMove > 0 && tWipeCurrY >= tWipeEndY) || (tWipeYMove < 0 && tWipeCurrY <= tWipeEndY)) { numFinished++; diff --git a/src/battle_z_move.c b/src/battle_z_move.c index d41e28ac23ad..c257df59903c 100644 --- a/src/battle_z_move.c +++ b/src/battle_z_move.c @@ -165,23 +165,23 @@ bool32 IsViableZMove(u8 battlerId, u16 move) u32 item; u16 holdEffect; u16 species; - + if (gBattleStruct->zmove.used[battlerId]) return FALSE; - + species = gBattleMons[battlerId].species; item = gBattleMons[battlerId].item; if (gBattleTypeFlags & (BATTLE_TYPE_SAFARI | BATTLE_TYPE_WALLY_TUTORIAL | BATTLE_TYPE_FRONTIER)) return FALSE; - + #ifdef ITEM_Z_RING if ((GetBattlerPosition(battlerId) == B_POSITION_PLAYER_LEFT || (!(gBattleTypeFlags & BATTLE_TYPE_MULTI) && GetBattlerPosition(battlerId) == B_POSITION_PLAYER_RIGHT)) && !CheckBagHasItem(ITEM_Z_RING, 1)) return FALSE; #endif - + if (mega->alreadyEvolved[battlerPosition]) return FALSE; // Trainer has mega evolved - + if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { if (IsPartnerMonFromSameTrainer(battlerId) && (mega->alreadyEvolved[partnerPosition] || (mega->toEvolve & gBitTable[BATTLE_PARTNER(battlerId)]))) @@ -194,10 +194,10 @@ bool32 IsViableZMove(u8 battlerId, u16 move) else #endif if (item == ITEM_ENIGMA_BERRY) - return FALSE; // HoldEffect = gEnigmaBerries[battlerId].holdEffect; + return FALSE; // HoldEffect = gEnigmaBerries[battlerId].holdEffect; else holdEffect = ItemId_GetHoldEffect(item); - + #ifdef ITEM_ULTRANECROZIUM_Z if (holdEffect == HOLD_EFFECT_Z_CRYSTAL || item == ITEM_ULTRANECROZIUM_Z) #else @@ -210,18 +210,18 @@ bool32 IsViableZMove(u8 battlerId, u16 move) gBattleStruct->zmove.chosenZMove = zMove; // Signature z move exists return TRUE; } - + if (move != MOVE_NONE && zMove != MOVE_Z_STATUS && gBattleMoves[move].type == ItemId_GetSecondaryId(item)) { if (IS_MOVE_STATUS(move)) gBattleStruct->zmove.chosenZMove = move; else gBattleStruct->zmove.chosenZMove = GetTypeBasedZMove(move, battlerId); - + return TRUE; } } - + return FALSE; } @@ -248,7 +248,7 @@ bool32 IsZMoveUsable(u8 battlerId, u16 moveIndex) bool32 TryChangeZIndicator(u8 battlerId, u8 moveIndex) { bool32 viableZMove = IsZMoveUsable(battlerId, moveIndex); - + if (gBattleStruct->zmove.viable && !viableZMove) HideZMoveTriggerSprite(); // Was a viable z move, now is not -> slide out else if (!gBattleStruct->zmove.viable && viableZMove) @@ -271,11 +271,11 @@ bool32 TryChangeZIndicator(u8 battlerId, u8 moveIndex) void CreateZMoveTriggerSprite(u8 battlerId, bool8 viable) { s16 x, y; - + LoadSpritePalette(&sSpritePalette_ZMoveTrigger); if (GetSpriteTileStartByTag(TAG_ZMOVE_TRIGGER_TILE) == 0xFFFF) LoadCompressedSpriteSheetUsingHeap(&sSpriteSheet_ZMoveTrigger); - + if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) { x = gSprites[gHealthboxSpriteIds[battlerId]].x - DOUBLES_Z_TRIGGER_POS_X_SLIDE; @@ -286,10 +286,10 @@ void CreateZMoveTriggerSprite(u8 battlerId, bool8 viable) x = gSprites[gHealthboxSpriteIds[battlerId]].x - SINGLES_Z_TRIGGER_POS_X_SLIDE; y = gSprites[gHealthboxSpriteIds[battlerId]].y - SINGLES_Z_TRIGGER_POS_Y_DIFF, 0; } - + if (gBattleStruct->zmove.triggerSpriteId == 0xFF) gBattleStruct->zmove.triggerSpriteId = CreateSprite(&sSpriteTemplate_ZMoveTrigger, x, y, 0); - + gSprites[gBattleStruct->zmove.triggerSpriteId].tBattler = battlerId; gSprites[gBattleStruct->zmove.triggerSpriteId].tHide = (viable == TRUE) ? FALSE : TRUE; } @@ -375,14 +375,14 @@ void DestroyZMoveTriggerSprite(void) FreeSpriteTilesByTag(TAG_ZMOVE_TRIGGER_TILE); if (gBattleStruct->zmove.triggerSpriteId != 0xFF) DestroySprite(&gSprites[gBattleStruct->zmove.triggerSpriteId]); - + gBattleStruct->zmove.triggerSpriteId = 0xFF; } static u16 GetSignatureZMove(u16 move, u16 species, u16 item) { u32 i; - + // Check signature z move for (i = 0; i < ARRAY_COUNT(sSignatureZMoves); ++i) { @@ -396,7 +396,7 @@ static u16 GetSignatureZMove(u16 move, u16 species, u16 item) static u16 GetTypeBasedZMove(u16 move, u8 battler) { u8 moveType = gBattleMoves[move].type; - + // Get z move from type if (moveType < TYPE_FIRE) return MOVE_BREAKNECK_BLITZ + moveType; @@ -411,7 +411,7 @@ bool32 MoveSelectionDisplayZMove(u16 zmove) u32 i; struct ChooseMoveStruct *moveInfo = (struct ChooseMoveStruct *)(&gBattleResources->bufferA[gActiveBattler][4]); u16 move = moveInfo->moves[gMoveSelectionCursor[gActiveBattler]]; - + PlaySE(SE_SELECT); gBattleStruct->zmove.viewing = TRUE; if (zmove != MOVE_NONE) @@ -421,15 +421,15 @@ bool32 MoveSelectionDisplayZMove(u16 zmove) { MoveSelectionDestroyCursorAt(i); StringCopy(gDisplayedStringBattle, gText_EmptyString2); - BattlePutTextOnWindow(gDisplayedStringBattle, i + 3); + BattlePutTextOnWindow(gDisplayedStringBattle, i + 3); } if (IS_MOVE_STATUS(move)) { u8 zEffect = gBattleMoves[move].zMoveEffect; - + gDisplayedStringBattle[0] = EOS; - + if (zEffect == Z_EFFECT_CURSE) { if (moveInfo->monType1 == TYPE_GHOST || moveInfo->monType2 == TYPE_GHOST || moveInfo->monType3 == TYPE_GHOST) @@ -437,7 +437,7 @@ bool32 MoveSelectionDisplayZMove(u16 zmove) else zEffect = Z_EFFECT_ATK_UP_1; } - + switch (zEffect) { case Z_EFFECT_RESET_STATS: @@ -501,7 +501,7 @@ bool32 MoveSelectionDisplayZMove(u16 zmove) ExpandBattleTextBuffPlaceholders(gBattleTextBuff1, gDisplayedStringBattle + 4); break; } - + BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MOVE_NAME_3); gDisplayedStringBattle[0] = CHAR_Z; gDisplayedStringBattle[1] = CHAR_HYPHEN; @@ -584,11 +584,11 @@ void SetZEffect(void) else gBattleStruct->zmove.effect = Z_EFFECT_ATK_UP_1; } - + gBattleScripting.savedStatChanger = gBattleScripting.statChanger; // Save used move's stat changer (e.g. for Z-Growl) gBattleScripting.battler = gBattlerAttacker; - - switch (gBattleStruct->zmove.effect) + + switch (gBattleStruct->zmove.effect) { case Z_EFFECT_RESET_STATS: for (i = 0; i < NUM_BATTLE_STATS - 1; i++) @@ -645,7 +645,7 @@ void SetZEffect(void) gBattlescriptCurrInstr = BattleScript_ZEffectPrintString; break; case Z_EFFECT_ATK_UP_1 ... Z_EFFECT_EVSN_UP_1: - SET_STATCHANGER(gBattleStruct->zmove.effect - Z_EFFECT_ATK_UP_1 + 1, 1, FALSE); + SET_STATCHANGER(gBattleStruct->zmove.effect - Z_EFFECT_ATK_UP_1 + 1, 1, FALSE); BattleScriptPush(gBattlescriptCurrInstr + Z_EFFECT_BS_LENGTH); gBattlescriptCurrInstr = BattleScript_StatUpZMove; break; @@ -663,7 +663,7 @@ void SetZEffect(void) gBattlescriptCurrInstr += 3; break; } - + gBattleStruct->zmove.zStatusActive = FALSE; } diff --git a/src/berry_crush.c b/src/berry_crush.c index eff0a207376c..cea63751cb81 100755 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -3428,7 +3428,7 @@ static u32 Cmd_CloseLink(struct BerryCrushGame *game, u8 *args) SetCloseLinkCallback(); break; case 2: - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) return 0; game->nextCmd = CMD_QUIT; RunOrScheduleCommand(CMD_HIDE_GAME, SCHEDULE_CMD, NULL); diff --git a/src/crt0.s b/src/crt0.s index 523061f52db1..580814722018 100644 --- a/src/crt0.s +++ b/src/crt0.s @@ -5,8 +5,7 @@ .arm .align 2, 0 - .global Init -Init: +Init:: mov r0, #PSR_IRQ_MODE msr cpsr_cf, r0 ldr sp, sp_irq @@ -33,8 +32,7 @@ sp_irq: .word IWRAM_END - 0x60 .arm .align 2, 0 - .global IntrMain -IntrMain: +IntrMain:: mov r3, #REG_BASE add r3, r3, #OFFSET_REG_IE ldr r2, [r3] diff --git a/src/data/battle_anim.h b/src/data/battle_anim.h index 6a67e0cd6097..e6e03f06c10f 100644 --- a/src/data/battle_anim.h +++ b/src/data/battle_anim.h @@ -1448,7 +1448,6 @@ const struct CompressedSpriteSheet gBattleAnimPicTable[] = {gBattleAnimSpriteGfx_StonePillar, 0x1800, ANIM_TAG_STONE_PILLAR_MULTI}, {gBattleAnimSpriteGfx_AlphaSymbol, 0x0200, ANIM_TAG_ALPHA_SYMBOL}, {gBattleAnimSpriteGfx_OmegaSymbol, 0x0200, ANIM_TAG_OMEGA_SYMBOL}, - {gBattleAnimSpriteGfx_PrimalParticles, 0x0180, ANIM_TAG_PRIMAL_PARTICLES}, {gBattleAnimSpriteGfx_Orbs, 0x0180, ANIM_TAG_STEEL_BEAM}, {gBattleAnimSpriteGfx_AuraSphere, 0x200, ANIM_TAG_POLTERGEIST}, }; @@ -1899,7 +1898,6 @@ const struct CompressedSpritePalette gBattleAnimPaletteTable[] = {gBattleAnimSpritePal_StonePillar, ANIM_TAG_STONE_PILLAR_MULTI}, {gBattleAnimSpritePal_AlphaSymbol, ANIM_TAG_ALPHA_SYMBOL}, {gBattleAnimSpritePal_OmegaSymbol, ANIM_TAG_OMEGA_SYMBOL}, - {gBattleAnimSpritePal_PrimalParticles, ANIM_TAG_PRIMAL_PARTICLES}, {gBattleAnimSpritePal_SteelBeam, ANIM_TAG_STEEL_BEAM}, {gBattleAnimSpritePal_Poltergeist, ANIM_TAG_POLTERGEIST}, }; diff --git a/src/data/battle_frontier/battle_frontier_trainer_mons.h b/src/data/battle_frontier/battle_frontier_trainer_mons.h index efd9ef84dd66..625a602658c5 100644 --- a/src/data/battle_frontier/battle_frontier_trainer_mons.h +++ b/src/data/battle_frontier/battle_frontier_trainer_mons.h @@ -1,67 +1,67 @@ // Also used by early Pkmn Breeder, Collector, and Beauty trainers #define FRONTIER_MONS_YOUNGSTER_LASS_1 \ - FRONTIER_MON_SUNKERN, \ - FRONTIER_MON_AZURILL, \ - FRONTIER_MON_CATERPIE, \ - FRONTIER_MON_WEEDLE, \ - FRONTIER_MON_WURMPLE, \ - FRONTIER_MON_RALTS, \ - FRONTIER_MON_MAGIKARP, \ - FRONTIER_MON_FEEBAS, \ - FRONTIER_MON_PICHU, \ - FRONTIER_MON_IGGLYBUFF, \ - FRONTIER_MON_WOOPER, \ - FRONTIER_MON_TYROGUE, \ - FRONTIER_MON_SENTRET, \ - FRONTIER_MON_CLEFFA, \ - FRONTIER_MON_SEEDOT, \ - FRONTIER_MON_LOTAD, \ - FRONTIER_MON_POOCHYENA, \ - FRONTIER_MON_SHEDINJA, \ - FRONTIER_MON_MAKUHITA, \ - FRONTIER_MON_WHISMUR, \ - FRONTIER_MON_ZIGZAGOON, \ - FRONTIER_MON_ZUBAT, \ - FRONTIER_MON_TOGEPI, \ - FRONTIER_MON_SPINARAK, \ - FRONTIER_MON_MARILL, \ - FRONTIER_MON_HOPPIP, \ - FRONTIER_MON_SLUGMA, \ - FRONTIER_MON_SWINUB, \ - FRONTIER_MON_SMEARGLE, \ - FRONTIER_MON_PIDGEY, \ - FRONTIER_MON_RATTATA, \ - FRONTIER_MON_WYNAUT, \ - FRONTIER_MON_SKITTY, \ - FRONTIER_MON_SPEAROW, \ - FRONTIER_MON_HOOTHOOT, \ - FRONTIER_MON_DIGLETT, \ - FRONTIER_MON_LEDYBA, \ - FRONTIER_MON_NINCADA, \ - FRONTIER_MON_SURSKIT, \ - FRONTIER_MON_JIGGLYPUFF, \ - FRONTIER_MON_TAILLOW, \ - FRONTIER_MON_WINGULL, \ - FRONTIER_MON_NIDORAN_M, \ - FRONTIER_MON_NIDORAN_F, \ - FRONTIER_MON_KIRLIA, \ - FRONTIER_MON_MAREEP, \ - FRONTIER_MON_MEDITITE, \ - FRONTIER_MON_SLAKOTH, \ - FRONTIER_MON_PARAS, \ - FRONTIER_MON_EKANS, \ - FRONTIER_MON_DITTO, \ - FRONTIER_MON_BARBOACH, \ - FRONTIER_MON_MEOWTH, \ - FRONTIER_MON_PINECO, \ - FRONTIER_MON_TRAPINCH, \ - FRONTIER_MON_SPHEAL, \ - FRONTIER_MON_HORSEA, \ - FRONTIER_MON_SHROOMISH, \ - FRONTIER_MON_SHUPPET, \ - FRONTIER_MON_DUSKULL, \ - FRONTIER_MON_ELECTRIKE, \ - FRONTIER_MON_VULPIX, \ + FRONTIER_MON_SUNKERN, \ + FRONTIER_MON_AZURILL, \ + FRONTIER_MON_CATERPIE, \ + FRONTIER_MON_WEEDLE, \ + FRONTIER_MON_WURMPLE, \ + FRONTIER_MON_RALTS, \ + FRONTIER_MON_MAGIKARP, \ + FRONTIER_MON_FEEBAS, \ + FRONTIER_MON_PICHU, \ + FRONTIER_MON_IGGLYBUFF, \ + FRONTIER_MON_WOOPER, \ + FRONTIER_MON_TYROGUE, \ + FRONTIER_MON_SENTRET, \ + FRONTIER_MON_CLEFFA, \ + FRONTIER_MON_SEEDOT, \ + FRONTIER_MON_LOTAD, \ + FRONTIER_MON_POOCHYENA, \ + FRONTIER_MON_SHEDINJA, \ + FRONTIER_MON_MAKUHITA, \ + FRONTIER_MON_WHISMUR, \ + FRONTIER_MON_ZIGZAGOON, \ + FRONTIER_MON_ZUBAT, \ + FRONTIER_MON_TOGEPI, \ + FRONTIER_MON_SPINARAK, \ + FRONTIER_MON_MARILL, \ + FRONTIER_MON_HOPPIP, \ + FRONTIER_MON_SLUGMA, \ + FRONTIER_MON_SWINUB, \ + FRONTIER_MON_SMEARGLE, \ + FRONTIER_MON_PIDGEY, \ + FRONTIER_MON_RATTATA, \ + FRONTIER_MON_WYNAUT, \ + FRONTIER_MON_SKITTY, \ + FRONTIER_MON_SPEAROW, \ + FRONTIER_MON_HOOTHOOT, \ + FRONTIER_MON_DIGLETT, \ + FRONTIER_MON_LEDYBA, \ + FRONTIER_MON_NINCADA, \ + FRONTIER_MON_SURSKIT, \ + FRONTIER_MON_JIGGLYPUFF, \ + FRONTIER_MON_TAILLOW, \ + FRONTIER_MON_WINGULL, \ + FRONTIER_MON_NIDORAN_M, \ + FRONTIER_MON_NIDORAN_F, \ + FRONTIER_MON_KIRLIA, \ + FRONTIER_MON_MAREEP, \ + FRONTIER_MON_MEDITITE, \ + FRONTIER_MON_SLAKOTH, \ + FRONTIER_MON_PARAS, \ + FRONTIER_MON_EKANS, \ + FRONTIER_MON_DITTO, \ + FRONTIER_MON_BARBOACH, \ + FRONTIER_MON_MEOWTH, \ + FRONTIER_MON_PINECO, \ + FRONTIER_MON_TRAPINCH, \ + FRONTIER_MON_SPHEAL, \ + FRONTIER_MON_HORSEA, \ + FRONTIER_MON_SHROOMISH, \ + FRONTIER_MON_SHUPPET, \ + FRONTIER_MON_DUSKULL, \ + FRONTIER_MON_ELECTRIKE, \ + FRONTIER_MON_VULPIX, \ -1 // Also used by early Pkmn Breeder, Collector, and Beauty trainers @@ -113,43 +113,43 @@ -1 #define FRONTIER_MONS_RICH_BOY_LADY_1 \ - FRONTIER_MON_RALTS, \ - FRONTIER_MON_POOCHYENA, \ - FRONTIER_MON_SHEDINJA, \ - FRONTIER_MON_ZUBAT, \ - FRONTIER_MON_SPINARAK, \ - FRONTIER_MON_WYNAUT, \ - FRONTIER_MON_NIDORAN_M, \ - FRONTIER_MON_NIDORAN_F, \ - FRONTIER_MON_KIRLIA, \ - FRONTIER_MON_MEDITITE, \ - FRONTIER_MON_EKANS, \ - FRONTIER_MON_SHUPPET, \ - FRONTIER_MON_DUSKULL, \ - FRONTIER_MON_BELLSPROUT, \ - FRONTIER_MON_BALTOY, \ - FRONTIER_MON_BELDUM, \ - FRONTIER_MON_GULPIN, \ - FRONTIER_MON_VENONAT, \ - FRONTIER_MON_SMOOCHUM, \ - FRONTIER_MON_ABRA, \ - FRONTIER_MON_GASTLY, \ - FRONTIER_MON_SLOWPOKE, \ - FRONTIER_MON_BULBASAUR, \ - FRONTIER_MON_ODDISH, \ - FRONTIER_MON_NATU, \ - FRONTIER_MON_GRIMER, \ - FRONTIER_MON_EXEGGCUTE, \ - FRONTIER_MON_DROWZEE, \ - FRONTIER_MON_HOUNDOUR, \ - FRONTIER_MON_SPOINK, \ - FRONTIER_MON_TENTACOOL, \ - FRONTIER_MON_KOFFING, \ - FRONTIER_MON_NIDORINA, \ - FRONTIER_MON_NIDORINO, \ - FRONTIER_MON_BEEDRILL, \ - FRONTIER_MON_DUSTOX, \ - FRONTIER_MON_ARIADOS, \ + FRONTIER_MON_RALTS, \ + FRONTIER_MON_POOCHYENA, \ + FRONTIER_MON_SHEDINJA, \ + FRONTIER_MON_ZUBAT, \ + FRONTIER_MON_SPINARAK, \ + FRONTIER_MON_WYNAUT, \ + FRONTIER_MON_NIDORAN_M, \ + FRONTIER_MON_NIDORAN_F, \ + FRONTIER_MON_KIRLIA, \ + FRONTIER_MON_MEDITITE, \ + FRONTIER_MON_EKANS, \ + FRONTIER_MON_SHUPPET, \ + FRONTIER_MON_DUSKULL, \ + FRONTIER_MON_BELLSPROUT, \ + FRONTIER_MON_BALTOY, \ + FRONTIER_MON_BELDUM, \ + FRONTIER_MON_GULPIN, \ + FRONTIER_MON_VENONAT, \ + FRONTIER_MON_SMOOCHUM, \ + FRONTIER_MON_ABRA, \ + FRONTIER_MON_GASTLY, \ + FRONTIER_MON_SLOWPOKE, \ + FRONTIER_MON_BULBASAUR, \ + FRONTIER_MON_ODDISH, \ + FRONTIER_MON_NATU, \ + FRONTIER_MON_GRIMER, \ + FRONTIER_MON_EXEGGCUTE, \ + FRONTIER_MON_DROWZEE, \ + FRONTIER_MON_HOUNDOUR, \ + FRONTIER_MON_SPOINK, \ + FRONTIER_MON_TENTACOOL, \ + FRONTIER_MON_KOFFING, \ + FRONTIER_MON_NIDORINA, \ + FRONTIER_MON_NIDORINO, \ + FRONTIER_MON_BEEDRILL, \ + FRONTIER_MON_DUSTOX, \ + FRONTIER_MON_ARIADOS, \ -1 // Also used by early Pkmn Breeder, Collector, and Beauty trainers diff --git a/src/data/battle_moves.h b/src/data/battle_moves.h index 4b5cde44c036..89e1a042c6ad 100644 --- a/src/data/battle_moves.h +++ b/src/data/battle_moves.h @@ -11881,7 +11881,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .zMovePower = 180, .zMoveEffect = Z_EFFECT_NONE, }, - + [MOVE_ZIPPY_ZAP] = { #if B_UPDATED_MOVE_DATA >= GEN_8 @@ -12193,7 +12193,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .zMovePower = 120, .zMoveEffect = Z_EFFECT_NONE, }, - + [MOVE_DYNAMAX_CANNON] = { .effect = EFFECT_DYNAMAX_DOUBLE_DMG, @@ -13105,7 +13105,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .zMovePower = 100, .zMoveEffect = Z_EFFECT_NONE, }, - + [MOVE_THUNDER_CAGE] = { .effect = EFFECT_TRAP, diff --git a/src/data/field_effects/field_effect_object_template_pointers.h b/src/data/field_effects/field_effect_object_template_pointers.h index 41d6271bf27c..64a3c3283b00 100755 --- a/src/data/field_effects/field_effect_object_template_pointers.h +++ b/src/data/field_effects/field_effect_object_template_pointers.h @@ -1,40 +1,40 @@ -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge; -const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple; -const struct SpriteTemplate gFieldEffectObjectTemplate_Ash; -const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob; -const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow; -const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash; -const struct SpriteTemplate gFieldEffectObjectTemplate_Splash; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash; -const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2; -const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand; -const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing; -const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion; -const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle; -const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints; -const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise; -const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise; -const struct SpriteTemplate gFieldEffectObjectTemplate_Bird; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch; -const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles; -const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle; -const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Ash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Splash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Bird; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle; +extern const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza; const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[] = { [FLDEFFOBJ_SHADOW_S] = &gFieldEffectObjectTemplate_ShadowSmall, diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 938b6bfc55a6..d19adf6f0b71 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -1147,7 +1147,7 @@ static const union AnimCmd *const sAnimTable_AshPuff[] = sAnim_AshPuff, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = +const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = { .tileTag = TAG_NONE, .paletteTag = FLDEFF_PAL_TAG_ASH, diff --git a/src/data/map_group_count.h b/src/data/map_group_count.h new file mode 100644 index 000000000000..4fe8a21b3b91 --- /dev/null +++ b/src/data/map_group_count.h @@ -0,0 +1 @@ +static const u8 MAP_GROUP_COUNT[] = {57, 5, 5, 6, 7, 8, 9, 7, 7, 14, 8, 17, 10, 23, 13, 15, 15, 2, 2, 2, 3, 1, 1, 1, 108, 61, 89, 2, 1, 13, 1, 1, 3, 1, 0}; diff --git a/src/data/object_events/object_event_graphics_info_pointers.h b/src/data/object_events/object_event_graphics_info_pointers.h index 1c94919a7558..ae1117164a72 100755 --- a/src/data/object_events/object_event_graphics_info_pointers.h +++ b/src/data/object_events/object_event_graphics_info_pointers.h @@ -1,249 +1,249 @@ -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1; +extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2; const struct ObjectEventGraphicsInfo *const gObjectEventGraphicsInfoPointers[NUM_OBJ_EVENT_GFX] = { diff --git a/src/data/pokemon/base_stats.h b/src/data/pokemon/base_stats.h index 41b5143cf1f2..6b866e92eff7 100644 --- a/src/data/pokemon/base_stats.h +++ b/src/data/pokemon/base_stats.h @@ -859,7 +859,7 @@ .bodyColor = color, \ .noFlip = FALSE, \ } - + #define MORPEKO_BASE_STATS \ { \ .baseHP = 58, \ @@ -883,7 +883,7 @@ .bodyColor = BODY_COLOR_YELLOW, \ .noFlip = FALSE, \ } - + #define ZARUDE_BASE_STATS \ { \ .baseHP = 105, \ @@ -22755,7 +22755,7 @@ const struct BaseStats gBaseStats[] = .bodyColor = BODY_COLOR_BROWN, .noFlip = FALSE, }, - + [SPECIES_BASCULEGION] = { .baseHP = 120, @@ -26464,7 +26464,7 @@ const struct BaseStats gBaseStats[] = [SPECIES_MINIOR_CORE_BLUE] = MINIOR_CORE_BASE_STATS(BODY_COLOR_BLUE), [SPECIES_MINIOR_CORE_INDIGO] = MINIOR_CORE_BASE_STATS(BODY_COLOR_BLUE), [SPECIES_MINIOR_CORE_VIOLET] = MINIOR_CORE_BASE_STATS(BODY_COLOR_PURPLE), - + [SPECIES_MIMIKYU_BUSTED] = MIMIKYU_BASE_STATS, [SPECIES_NECROZMA_DUSK_MANE] = @@ -26563,7 +26563,7 @@ const struct BaseStats gBaseStats[] = [SPECIES_ALCREMIE_RUBY_SWIRL] = ALCREMIE_BASE_STATS(BODY_COLOR_YELLOW), [SPECIES_ALCREMIE_CARAMEL_SWIRL] = ALCREMIE_BASE_STATS(BODY_COLOR_BROWN), [SPECIES_ALCREMIE_RAINBOW_SWIRL] = ALCREMIE_BASE_STATS(BODY_COLOR_YELLOW), - + [SPECIES_EISCUE_NOICE_FACE] = { .baseHP = 75, diff --git a/src/data/pokemon/form_change_table_pointers.h b/src/data/pokemon/form_change_table_pointers.h index 85685e50efcc..0668855cc4de 100644 --- a/src/data/pokemon/form_change_table_pointers.h +++ b/src/data/pokemon/form_change_table_pointers.h @@ -1,4 +1,4 @@ -const struct FormChange *const gFormChangeTablePointers[NUM_SPECIES] = +const struct FormChange *const gFormChangeTablePointers[NUM_SPECIES] = { #if P_NEW_POKEMON == TRUE [SPECIES_GIRATINA] = sGiratinaFormChangeTable, diff --git a/src/data/pokemon/form_species_table_pointers.h b/src/data/pokemon/form_species_table_pointers.h index 71a210e40281..dee4e5813f63 100644 --- a/src/data/pokemon/form_species_table_pointers.h +++ b/src/data/pokemon/form_species_table_pointers.h @@ -19,8 +19,8 @@ const u16 *const gFormSpeciesIdTables[NUM_SPECIES] = [SPECIES_MEOWTH] = sMeowthFormSpeciesIdTable, [SPECIES_PERSIAN] = sPersianFormSpeciesIdTable, [SPECIES_ALAKAZAM] = sAlakazamFormSpeciesIdTable, - [SPECIES_GROWLITHE] = sGrowlitheFormSpeciesIdTable, - [SPECIES_ARCANINE] = sArcanineFormSpeciesIdTable, + [SPECIES_GROWLITHE] = sGrowlitheFormSpeciesIdTable, + [SPECIES_ARCANINE] = sArcanineFormSpeciesIdTable, [SPECIES_GEODUDE] = sGeodudeFormSpeciesIdTable, [SPECIES_GRAVELER] = sGravelerFormSpeciesIdTable, [SPECIES_GOLEM] = sGolemFormSpeciesIdTable, @@ -113,7 +113,7 @@ const u16 *const gFormSpeciesIdTables[NUM_SPECIES] = [SPECIES_LILLIGANT] = sLilligantFormSpeciesIdTable, [SPECIES_DARUMAKA] = sDarumakaFormSpeciesIdTable, [SPECIES_DARMANITAN] = sDarmanitanFormSpeciesIdTable, - [SPECIES_YAMASK] = sYamaskFormSpeciesIdTable, + [SPECIES_YAMASK] = sYamaskFormSpeciesIdTable, [SPECIES_ZORUA] = sZoruaFormSpeciesIdTable, [SPECIES_ZOROARK] = sZoroarkFormSpeciesIdTable, [SPECIES_DEERLING] = sDeerlingFormSpeciesIdTable, @@ -139,7 +139,7 @@ const u16 *const gFormSpeciesIdTables[NUM_SPECIES] = [SPECIES_GOODRA] = sGoodraFormSpeciesIdTable, [SPECIES_PUMPKABOO] = sPumpkabooFormSpeciesIdTable, [SPECIES_GOURGEIST] = sGourgeistFormSpeciesIdTable, - [SPECIES_AVALUGG] = sAvaluggFormSpeciesIdTable, + [SPECIES_AVALUGG] = sAvaluggFormSpeciesIdTable, [SPECIES_XERNEAS] = sXerneasFormSpeciesIdTable, [SPECIES_ZYGARDE] = sZygardeFormSpeciesIdTable, [SPECIES_DIANCIE] = sDiancieFormSpeciesIdTable, @@ -394,7 +394,7 @@ const u16 *const gFormSpeciesIdTables[NUM_SPECIES] = [SPECIES_TORNADUS_THERIAN] = sTornadusFormSpeciesIdTable, [SPECIES_THUNDURUS_THERIAN] = sThundurusFormSpeciesIdTable, [SPECIES_LANDORUS_THERIAN] = sLandorusFormSpeciesIdTable, - [SPECIES_ENAMORUS_THERIAN] = sEnamorusFormSpeciesIdTable, + [SPECIES_ENAMORUS_THERIAN] = sEnamorusFormSpeciesIdTable, // Kyurem [SPECIES_KYUREM_WHITE] = sKyuremFormSpeciesIdTable, [SPECIES_KYUREM_BLACK] = sKyuremFormSpeciesIdTable, diff --git a/src/data/pokemon/level_up_learnsets.h b/src/data/pokemon/level_up_learnsets.h index a8c696f1f438..d06e4d00be18 100644 --- a/src/data/pokemon/level_up_learnsets.h +++ b/src/data/pokemon/level_up_learnsets.h @@ -18095,8 +18095,8 @@ static const struct LevelUpMove sWyrdeerLevelUpLearnset[] = { LEVEL_UP_MOVE(15, MOVE_CALM_MIND), //LEVEL_UP_MOVE(21, MOVE_PSYSHIELD_BASH), LEVEL_UP_MOVE(29, MOVE_EXTRASENSORY), - //LEVEL_UP_MOVE(37, MOVE_ZEN_HEADBUTT), - LEVEL_UP_MOVE(47, MOVE_DOUBLE_EDGE), + //LEVEL_UP_MOVE(37, MOVE_ZEN_HEADBUTT), + LEVEL_UP_MOVE(47, MOVE_DOUBLE_EDGE), LEVEL_UP_END }; @@ -18105,7 +18105,7 @@ static const struct LevelUpMove sKleavorLevelUpLearnset[] = { LEVEL_UP_MOVE( 6, MOVE_SILVER_WIND), LEVEL_UP_MOVE(11, MOVE_AERIAL_ACE), LEVEL_UP_MOVE(14, MOVE_DOUBLE_HIT), - //LEVEL_UP_MOVE(14, MOVE_STEALTH_ROCK), + //LEVEL_UP_MOVE(14, MOVE_STEALTH_ROCK), //LEVEL_UP_MOVE(18, MOVE_AIR_SLASH), LEVEL_UP_MOVE(25, MOVE_SWORDS_DANCE), //LEVEL_UP_MOVE(29, MOVE_STONE_AXE), @@ -18121,8 +18121,8 @@ static const struct LevelUpMove sUrsalunaLevelUpLearnset[] = { LEVEL_UP_MOVE(18, MOVE_SLASH), //LEVEL_UP_MOVE(25, MOVE_PLAY_ROUGH), //LEVEL_UP_MOVE(34, MOVE_HIGH_HORSEPOWER), - LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE), - //LEVEL_UP_MOVE(47, MOVE_HEADLONG_RUSH), + LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE), + //LEVEL_UP_MOVE(47, MOVE_HEADLONG_RUSH), LEVEL_UP_END }; @@ -18135,7 +18135,7 @@ static const struct LevelUpMove sBasculegionLevelUpLearnset[] = { LEVEL_UP_MOVE(25, MOVE_CRUNCH), LEVEL_UP_MOVE(25, MOVE_SHADOW_BALL), //LEVEL_UP_MOVE(34, MOVE_WAVE_CRASH), - LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE), + LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE), LEVEL_UP_END }; @@ -18145,9 +18145,9 @@ static const struct LevelUpMove sSneaslerLevelUpLearnset[] = { //LEVEL_UP_MOVE(11, MOVE_DIRE_CLAW), LEVEL_UP_MOVE(11, MOVE_SWIFT), LEVEL_UP_MOVE(18, MOVE_SLASH), - //LEVEL_UP_MOVE(25, MOVE_POISON_JAB), - LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE), - //LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), + //LEVEL_UP_MOVE(25, MOVE_POISON_JAB), + LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE), + //LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), LEVEL_UP_END }; @@ -18938,7 +18938,7 @@ static const struct LevelUpMove sGrowlitheHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 9, MOVE_BITE), //LEVEL_UP_MOVE(15, MOVE_FIRE_FANG), LEVEL_UP_MOVE(21, MOVE_ROCK_SLIDE), - LEVEL_UP_MOVE(29, MOVE_CRUNCH), + LEVEL_UP_MOVE(29, MOVE_CRUNCH), LEVEL_UP_MOVE(37, MOVE_DOUBLE_EDGE), //LEVEL_UP_MOVE(47, MOVE_FLARE_BLITZ), LEVEL_UP_END @@ -18951,7 +18951,7 @@ static const struct LevelUpMove sArcanineHisuianLevelUpLearnset[] = { //LEVEL_UP_MOVE(15, MOVE_FIRE_FANG), LEVEL_UP_MOVE(21, MOVE_ROCK_SLIDE), LEVEL_UP_MOVE(29, MOVE_CRUNCH), - //LEVEL_UP_MOVE(29, MOVE_RAGING_FURY), + //LEVEL_UP_MOVE(29, MOVE_RAGING_FURY), LEVEL_UP_MOVE(37, MOVE_DOUBLE_EDGE), //LEVEL_UP_MOVE(47, MOVE_FLARE_BLITZ), LEVEL_UP_END @@ -19015,9 +19015,9 @@ static const struct LevelUpMove sSneaselHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 6, MOVE_ROCK_SMASH), LEVEL_UP_MOVE(11, MOVE_SWIFT), LEVEL_UP_MOVE(18, MOVE_SLASH), - //LEVEL_UP_MOVE(25, MOVE_POISON_JAB), - LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE), - //LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), + //LEVEL_UP_MOVE(25, MOVE_POISON_JAB), + LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE), + //LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), LEVEL_UP_END }; @@ -19116,7 +19116,7 @@ static const struct LevelUpMove sGoodraHisuianLevelUpLearnset[] = { }; static const struct LevelUpMove sAvaluggHisuianLevelUpLearnset[] = { - //LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE), + //LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE), LEVEL_UP_MOVE( 1, MOVE_TACKLE), LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW), //LEVEL_UP_MOVE( 9, MOVE_ICE_SHARD), diff --git a/src/data/pokemon/pokedex_orders.h b/src/data/pokemon/pokedex_orders.h index 0ca5ccb41793..e1d8cc4792b8 100644 --- a/src/data/pokemon/pokedex_orders.h +++ b/src/data/pokemon/pokedex_orders.h @@ -1423,7 +1423,7 @@ const u16 gPokedexOrder_Weight[] = NATIONAL_DEX_ESPEON, NATIONAL_DEX_FROSLASS, NATIONAL_DEX_UMBREON, - //NATIONAL_DEX_SNEASEL, //Hisuian Form + //NATIONAL_DEX_SNEASEL, //Hisuian Form NATIONAL_DEX_HUNTAIL, NATIONAL_DEX_CARNIVINE, NATIONAL_DEX_WATCHOG, @@ -1577,7 +1577,7 @@ const u16 gPokedexOrder_Weight[] = NATIONAL_DEX_GLISCOR, NATIONAL_DEX_DUBWOOL, NATIONAL_DEX_SNEASLER, - //NATIONAL_DEX_BRAVIARY, //Hisuian Form + //NATIONAL_DEX_BRAVIARY, //Hisuian Form NATIONAL_DEX_PURUGLY, //NATIONAL_DEX_MANECTRIC, // Mega NATIONAL_DEX_GOTHITELLE, @@ -1600,7 +1600,7 @@ const u16 gPokedexOrder_Weight[] = NATIONAL_DEX_HAKAMO_O, NATIONAL_DEX_ALAKAZAM, NATIONAL_DEX_HITMONTOP, - NATIONAL_DEX_ENAMORUS, + NATIONAL_DEX_ENAMORUS, NATIONAL_DEX_GARDEVOIR, NATIONAL_DEX_KELDEO, NATIONAL_DEX_GRANBULL, @@ -1660,7 +1660,7 @@ const u16 gPokedexOrder_Weight[] = NATIONAL_DEX_HEATMOR, //NATIONAL_DEX_LURANTIS, // Totem-sized //NATIONAL_DEX_ZAPDOS, // Galarian Form - //NATIONAL_DEX_SAMUROTT, // Hisuian Form + //NATIONAL_DEX_SAMUROTT, // Hisuian Form NATIONAL_DEX_MR_RIME, NATIONAL_DEX_WHIRLIPEDE, //NATIONAL_DEX_PINSIR, // Mega @@ -1823,7 +1823,7 @@ const u16 gPokedexOrder_Weight[] = NATIONAL_DEX_FERROTHORN, NATIONAL_DEX_MUDBRAY, NATIONAL_DEX_ZACIAN, // Hero of Many Battles - NATIONAL_DEX_BASCULEGION, + NATIONAL_DEX_BASCULEGION, //NATIONAL_DEX_CHARIZARD, // Mega X NATIONAL_DEX_SHELGON, //NATIONAL_DEX_SALAMENCE, // Mega @@ -1933,7 +1933,7 @@ const u16 gPokedexOrder_Weight[] = //NATIONAL_DEX_AVALUGG, //Hisuian Form NATIONAL_DEX_TYRANTRUM, NATIONAL_DEX_RHYPERIOR, - NATIONAL_DEX_URSALUNA, + NATIONAL_DEX_URSALUNA, NATIONAL_DEX_MAMOSWINE, // 661.4 - 667.0 lbs / 300.0 - 307.1 kg NATIONAL_DEX_GOLEM, @@ -2642,7 +2642,7 @@ const u16 gPokedexOrder_Height[] = NATIONAL_DEX_GURDURR, NATIONAL_DEX_LEAVANNY, NATIONAL_DEX_WHIRLIPEDE, - //NATIONAL_DEX_LILLIGANT, //Hisuian Form + //NATIONAL_DEX_LILLIGANT, //Hisuian Form NATIONAL_DEX_CARRACOSTA, NATIONAL_DEX_FRILLISH, NATIONAL_DEX_ALOMOMOLA, @@ -2697,7 +2697,7 @@ const u16 gPokedexOrder_Height[] = NATIONAL_DEX_DUBWOOL, NATIONAL_DEX_BARRASKEWDA, NATIONAL_DEX_FROSMOTH, - NATIONAL_DEX_SNEASLER, + NATIONAL_DEX_SNEASLER, // 4'07" / 1.4m //NATIONAL_DEX_BEEDRILL, // Mega //NATIONAL_DEX_RATICATE, // Alolan Form, Totem-sized @@ -2734,7 +2734,7 @@ const u16 gPokedexOrder_Height[] = NATIONAL_DEX_ZWEILOUS, //NATIONAL_DEX_TORNADUS, // Therian Forme NATIONAL_DEX_KELDEO, - //NATIONAL_DEX_AVALUGG, // Hisuian Form + //NATIONAL_DEX_AVALUGG, // Hisuian Form //NATIONAL_DEX_GUMSHOOS, // Totem-sized NATIONAL_DEX_CINDERACE, NATIONAL_DEX_EISCUE, @@ -2805,7 +2805,7 @@ const u16 gPokedexOrder_Height[] = NATIONAL_DEX_HYPNO, NATIONAL_DEX_ZAPDOS, //NATIONAL_DEX_ZAPDOS, // Galarian Form - //NATIONAL_DEX_TYPHLOSION, // Hisuian Form + //NATIONAL_DEX_TYPHLOSION, // Hisuian Form NATIONAL_DEX_NOCTOWL, NATIONAL_DEX_GARDEVOIR, //NATIONAL_DEX_GARDEVOIR, // Mega @@ -2818,15 +2818,15 @@ const u16 gPokedexOrder_Height[] = NATIONAL_DEX_EMBOAR, NATIONAL_DEX_ZEBSTRIKA, NATIONAL_DEX_ZOROARK, - //NATIONAL_DEX_ZOROARK, // Hisuian Form + //NATIONAL_DEX_ZOROARK, // Hisuian Form NATIONAL_DEX_DRUDDIGON, NATIONAL_DEX_BISHARP, NATIONAL_DEX_BOUFFALANT, - //NATIONAL_DEX_BRAVIARY, // Hisuian Form + //NATIONAL_DEX_BRAVIARY, // Hisuian Form NATIONAL_DEX_VOLCARONA, NATIONAL_DEX_CHESNAUGHT, NATIONAL_DEX_DECIDUEYE, - //NATIONAL_DEX_DECIDUEYE, // Hisuian Form + //NATIONAL_DEX_DECIDUEYE, // Hisuian Form NATIONAL_DEX_KOMMO_O, NATIONAL_DEX_TOXTRICITY, NATIONAL_DEX_GRAPPLOCT, @@ -3010,7 +3010,7 @@ const u16 gPokedexOrder_Height[] = NATIONAL_DEX_MUDSDALE, NATIONAL_DEX_MELMETAL, NATIONAL_DEX_STONJOURNER, - NATIONAL_DEX_OVERQWIL, + NATIONAL_DEX_OVERQWIL, // 8'06" / 2.6m NATIONAL_DEX_BEARTIC, //NATIONAL_DEX_VIKAVOLT, // Totem-sized diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h index e04afe339bb3..df6c861a5d9c 100644 --- a/src/data/pokemon_graphics/back_pic_coordinates.h +++ b/src/data/pokemon_graphics/back_pic_coordinates.h @@ -4,6250 +4,1244 @@ // .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonBackPicCoords[] = { - [SPECIES_NONE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_BULBASAUR] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_IVYSAUR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_VENUSAUR] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_CHARMANDER] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_CHARMELEON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_CHARIZARD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SQUIRTLE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_WARTORTLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_BLASTOISE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_CATERPIE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_METAPOD] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_BUTTERFREE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_WEEDLE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_KAKUNA] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_BEEDRILL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_PIDGEY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_PIDGEOTTO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_PIDGEOT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_RATTATA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_RATICATE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SPEAROW] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_FEAROW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_EKANS] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_ARBOK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PIKACHU] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_RAICHU] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SANDSHREW] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_SANDSLASH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_NIDORAN_F] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_NIDORINA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_NIDOQUEEN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_NIDORAN_M] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_NIDORINO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_NIDOKING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_CLEFAIRY] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_CLEFABLE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_VULPIX] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_NINETALES] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_JIGGLYPUFF] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 12, - }, - [SPECIES_WIGGLYTUFF] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_ZUBAT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_GOLBAT] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_ODDISH] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_GLOOM] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_VILEPLUME] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_PARAS] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 18, - }, - [SPECIES_PARASECT] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_VENONAT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_VENOMOTH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_DIGLETT] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_DUGTRIO] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_MEOWTH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_PERSIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_PSYDUCK] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_GOLDUCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_MANKEY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_PRIMEAPE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_GROWLITHE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_ARCANINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_POLIWAG] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 18, - }, - [SPECIES_POLIWHIRL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_POLIWRATH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ABRA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 12, - }, - [SPECIES_KADABRA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_ALAKAZAM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_MACHOP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_MACHOKE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_MACHAMP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_BELLSPROUT] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_WEEPINBELL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_VICTREEBEL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TENTACOOL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_TENTACRUEL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_GEODUDE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_GRAVELER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_GOLEM] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_PONYTA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_RAPIDASH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SLOWPOKE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SLOWBRO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_MAGNEMITE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_MAGNETON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_FARFETCHD] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_DODUO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DODRIO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SEEL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_DEWGONG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_GRIMER] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_MUK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_SHELLDER] = - { - .size = MON_COORDS_SIZE(48, 24), - .y_offset = 21, - }, - [SPECIES_CLOYSTER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GASTLY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_HAUNTER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_GENGAR] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_ONIX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_DROWZEE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_HYPNO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_KRABBY] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_KINGLER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_VOLTORB] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_ELECTRODE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_EXEGGCUTE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 18, - }, - [SPECIES_EXEGGUTOR] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CUBONE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_MAROWAK] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_HITMONLEE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_HITMONCHAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_LICKITUNG] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_KOFFING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_WEEZING] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_RHYHORN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_RHYDON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_CHANSEY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_TANGELA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_KANGASKHAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_HORSEA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_SEADRA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GOLDEEN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_SEAKING] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_STARYU] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_STARMIE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_MR_MIME] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SCYTHER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_JYNX] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_ELECTABUZZ] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_MAGMAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_PINSIR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TAUROS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 13, - }, - [SPECIES_MAGIKARP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GYARADOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_LAPRAS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_DITTO] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_EEVEE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_VAPOREON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_JOLTEON] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_FLAREON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_PORYGON] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_OMANYTE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_OMASTAR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_KABUTO] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_KABUTOPS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_AERODACTYL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SNORLAX] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_ARTICUNO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ZAPDOS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_MOLTRES] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_DRATINI] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_DRAGONAIR] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 4, - }, - [SPECIES_DRAGONITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_MEWTWO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_MEW] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CHIKORITA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_BAYLEEF] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_MEGANIUM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_CYNDAQUIL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_QUILAVA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TYPHLOSION] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_TOTODILE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_CROCONAW] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_FERALIGATR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_SENTRET] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_FURRET] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_HOOTHOOT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_NOCTOWL] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_LEDYBA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_LEDIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SPINARAK] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_ARIADOS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CROBAT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CHINCHOU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_LANTURN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_PICHU] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_CLEFFA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_IGGLYBUFF] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_TOGEPI] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_TOGETIC] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_NATU] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_XATU] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_MAREEP] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_FLAAFFY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_AMPHAROS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_BELLOSSOM] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_MARILL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_AZUMARILL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SUDOWOODO] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_POLITOED] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_HOPPIP] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SKIPLOOM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_JUMPLUFF] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_AIPOM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SUNKERN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_SUNFLORA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_YANMA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_WOOPER] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_QUAGSIRE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ESPEON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_UMBREON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MURKROW] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 10, - }, - [SPECIES_SLOWKING] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_MISDREAVUS] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_UNOWN] = - { - .size = MON_COORDS_SIZE(24, 48), - .y_offset = 8, - }, - [SPECIES_WOBBUFFET] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 10, - }, - [SPECIES_GIRAFARIG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PINECO] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_FORRETRESS] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_DUNSPARCE] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 17, - }, - [SPECIES_GLIGAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_STEELIX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SNUBBULL] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_GRANBULL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_QWILFISH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_SCIZOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SHUCKLE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_HERACROSS] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_SNEASEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_TEDDIURSA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_URSARING] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_SLUGMA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_MAGCARGO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SWINUB] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_PILOSWINE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CORSOLA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_REMORAID] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_OCTILLERY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_DELIBIRD] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_MANTINE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SKARMORY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_HOUNDOUR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_HOUNDOOM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_KINGDRA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_PHANPY] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_DONPHAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_PORYGON2] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_STANTLER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SMEARGLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_TYROGUE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_HITMONTOP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SMOOCHUM] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_ELEKID] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_MAGBY] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_MILTANK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_BLISSEY] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_RAIKOU] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ENTEI] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_SUICUNE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_LARVITAR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 8, - }, - [SPECIES_PUPITAR] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_TYRANITAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_LUGIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HO_OH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_CELEBI] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_TREECKO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_GROVYLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SCEPTILE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_TORCHIC] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_COMBUSKEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_BLAZIKEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MUDKIP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_MARSHTOMP] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SWAMPERT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_POOCHYENA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_MIGHTYENA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ZIGZAGOON] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_LINOONE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_WURMPLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SILCOON] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_BEAUTIFLY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CASCOON] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_DUSTOX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_LOTAD] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_LOMBRE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_LUDICOLO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SEEDOT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_NUZLEAF] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_SHIFTRY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_NINCADA] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 18, - }, - [SPECIES_NINJASK] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SHEDINJA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TAILLOW] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_SWELLOW] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_SHROOMISH] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_BRELOOM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SPINDA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_WINGULL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_PELIPPER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SURSKIT] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_MASQUERAIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_WAILMER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_WAILORD] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_SKITTY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DELCATTY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KECLEON] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_BALTOY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CLAYDOL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_NOSEPASS] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_TORKOAL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SABLEYE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 13, - }, - [SPECIES_BARBOACH] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_WHISCASH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_LUVDISC] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_CORPHISH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CRAWDAUNT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_FEEBAS] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_MILOTIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CARVANHA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SHARPEDO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_TRAPINCH] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_VIBRAVA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_FLYGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_MAKUHITA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_HARIYAMA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_ELECTRIKE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_MANECTRIC] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_NUMEL] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_CAMERUPT] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SPHEAL] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_SEALEO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_WALREIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CACNEA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_CACTURNE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNORUNT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_GLALIE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_LUNATONE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_SOLROCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_AZURILL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SPOINK] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 4, - }, - [SPECIES_GRUMPIG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_PLUSLE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_MINUN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 4, - }, - [SPECIES_MAWILE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_MEDITITE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_MEDICHAM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SWABLU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_ALTARIA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_WYNAUT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_DUSKULL] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_DUSCLOPS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_ROSELIA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_SLAKOTH] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_VIGOROTH] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SLAKING] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GULPIN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_SWALOT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_TROPIUS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_WHISMUR] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_LOUDRED] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_EXPLOUD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CLAMPERL] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_HUNTAIL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_GOREBYSS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ABSOL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SHUPPET] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_BANETTE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_SEVIPER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_ZANGOOSE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_RELICANTH] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_ARON] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_LAIRON] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_AGGRON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_CASTFORM] = - { - .size = MON_COORDS_SIZE(32, 64), - .y_offset = 0, - }, - [SPECIES_VOLBEAT] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_ILLUMISE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_LILEEP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_CRADILY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_ANORITH] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 19, - }, - [SPECIES_ARMALDO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_RALTS] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_KIRLIA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_GARDEVOIR] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_BAGON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_SHELGON] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_SALAMENCE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_BELDUM] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_METANG] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_METAGROSS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_REGIROCK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_REGICE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_REGISTEEL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_KYOGRE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 18, - }, - [SPECIES_GROUDON] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_RAYQUAZA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LATIAS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_LATIOS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_JIRACHI] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DEOXYS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_CHIMECHO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, + [SPECIES_NONE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_BULBASAUR] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_IVYSAUR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_VENUSAUR] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_CHARMANDER] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_CHARMELEON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_CHARIZARD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SQUIRTLE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_WARTORTLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_BLASTOISE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_CATERPIE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_METAPOD] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_BUTTERFREE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_WEEDLE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_KAKUNA] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_BEEDRILL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_PIDGEY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_PIDGEOTTO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_PIDGEOT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_RATTATA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_RATICATE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SPEAROW] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_FEAROW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_EKANS] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_ARBOK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PIKACHU] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_RAICHU] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SANDSHREW] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_SANDSLASH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_NIDORAN_F] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_NIDORINA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_NIDOQUEEN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_NIDORAN_M] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_NIDORINO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_NIDOKING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CLEFAIRY] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_CLEFABLE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_VULPIX] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_NINETALES] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_JIGGLYPUFF] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 12 }, + [SPECIES_WIGGLYTUFF] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ZUBAT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_GOLBAT] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_ODDISH] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_GLOOM] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_VILEPLUME] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_PARAS] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 18 }, + [SPECIES_PARASECT] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_VENONAT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_VENOMOTH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_DIGLETT] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_DUGTRIO] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_MEOWTH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_PERSIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_PSYDUCK] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_GOLDUCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_MANKEY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_PRIMEAPE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_GROWLITHE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_ARCANINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_POLIWAG] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 18 }, + [SPECIES_POLIWHIRL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_POLIWRATH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ABRA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 12 }, + [SPECIES_KADABRA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_ALAKAZAM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_MACHOP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_MACHOKE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_MACHAMP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_BELLSPROUT] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_WEEPINBELL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_VICTREEBEL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TENTACOOL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_TENTACRUEL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_GEODUDE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_GRAVELER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_GOLEM] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_PONYTA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_RAPIDASH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SLOWPOKE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SLOWBRO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_MAGNEMITE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_MAGNETON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_FARFETCHD] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_DODUO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DODRIO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SEEL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_DEWGONG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_GRIMER] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_MUK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_SHELLDER] = { .size = MON_COORDS_SIZE(48, 24), .y_offset = 21 }, + [SPECIES_CLOYSTER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GASTLY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_HAUNTER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_GENGAR] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_ONIX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_DROWZEE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_HYPNO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_KRABBY] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_KINGLER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_VOLTORB] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_ELECTRODE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_EXEGGCUTE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 18 }, + [SPECIES_EXEGGUTOR] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CUBONE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_MAROWAK] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_HITMONLEE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_HITMONCHAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_LICKITUNG] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_KOFFING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_WEEZING] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_RHYHORN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_RHYDON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CHANSEY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_TANGELA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_KANGASKHAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_HORSEA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_SEADRA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GOLDEEN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_SEAKING] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_STARYU] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_STARMIE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_MR_MIME] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SCYTHER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_JYNX] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_ELECTABUZZ] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_MAGMAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_PINSIR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TAUROS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 13 }, + [SPECIES_MAGIKARP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GYARADOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_LAPRAS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_DITTO] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_EEVEE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_VAPOREON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_JOLTEON] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_FLAREON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_PORYGON] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_OMANYTE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_OMASTAR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_KABUTO] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_KABUTOPS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_AERODACTYL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SNORLAX] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_ARTICUNO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ZAPDOS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_MOLTRES] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_DRATINI] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_DRAGONAIR] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 4 }, + [SPECIES_DRAGONITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_MEWTWO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_MEW] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CHIKORITA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_BAYLEEF] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_MEGANIUM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_CYNDAQUIL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_QUILAVA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TYPHLOSION] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_TOTODILE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_CROCONAW] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_FERALIGATR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_SENTRET] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_FURRET] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_HOOTHOOT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_NOCTOWL] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_LEDYBA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_LEDIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SPINARAK] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_ARIADOS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CROBAT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CHINCHOU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_LANTURN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_PICHU] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_CLEFFA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_IGGLYBUFF] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_TOGEPI] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_TOGETIC] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_NATU] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_XATU] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_MAREEP] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_FLAAFFY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_AMPHAROS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_BELLOSSOM] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_MARILL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_AZUMARILL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SUDOWOODO] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_POLITOED] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_HOPPIP] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SKIPLOOM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_JUMPLUFF] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_AIPOM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SUNKERN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_SUNFLORA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_YANMA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_WOOPER] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_QUAGSIRE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ESPEON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_UMBREON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MURKROW] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 10 }, + [SPECIES_SLOWKING] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_MISDREAVUS] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_UNOWN] = { .size = MON_COORDS_SIZE(24, 48), .y_offset = 8 }, + [SPECIES_WOBBUFFET] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 10 }, + [SPECIES_GIRAFARIG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PINECO] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_FORRETRESS] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_DUNSPARCE] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 17 }, + [SPECIES_GLIGAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_STEELIX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SNUBBULL] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_GRANBULL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_QWILFISH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_SCIZOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SHUCKLE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_HERACROSS] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_SNEASEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_TEDDIURSA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_URSARING] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_SLUGMA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_MAGCARGO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SWINUB] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_PILOSWINE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CORSOLA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_REMORAID] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_OCTILLERY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_DELIBIRD] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MANTINE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SKARMORY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_HOUNDOUR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_HOUNDOOM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_KINGDRA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_PHANPY] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_DONPHAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_PORYGON2] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_STANTLER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SMEARGLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_TYROGUE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_HITMONTOP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SMOOCHUM] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_ELEKID] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_MAGBY] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_MILTANK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_BLISSEY] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_RAIKOU] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ENTEI] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_SUICUNE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_LARVITAR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 8 }, + [SPECIES_PUPITAR] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_TYRANITAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_LUGIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HO_OH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CELEBI] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_TREECKO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_GROVYLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SCEPTILE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_TORCHIC] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_COMBUSKEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BLAZIKEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MUDKIP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_MARSHTOMP] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SWAMPERT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_POOCHYENA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_MIGHTYENA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ZIGZAGOON] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_LINOONE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_WURMPLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SILCOON] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_BEAUTIFLY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CASCOON] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_DUSTOX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_LOTAD] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_LOMBRE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_LUDICOLO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SEEDOT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_NUZLEAF] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_SHIFTRY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_NINCADA] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 18 }, + [SPECIES_NINJASK] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SHEDINJA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TAILLOW] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_SWELLOW] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_SHROOMISH] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_BRELOOM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SPINDA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_WINGULL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_PELIPPER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SURSKIT] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_MASQUERAIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_WAILMER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_WAILORD] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_SKITTY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DELCATTY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KECLEON] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_BALTOY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CLAYDOL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_NOSEPASS] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_TORKOAL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SABLEYE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 13 }, + [SPECIES_BARBOACH] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_WHISCASH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_LUVDISC] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_CORPHISH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CRAWDAUNT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_FEEBAS] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_MILOTIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CARVANHA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SHARPEDO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_TRAPINCH] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_VIBRAVA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_FLYGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_MAKUHITA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_HARIYAMA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ELECTRIKE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_MANECTRIC] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_NUMEL] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_CAMERUPT] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SPHEAL] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_SEALEO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_WALREIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CACNEA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_CACTURNE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNORUNT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_GLALIE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_LUNATONE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_SOLROCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_AZURILL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SPOINK] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 4 }, + [SPECIES_GRUMPIG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_PLUSLE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_MINUN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 4 }, + [SPECIES_MAWILE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_MEDITITE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_MEDICHAM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SWABLU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_ALTARIA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_WYNAUT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_DUSKULL] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_DUSCLOPS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_ROSELIA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_SLAKOTH] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_VIGOROTH] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SLAKING] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GULPIN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_SWALOT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_TROPIUS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_WHISMUR] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_LOUDRED] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_EXPLOUD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CLAMPERL] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_HUNTAIL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_GOREBYSS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ABSOL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SHUPPET] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_BANETTE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_SEVIPER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_ZANGOOSE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_RELICANTH] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_ARON] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_LAIRON] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_AGGRON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CASTFORM] = { .size = MON_COORDS_SIZE(32, 64), .y_offset = 0 }, + [SPECIES_VOLBEAT] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_ILLUMISE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_LILEEP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_CRADILY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ANORITH] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 19 }, + [SPECIES_ARMALDO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_RALTS] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_KIRLIA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_GARDEVOIR] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_BAGON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_SHELGON] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_SALAMENCE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_BELDUM] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_METANG] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_METAGROSS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_REGIROCK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_REGICE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_REGISTEEL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_KYOGRE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 18 }, + [SPECIES_GROUDON] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_RAYQUAZA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LATIAS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_LATIOS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_JIRACHI] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DEOXYS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_CHIMECHO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, #if P_NEW_POKEMON == TRUE - [SPECIES_TURTWIG] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_GROTLE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_TORTERRA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_CHIMCHAR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_MONFERNO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_INFERNAPE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PIPLUP] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_PRINPLUP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_EMPOLEON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_STARLY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_STARAVIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_STARAPTOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_BIDOOF] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_BIBAREL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_KRICKETOT] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_KRICKETUNE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_SHINX] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_LUXIO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_LUXRAY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BUDEW] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 11, - }, - [SPECIES_ROSERADE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_CRANIDOS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_RAMPARDOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_SHIELDON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_BASTIODON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_BURMY] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 6, - }, - [SPECIES_WORMADAM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_MOTHIM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_COMBEE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 22, - }, - [SPECIES_VESPIQUEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PACHIRISU] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_BUIZEL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_FLOATZEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_CHERUBI] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_CHERRIM] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 9, - }, - [SPECIES_SHELLOS] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 8, - }, - [SPECIES_GASTRODON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_AMBIPOM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_DRIFLOON] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - [SPECIES_DRIFBLIM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_BUNEARY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_LOPUNNY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_MISMAGIUS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_HONCHKROW] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_GLAMEOW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_PURUGLY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CHINGLING] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 13, - }, - [SPECIES_STUNKY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_SKUNTANK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_BRONZOR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_BRONZONG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_BONSLY] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 6, - }, - [SPECIES_MIME_JR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_HAPPINY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_CHATOT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SPIRITOMB] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_GIBLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_GABITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_GARCHOMP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MUNCHLAX] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_RIOLU] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 8, - }, - [SPECIES_LUCARIO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HIPPOPOTAS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_HIPPOWDON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SKORUPI] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DRAPION] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_CROAGUNK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_TOXICROAK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_CARNIVINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_FINNEON] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_LUMINEON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_MANTYKE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SNOVER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ABOMASNOW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_WEAVILE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_MAGNEZONE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_LICKILICKY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_RHYPERIOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TANGROWTH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ELECTIVIRE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_MAGMORTAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TOGEKISS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_YANMEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_LEAFEON] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_GLACEON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 6, - }, - [SPECIES_GLISCOR] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_MAMOSWINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_PORYGON_Z] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GALLADE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_PROBOPASS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_DUSKNOIR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_FROSLASS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ROTOM] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_UXIE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_MESPRIT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_AZELF] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DIALGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PALKIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_HEATRAN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_REGIGIGAS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_GIRATINA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_CRESSELIA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_PHIONE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_MANAPHY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_DARKRAI] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SHAYMIN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_ARCEUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_VICTINI] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 7, - }, - [SPECIES_SNIVY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_SERVINE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 5, - }, - [SPECIES_SERPERIOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_TEPIG] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_PIGNITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 9, - }, - [SPECIES_EMBOAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_OSHAWOTT] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 14, - }, - [SPECIES_DEWOTT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 5, - }, - [SPECIES_SAMUROTT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_PATRAT] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_WATCHOG] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_LILLIPUP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_HERDIER] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 10, - }, - [SPECIES_STOUTLAND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_PURRLOIN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_LIEPARD] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_PANSAGE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SIMISAGE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 6, - }, - [SPECIES_PANSEAR] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 10, - }, - [SPECIES_SIMISEAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_PANPOUR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SIMIPOUR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_MUNNA] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - [SPECIES_MUSHARNA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 8, - }, - [SPECIES_PIDOVE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_TRANQUILL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_UNFEZANT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_BLITZLE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_ZEBSTRIKA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_ROGGENROLA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 13, - }, - [SPECIES_BOLDORE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 16, - }, - [SPECIES_GIGALITH] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_WOOBAT] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_SWOOBAT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_DRILBUR] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_EXCADRILL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 11, - }, - [SPECIES_AUDINO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 9, - }, - [SPECIES_TIMBURR] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_GURDURR] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CONKELDURR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 13, - }, - [SPECIES_TYMPOLE] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - [SPECIES_PALPITOAD] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_SEISMITOAD] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_THROH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_SAWK] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SEWADDLE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 13, - }, - [SPECIES_SWADLOON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_LEAVANNY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_VENIPEDE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_WHIRLIPEDE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_SCOLIPEDE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_COTTONEE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 18, - }, - [SPECIES_WHIMSICOTT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_PETILIL] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 9, - }, - [SPECIES_LILLIGANT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_BASCULIN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 16, - }, - [SPECIES_SANDILE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 18, - }, - [SPECIES_KROKOROK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_KROOKODILE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DARUMAKA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 12, - }, - [SPECIES_DARMANITAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MARACTUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_DWEBBLE] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 17, - }, - [SPECIES_CRUSTLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_SCRAGGY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_SCRAFTY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 5, - }, - [SPECIES_SIGILYPH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_YAMASK] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_COFAGRIGUS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_TIRTOUGA] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_CARRACOSTA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_ARCHEN] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_ARCHEOPS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_TRUBBISH] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 13, - }, - [SPECIES_GARBODOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_ZORUA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ZOROARK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_MINCCINO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_CINCCINO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GOTHITA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_GOTHORITA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GOTHITELLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SOLOSIS] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 19, - }, - [SPECIES_DUOSION] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 13, - }, - [SPECIES_REUNICLUS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 13, - }, - [SPECIES_DUCKLETT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_SWANNA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_VANILLITE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_VANILLISH] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_VANILLUXE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_DEERLING] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_SAWSBUCK] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 5, - }, - [SPECIES_EMOLGA] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 16, - }, - [SPECIES_KARRABLAST] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 14, - }, - [SPECIES_ESCAVALIER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_FOONGUS] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_AMOONGUSS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_FRILLISH] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_JELLICENT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_ALOMOMOLA] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_JOLTIK] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 19, - }, - [SPECIES_GALVANTULA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 18, - }, - [SPECIES_FERROSEED] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_FERROTHORN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_KLINK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 17, - }, - [SPECIES_KLANG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_KLINKLANG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_TYNAMO] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 21, - }, - [SPECIES_EELEKTRIK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_EELEKTROSS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ELGYEM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 10, - }, - [SPECIES_BEHEEYEM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LITWICK] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_LAMPENT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 12, - }, - [SPECIES_CHANDELURE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_AXEW] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_FRAXURE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 13, - }, - [SPECIES_HAXORUS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_CUBCHOO] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_BEARTIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_CRYOGONAL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_SHELMET] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 19, - }, - [SPECIES_ACCELGOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_STUNFISK] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 22, - }, - [SPECIES_MIENFOO] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_MIENSHAO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_DRUDDIGON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_GOLETT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_GOLURK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_PAWNIARD] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_BISHARP] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_BOUFFALANT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_RUFFLET] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_BRAVIARY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_VULLABY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 14, - }, - [SPECIES_MANDIBUZZ] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_HEATMOR] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 21, - }, - [SPECIES_DURANT] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 17, - }, - [SPECIES_DEINO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 14, - }, - [SPECIES_ZWEILOUS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_HYDREIGON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 11, - }, - [SPECIES_LARVESTA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_VOLCARONA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_COBALION] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 6, - }, - [SPECIES_TERRAKION] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_VIRIZION] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_TORNADUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_THUNDURUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_RESHIRAM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_ZEKROM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_LANDORUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KYUREM] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_KELDEO] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_MELOETTA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_GENESECT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_CHESPIN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 6, - }, - [SPECIES_QUILLADIN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CHESNAUGHT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_FENNEKIN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_BRAIXEN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_DELPHOX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_FROAKIE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_FROGADIER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GRENINJA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_BUNNELBY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_DIGGERSBY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_FLETCHLING] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_FLETCHINDER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_TALONFLAME] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SCATTERBUG] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 12, - }, - [SPECIES_SPEWPA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_VIVILLON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LITLEO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_PYROAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_FLABEBE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_FLOETTE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_FLORGES] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_SKIDDO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_GOGOAT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_PANCHAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_PANGORO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_FURFROU] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_ESPURR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_MEOWSTIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 9, - }, - [SPECIES_HONEDGE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_DOUBLADE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_AEGISLASH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 9, - }, - [SPECIES_SPRITZEE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_AROMATISSE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_SWIRLIX] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_SLURPUFF] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_INKAY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 9, - }, - [SPECIES_MALAMAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_BINACLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_BARBARACLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SKRELP] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_DRAGALGE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CLAUNCHER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_CLAWITZER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_HELIOPTILE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_HELIOLISK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_TYRUNT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_TYRANTRUM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 11, - }, - [SPECIES_AMAURA] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 3, - }, - [SPECIES_AURORUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SYLVEON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_HAWLUCHA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_DEDENNE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_CARBINK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_GOOMY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_SLIGGOO] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_GOODRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KLEFKI] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 8, - }, - [SPECIES_PHANTUMP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_TREVENANT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_PUMPKABOO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 13, - }, - [SPECIES_GOURGEIST] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_BERGMITE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 13, - }, - [SPECIES_AVALUGG] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_NOIBAT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 7, - }, - [SPECIES_NOIVERN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_XERNEAS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_YVELTAL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_ZYGARDE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_DIANCIE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_HOOPA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_VOLCANION] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ROWLET] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_DARTRIX] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_DECIDUEYE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_LITTEN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_TORRACAT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_INCINEROAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_POPPLIO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_BRIONNE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_PRIMARINA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PIKIPEK] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_TRUMBEAK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_TOUCANNON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_YUNGOOS] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_GUMSHOOS] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_GRUBBIN] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_CHARJABUG] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_VIKAVOLT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_CRABRAWLER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CRABOMINABLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ORICORIO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CUTIEFLY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 15, - }, - [SPECIES_RIBOMBEE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_ROCKRUFF] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_LYCANROC] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_WISHIWASHI] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 18, - }, - [SPECIES_MAREANIE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 15, - }, - [SPECIES_TOXAPEX] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_MUDBRAY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_MUDSDALE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_DEWPIDER] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_ARAQUANID] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_FOMANTIS] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 5, - }, - [SPECIES_LURANTIS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_MORELULL] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_SHIINOTIC] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_SALANDIT] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_SALAZZLE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_STUFFUL] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_BEWEAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_BOUNSWEET] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_STEENEE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_TSAREENA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_COMFEY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 11, - }, - [SPECIES_ORANGURU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_PASSIMIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_WIMPOD] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_GOLISOPOD] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_SANDYGAST] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_PALOSSAND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_PYUKUMUKU] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - [SPECIES_TYPE_NULL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_SILVALLY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_MINIOR] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_KOMALA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_TURTONATOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_TOGEDEMARU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 13, - }, - [SPECIES_MIMIKYU] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_BRUXISH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 14, - }, - [SPECIES_DRAMPA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_DHELMISE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_JANGMO_O] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_HAKAMO_O] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 5, - }, - [SPECIES_KOMMO_O] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_TAPU_KOKO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_TAPU_LELE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_TAPU_BULU] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_TAPU_FINI] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_COSMOG] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_COSMOEM] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 17, - }, - [SPECIES_SOLGALEO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_LUNALA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_NIHILEGO] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_BUZZWOLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 14, - }, - [SPECIES_PHEROMOSA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_XURKITREE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_CELESTEELA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KARTANA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_GUZZLORD] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_NECROZMA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_MAGEARNA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MARSHADOW] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 6, - }, - [SPECIES_POIPOLE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_NAGANADEL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_STAKATAKA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_BLACEPHALON] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_ZERAORA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 11, - }, - [SPECIES_MELTAN] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_MELMETAL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_GROOKEY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_THWACKEY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_RILLABOOM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SCORBUNNY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_RABOOT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_CINDERACE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_SOBBLE] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 8, - }, - [SPECIES_DRIZZILE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_INTELEON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_SKWOVET] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GREEDENT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ROOKIDEE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 17, - }, - [SPECIES_CORVISQUIRE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_CORVIKNIGHT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_BLIPBUG] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_DOTTLER] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 17, - }, - [SPECIES_ORBEETLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_NICKIT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_THIEVUL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_GOSSIFLEUR] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 15, - }, - [SPECIES_ELDEGOSS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_WOOLOO] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 18, - }, - [SPECIES_DUBWOOL] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_CHEWTLE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_DREDNAW] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 18, - }, - [SPECIES_YAMPER] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 13, - }, - [SPECIES_BOLTUND] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ROLYCOLY] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 17, - }, - [SPECIES_CARKOL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_COALOSSAL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_APPLIN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 15, - }, - [SPECIES_FLAPPLE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_APPLETUN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 11, - }, - [SPECIES_SILICOBRA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_SANDACONDA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_CRAMORANT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_ARROKUDA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_BARRASKEWDA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_TOXEL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_TOXTRICITY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SIZZLIPEDE] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_CENTISKORCH] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_CLOBBOPUS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_GRAPPLOCT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_SINISTEA] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - [SPECIES_POLTEAGEIST] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_HATENNA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_HATTREM] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_HATTERENE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_IMPIDIMP] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_MORGREM] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_GRIMMSNARL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_OBSTAGOON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PERRSERKER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_CURSOLA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SIRFETCHD] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_MR_RIME] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_RUNERIGUS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_MILCERY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 16, - }, - [SPECIES_ALCREMIE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_FALINKS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - [SPECIES_PINCURCHIN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_SNOM] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_FROSMOTH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_STONJOURNER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_EISCUE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_INDEEDEE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_MORPEKO] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_CUFANT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_COPPERAJAH] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_DRACOZOLT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_ARCTOZOLT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_DRACOVISH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_ARCTOVISH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_DURALUDON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_DREEPY] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_DRAKLOAK] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_DRAGAPULT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_ZACIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ZAMAZENTA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ETERNATUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_KUBFU] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_URSHIFU] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_ZARUDE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_REGIELEKI] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_REGIDRAGO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GLASTRIER] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 5, - }, - [SPECIES_SPECTRIER] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_CALYREX] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_WYRDEER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KLEAVOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_URSALUNA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_BASCULEGION] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNEASLER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_OVERQWIL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ENAMORUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Megas - [SPECIES_VENUSAUR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 8, - }, - [SPECIES_CHARIZARD_MEGA_X] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CHARIZARD_MEGA_Y] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_BLASTOISE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BEEDRILL_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_PIDGEOT_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_ALAKAZAM_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SLOWBRO_MEGA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_GENGAR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KANGASKHAN_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_PINSIR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GYARADOS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_AERODACTYL_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 8, - }, - [SPECIES_MEWTWO_MEGA_X] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_MEWTWO_MEGA_Y] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_AMPHAROS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_STEELIX_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SCIZOR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_HERACROSS_MEGA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_HOUNDOOM_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TYRANITAR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SCEPTILE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_BLAZIKEN_MEGA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SWAMPERT_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GARDEVOIR_MEGA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_SABLEYE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 13, - }, - [SPECIES_MAWILE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_AGGRON_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_MEDICHAM_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_MANECTRIC_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SHARPEDO_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CAMERUPT_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 9, - }, - [SPECIES_ALTARIA_MEGA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_BANETTE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ABSOL_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_GLALIE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SALAMENCE_MEGA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_METAGROSS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_LATIAS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_LATIOS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_LOPUNNY_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_GARCHOMP_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_LUCARIO_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ABOMASNOW_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_GALLADE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_AUDINO_MEGA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_DIANCIE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - // Special Mega + Primals - [SPECIES_RAYQUAZA_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KYOGRE_PRIMAL] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 18, - }, - [SPECIES_GROUDON_PRIMAL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - // Alolan Forms - [SPECIES_RATTATA_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_RATICATE_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_RAICHU_ALOLAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_SANDSHREW_ALOLAN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_SANDSLASH_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_VULPIX_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_NINETALES_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_DIGLETT_ALOLAN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 14, - }, - [SPECIES_DUGTRIO_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 17, - }, - [SPECIES_MEOWTH_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_PERSIAN_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_GEODUDE_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 13, - }, - [SPECIES_GRAVELER_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_GOLEM_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 13, - }, - [SPECIES_GRIMER_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_MUK_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_EXEGGUTOR_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MAROWAK_ALOLAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - // Galarian Forms - [SPECIES_MEOWTH_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_PONYTA_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_RAPIDASH_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SLOWPOKE_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SLOWBRO_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_FARFETCHD_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_WEEZING_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MR_MIME_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_ARTICUNO_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ZAPDOS_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_MOLTRES_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_SLOWKING_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_CORSOLA_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_ZIGZAGOON_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 12, - }, - [SPECIES_LINOONE_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_DARUMAKA_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_DARMANITAN_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_YAMASK_GALARIAN] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_STUNFISK_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 24), - .y_offset = 23, - }, - // Hisuian Forms - [SPECIES_GROWLITHE_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_ARCANINE_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_VOLTORB_HISUIAN] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 10, - }, - [SPECIES_ELECTRODE_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 7, - }, - [SPECIES_TYPHLOSION_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 3, - }, - [SPECIES_QWILFISH_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_SNEASEL_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_SAMUROTT_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LILLIGANT_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_ZORUA_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_ZOROARK_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BRAVIARY_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 0, - }, - [SPECIES_SLIGGOO_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_GOODRA_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_AVALUGG_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 17, - }, - [SPECIES_DECIDUEYE_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Misc Forms - // Cosplay Pikachu - [SPECIES_PIKACHU_COSPLAY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_ROCK_STAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_BELLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_POP_STAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_PH_D] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_LIBRE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - // Cap Pikachu - [SPECIES_PIKACHU_ORIGINAL_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_HOENN_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_SINNOH_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_UNOVA_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_KALOS_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_ALOLA_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_PARTNER_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PIKACHU_WORLD_CAP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - // Pichu - [SPECIES_PICHU_SPIKY_EARED] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, + [SPECIES_TURTWIG] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_GROTLE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_TORTERRA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_CHIMCHAR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MONFERNO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_INFERNAPE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PIPLUP] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_PRINPLUP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_EMPOLEON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_STARLY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_STARAVIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_STARAPTOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_BIDOOF] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_BIBAREL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_KRICKETOT] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_KRICKETUNE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_SHINX] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_LUXIO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_LUXRAY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BUDEW] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 11 }, + [SPECIES_ROSERADE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_CRANIDOS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_RAMPARDOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_SHIELDON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_BASTIODON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_BURMY] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 6 }, + [SPECIES_WORMADAM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_MOTHIM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_COMBEE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 22 }, + [SPECIES_VESPIQUEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PACHIRISU] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_BUIZEL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_FLOATZEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_CHERUBI] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_CHERRIM] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 9 }, + [SPECIES_SHELLOS] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 8 }, + [SPECIES_GASTRODON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_AMBIPOM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_DRIFLOON] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_DRIFBLIM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_BUNEARY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_LOPUNNY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_MISMAGIUS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_HONCHKROW] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_GLAMEOW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_PURUGLY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CHINGLING] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 13 }, + [SPECIES_STUNKY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_SKUNTANK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_BRONZOR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_BRONZONG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_BONSLY] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 6 }, + [SPECIES_MIME_JR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_HAPPINY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_CHATOT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SPIRITOMB] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_GIBLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_GABITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_GARCHOMP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MUNCHLAX] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_RIOLU] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 8 }, + [SPECIES_LUCARIO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HIPPOPOTAS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_HIPPOWDON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SKORUPI] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DRAPION] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_CROAGUNK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_TOXICROAK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_CARNIVINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_FINNEON] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_LUMINEON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_MANTYKE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SNOVER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ABOMASNOW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_WEAVILE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_MAGNEZONE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_LICKILICKY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_RHYPERIOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TANGROWTH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ELECTIVIRE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_MAGMORTAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TOGEKISS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_YANMEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_LEAFEON] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_GLACEON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 6 }, + [SPECIES_GLISCOR] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_MAMOSWINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_PORYGON_Z] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GALLADE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_PROBOPASS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_DUSKNOIR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_FROSLASS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ROTOM] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_UXIE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_MESPRIT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_AZELF] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DIALGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PALKIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_HEATRAN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_REGIGIGAS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_GIRATINA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_CRESSELIA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_PHIONE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_MANAPHY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_DARKRAI] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SHAYMIN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_ARCEUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_VICTINI] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 7 }, + [SPECIES_SNIVY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_SERVINE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 5 }, + [SPECIES_SERPERIOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_TEPIG] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_PIGNITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 9 }, + [SPECIES_EMBOAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_OSHAWOTT] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 14 }, + [SPECIES_DEWOTT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 5 }, + [SPECIES_SAMUROTT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_PATRAT] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_WATCHOG] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_LILLIPUP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_HERDIER] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 10 }, + [SPECIES_STOUTLAND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_PURRLOIN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_LIEPARD] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_PANSAGE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SIMISAGE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 6 }, + [SPECIES_PANSEAR] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 10 }, + [SPECIES_SIMISEAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_PANPOUR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SIMIPOUR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_MUNNA] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_MUSHARNA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 8 }, + [SPECIES_PIDOVE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_TRANQUILL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_UNFEZANT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BLITZLE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_ZEBSTRIKA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_ROGGENROLA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 13 }, + [SPECIES_BOLDORE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 16 }, + [SPECIES_GIGALITH] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_WOOBAT] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_SWOOBAT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_DRILBUR] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_EXCADRILL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 11 }, + [SPECIES_AUDINO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 9 }, + [SPECIES_TIMBURR] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_GURDURR] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CONKELDURR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 13 }, + [SPECIES_TYMPOLE] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_PALPITOAD] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_SEISMITOAD] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_THROH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_SAWK] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SEWADDLE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 13 }, + [SPECIES_SWADLOON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_LEAVANNY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_VENIPEDE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_WHIRLIPEDE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_SCOLIPEDE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_COTTONEE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 18 }, + [SPECIES_WHIMSICOTT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_PETILIL] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 9 }, + [SPECIES_LILLIGANT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_BASCULIN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 16 }, + [SPECIES_SANDILE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 18 }, + [SPECIES_KROKOROK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_KROOKODILE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DARUMAKA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 12 }, + [SPECIES_DARMANITAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MARACTUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_DWEBBLE] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 17 }, + [SPECIES_CRUSTLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_SCRAGGY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_SCRAFTY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 5 }, + [SPECIES_SIGILYPH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_YAMASK] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_COFAGRIGUS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_TIRTOUGA] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_CARRACOSTA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_ARCHEN] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_ARCHEOPS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_TRUBBISH] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 13 }, + [SPECIES_GARBODOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_ZORUA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ZOROARK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_MINCCINO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_CINCCINO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GOTHITA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_GOTHORITA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GOTHITELLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SOLOSIS] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 19 }, + [SPECIES_DUOSION] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 13 }, + [SPECIES_REUNICLUS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 13 }, + [SPECIES_DUCKLETT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_SWANNA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_VANILLITE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_VANILLISH] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_VANILLUXE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_DEERLING] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_SAWSBUCK] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 5 }, + [SPECIES_EMOLGA] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 16 }, + [SPECIES_KARRABLAST] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 14 }, + [SPECIES_ESCAVALIER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_FOONGUS] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_AMOONGUSS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_FRILLISH] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_JELLICENT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_ALOMOMOLA] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_JOLTIK] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 19 }, + [SPECIES_GALVANTULA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 18 }, + [SPECIES_FERROSEED] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_FERROTHORN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_KLINK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 17 }, + [SPECIES_KLANG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_KLINKLANG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_TYNAMO] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 21 }, + [SPECIES_EELEKTRIK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_EELEKTROSS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ELGYEM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 10 }, + [SPECIES_BEHEEYEM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LITWICK] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_LAMPENT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 12 }, + [SPECIES_CHANDELURE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_AXEW] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_FRAXURE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 13 }, + [SPECIES_HAXORUS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_CUBCHOO] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_BEARTIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_CRYOGONAL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_SHELMET] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 19 }, + [SPECIES_ACCELGOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_STUNFISK] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 22 }, + [SPECIES_MIENFOO] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_MIENSHAO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_DRUDDIGON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_GOLETT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_GOLURK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_PAWNIARD] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_BISHARP] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_BOUFFALANT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_RUFFLET] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_BRAVIARY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_VULLABY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 14 }, + [SPECIES_MANDIBUZZ] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_HEATMOR] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 21 }, + [SPECIES_DURANT] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 17 }, + [SPECIES_DEINO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 14 }, + [SPECIES_ZWEILOUS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_HYDREIGON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 11 }, + [SPECIES_LARVESTA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_VOLCARONA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_COBALION] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 6 }, + [SPECIES_TERRAKION] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_VIRIZION] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_TORNADUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_THUNDURUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_RESHIRAM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_ZEKROM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_LANDORUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KYUREM] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_KELDEO] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_MELOETTA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_GENESECT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_CHESPIN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 6 }, + [SPECIES_QUILLADIN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CHESNAUGHT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_FENNEKIN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_BRAIXEN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_DELPHOX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_FROAKIE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_FROGADIER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GRENINJA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_BUNNELBY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_DIGGERSBY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_FLETCHLING] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_FLETCHINDER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_TALONFLAME] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SCATTERBUG] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 12 }, + [SPECIES_SPEWPA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_VIVILLON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LITLEO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_PYROAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_FLABEBE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_FLOETTE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FLORGES] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_SKIDDO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_GOGOAT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_PANCHAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_PANGORO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_FURFROU] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ESPURR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_MEOWSTIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 9 }, + [SPECIES_HONEDGE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_DOUBLADE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_AEGISLASH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 9 }, + [SPECIES_SPRITZEE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_AROMATISSE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_SWIRLIX] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_SLURPUFF] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_INKAY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 9 }, + [SPECIES_MALAMAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_BINACLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_BARBARACLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SKRELP] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_DRAGALGE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CLAUNCHER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_CLAWITZER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_HELIOPTILE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_HELIOLISK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_TYRUNT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_TYRANTRUM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 11 }, + [SPECIES_AMAURA] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 3 }, + [SPECIES_AURORUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SYLVEON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_HAWLUCHA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_DEDENNE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_CARBINK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_GOOMY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_SLIGGOO] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_GOODRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KLEFKI] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 8 }, + [SPECIES_PHANTUMP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_TREVENANT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_PUMPKABOO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 13 }, + [SPECIES_GOURGEIST] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_BERGMITE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 13 }, + [SPECIES_AVALUGG] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_NOIBAT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 7 }, + [SPECIES_NOIVERN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_XERNEAS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_YVELTAL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_ZYGARDE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_DIANCIE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_HOOPA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_VOLCANION] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ROWLET] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_DARTRIX] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_DECIDUEYE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_LITTEN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_TORRACAT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_INCINEROAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_POPPLIO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_BRIONNE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_PRIMARINA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PIKIPEK] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_TRUMBEAK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_TOUCANNON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_YUNGOOS] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_GUMSHOOS] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_GRUBBIN] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_CHARJABUG] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_VIKAVOLT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_CRABRAWLER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CRABOMINABLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ORICORIO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CUTIEFLY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 15 }, + [SPECIES_RIBOMBEE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_ROCKRUFF] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_LYCANROC] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_WISHIWASHI] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 18 }, + [SPECIES_MAREANIE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 15 }, + [SPECIES_TOXAPEX] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_MUDBRAY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_MUDSDALE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_DEWPIDER] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_ARAQUANID] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_FOMANTIS] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 5 }, + [SPECIES_LURANTIS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_MORELULL] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_SHIINOTIC] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_SALANDIT] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_SALAZZLE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_STUFFUL] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_BEWEAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_BOUNSWEET] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_STEENEE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_TSAREENA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_COMFEY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 11 }, + [SPECIES_ORANGURU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_PASSIMIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_WIMPOD] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_GOLISOPOD] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_SANDYGAST] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_PALOSSAND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_PYUKUMUKU] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_TYPE_NULL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_SILVALLY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_MINIOR] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_KOMALA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_TURTONATOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_TOGEDEMARU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 13 }, + [SPECIES_MIMIKYU] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_BRUXISH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 14 }, + [SPECIES_DRAMPA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_DHELMISE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_JANGMO_O] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_HAKAMO_O] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 5 }, + [SPECIES_KOMMO_O] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_TAPU_KOKO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_TAPU_LELE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_TAPU_BULU] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_TAPU_FINI] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_COSMOG] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_COSMOEM] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 17 }, + [SPECIES_SOLGALEO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_LUNALA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_NIHILEGO] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_BUZZWOLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 14 }, + [SPECIES_PHEROMOSA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_XURKITREE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CELESTEELA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KARTANA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_GUZZLORD] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_NECROZMA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_MAGEARNA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MARSHADOW] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 6 }, + [SPECIES_POIPOLE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_NAGANADEL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_STAKATAKA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_BLACEPHALON] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_ZERAORA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 11 }, + [SPECIES_MELTAN] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_MELMETAL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_GROOKEY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_THWACKEY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_RILLABOOM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SCORBUNNY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_RABOOT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_CINDERACE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_SOBBLE] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 8 }, + [SPECIES_DRIZZILE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_INTELEON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_SKWOVET] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GREEDENT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ROOKIDEE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 17 }, + [SPECIES_CORVISQUIRE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_CORVIKNIGHT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_BLIPBUG] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_DOTTLER] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 17 }, + [SPECIES_ORBEETLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_NICKIT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_THIEVUL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_GOSSIFLEUR] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 15 }, + [SPECIES_ELDEGOSS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_WOOLOO] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 18 }, + [SPECIES_DUBWOOL] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_CHEWTLE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_DREDNAW] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 18 }, + [SPECIES_YAMPER] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 13 }, + [SPECIES_BOLTUND] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ROLYCOLY] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 17 }, + [SPECIES_CARKOL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_COALOSSAL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_APPLIN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 15 }, + [SPECIES_FLAPPLE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_APPLETUN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 11 }, + [SPECIES_SILICOBRA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_SANDACONDA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_CRAMORANT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_ARROKUDA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_BARRASKEWDA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_TOXEL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_TOXTRICITY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SIZZLIPEDE] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_CENTISKORCH] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_CLOBBOPUS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_GRAPPLOCT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_SINISTEA] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_POLTEAGEIST] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_HATENNA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_HATTREM] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_HATTERENE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_IMPIDIMP] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_MORGREM] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_GRIMMSNARL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_OBSTAGOON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PERRSERKER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CURSOLA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SIRFETCHD] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_MR_RIME] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_RUNERIGUS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_MILCERY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 16 }, + [SPECIES_ALCREMIE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_FALINKS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_PINCURCHIN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_SNOM] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_FROSMOTH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_STONJOURNER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_EISCUE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_INDEEDEE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_MORPEKO] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_CUFANT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_COPPERAJAH] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_DRACOZOLT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_ARCTOZOLT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_DRACOVISH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_ARCTOVISH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_DURALUDON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_DREEPY] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_DRAKLOAK] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_DRAGAPULT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ZACIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ZAMAZENTA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ETERNATUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_KUBFU] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_URSHIFU] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ZARUDE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_REGIELEKI] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_REGIDRAGO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GLASTRIER] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 5 }, + [SPECIES_SPECTRIER] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_CALYREX] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_WYRDEER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KLEAVOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_URSALUNA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_BASCULEGION] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNEASLER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_OVERQWIL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ENAMORUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VENUSAUR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 8 }, + [SPECIES_CHARIZARD_MEGA_X] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CHARIZARD_MEGA_Y] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BLASTOISE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BEEDRILL_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_PIDGEOT_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_ALAKAZAM_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SLOWBRO_MEGA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_GENGAR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KANGASKHAN_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_PINSIR_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GYARADOS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_AERODACTYL_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 8 }, + [SPECIES_MEWTWO_MEGA_X] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_MEWTWO_MEGA_Y] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_AMPHAROS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_STEELIX_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SCIZOR_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_HERACROSS_MEGA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_HOUNDOOM_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TYRANITAR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SCEPTILE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_BLAZIKEN_MEGA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SWAMPERT_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GARDEVOIR_MEGA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_SABLEYE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 13 }, + [SPECIES_MAWILE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_AGGRON_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_MEDICHAM_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_MANECTRIC_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SHARPEDO_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CAMERUPT_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 9 }, + [SPECIES_ALTARIA_MEGA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_BANETTE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ABSOL_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_GLALIE_MEGA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SALAMENCE_MEGA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_METAGROSS_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_LATIAS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_LATIOS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_LOPUNNY_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_GARCHOMP_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_LUCARIO_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ABOMASNOW_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_GALLADE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_AUDINO_MEGA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_DIANCIE_MEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_RAYQUAZA_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KYOGRE_PRIMAL] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 18 }, + [SPECIES_GROUDON_PRIMAL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_RATTATA_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_RATICATE_ALOLAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_RAICHU_ALOLAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_SANDSHREW_ALOLAN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_SANDSLASH_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_VULPIX_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_NINETALES_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_DIGLETT_ALOLAN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 14 }, + [SPECIES_DUGTRIO_ALOLAN] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 17 }, + [SPECIES_MEOWTH_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_PERSIAN_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_GEODUDE_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 13 }, + [SPECIES_GRAVELER_ALOLAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_GOLEM_ALOLAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 13 }, + [SPECIES_GRIMER_ALOLAN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_MUK_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_EXEGGUTOR_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MAROWAK_ALOLAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MEOWTH_GALARIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_PONYTA_GALARIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_RAPIDASH_GALARIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SLOWPOKE_GALARIAN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SLOWBRO_GALARIAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_FARFETCHD_GALARIAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_WEEZING_GALARIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MR_MIME_GALARIAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_ARTICUNO_GALARIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ZAPDOS_GALARIAN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_MOLTRES_GALARIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_SLOWKING_GALARIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_CORSOLA_GALARIAN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_ZIGZAGOON_GALARIAN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 12 }, + [SPECIES_LINOONE_GALARIAN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_DARUMAKA_GALARIAN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_DARMANITAN_GALARIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_YAMASK_GALARIAN] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_STUNFISK_GALARIAN] = { .size = MON_COORDS_SIZE(64, 24), .y_offset = 23 }, + [SPECIES_GROWLITHE_HISUIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_ARCANINE_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_VOLTORB_HISUIAN] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 10 }, + [SPECIES_ELECTRODE_HISUIAN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 7 }, + [SPECIES_TYPHLOSION_HISUIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 3 }, + [SPECIES_QWILFISH_HISUIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_SNEASEL_HISUIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_SAMUROTT_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LILLIGANT_HISUIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_ZORUA_HISUIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_ZOROARK_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BRAVIARY_HISUIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 0 }, + [SPECIES_SLIGGOO_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_GOODRA_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_AVALUGG_HISUIAN] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 17 }, + [SPECIES_DECIDUEYE_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PIKACHU_COSPLAY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_ROCK_STAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_BELLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_POP_STAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_PH_D] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_LIBRE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_ORIGINAL_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_HOENN_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_SINNOH_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_UNOVA_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_KALOS_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_ALOLA_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_PARTNER_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PIKACHU_WORLD_CAP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PICHU_SPIKY_EARED] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, #endif - // Unown - [SPECIES_UNOWN_B] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_UNOWN_C] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_UNOWN_D] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_UNOWN_E] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_F] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_G] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 5, - }, - [SPECIES_UNOWN_H] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_UNOWN_I] = - { - .size = MON_COORDS_SIZE(24, 56), - .y_offset = 7, - }, - [SPECIES_UNOWN_J] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_UNOWN_K] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_UNOWN_L] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_M] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_N] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_O] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_UNOWN_P] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_Q] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_UNOWN_R] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_UNOWN_S] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 4, - }, - [SPECIES_UNOWN_T] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_U] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_V] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_UNOWN_W] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_UNOWN_X] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_UNOWN_Y] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_Z] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_UNOWN_EMARK] = - { - .size = MON_COORDS_SIZE(24, 56), - .y_offset = 6, - }, - [SPECIES_UNOWN_QMARK] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 6, - }, - // Castform - [SPECIES_CASTFORM_SUNNY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_CASTFORM_RAINY] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - [SPECIES_CASTFORM_SNOWY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - // Deoxys - [SPECIES_DEOXYS_ATTACK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_DEOXYS_DEFENSE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_DEOXYS_SPEED] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, + [SPECIES_UNOWN_B] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_UNOWN_C] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_UNOWN_D] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_UNOWN_E] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_UNOWN_F] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_UNOWN_G] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 5 }, + [SPECIES_UNOWN_H] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_UNOWN_I] = { .size = MON_COORDS_SIZE(24, 56), .y_offset = 7 }, + [SPECIES_UNOWN_J] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_UNOWN_K] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_UNOWN_L] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_M] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_UNOWN_N] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_UNOWN_O] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_UNOWN_P] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_Q] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_UNOWN_R] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_UNOWN_S] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 4 }, + [SPECIES_UNOWN_T] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_UNOWN_U] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_UNOWN_V] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_UNOWN_W] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_UNOWN_X] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_UNOWN_Y] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_Z] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_UNOWN_EMARK] = { .size = MON_COORDS_SIZE(24, 56), .y_offset = 6 }, + [SPECIES_UNOWN_QMARK] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 6 }, + [SPECIES_CASTFORM_SUNNY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_CASTFORM_RAINY] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_CASTFORM_SNOWY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_DEOXYS_ATTACK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_DEOXYS_DEFENSE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_DEOXYS_SPEED] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, #if P_NEW_POKEMON == TRUE - // Burmy - [SPECIES_BURMY_SANDY_CLOAK] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 7, - }, - [SPECIES_BURMY_TRASH_CLOAK] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - // Wormadam - [SPECIES_WORMADAM_SANDY_CLOAK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_WORMADAM_TRASH_CLOAK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - // Cherrim - [SPECIES_CHERRIM_SUNSHINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - // Shellos - [SPECIES_SHELLOS_EAST_SEA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - // Gastrodon - [SPECIES_GASTRODON_EAST_SEA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - // Rotom - [SPECIES_ROTOM_HEAT] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_ROTOM_WASH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_ROTOM_FROST] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ROTOM_FAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_ROTOM_MOW] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - // Origin Forme - [SPECIES_DIALGA_ORIGIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PALKIA_ORIGIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_GIRATINA_ORIGIN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - // Shaymin - [SPECIES_SHAYMIN_SKY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - // Arceus - [SPECIES_ARCEUS_FIGHTING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_FLYING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_POISON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_GROUND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_ROCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_BUG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_GHOST] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_STEEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_FIRE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_WATER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_GRASS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_ELECTRIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_PSYCHIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_ICE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_DRAGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_DARK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ARCEUS_FAIRY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Basculin - [SPECIES_BASCULIN_BLUE_STRIPED] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 16, - }, - [SPECIES_BASCULIN_WHITE_STRIPED] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 16, - }, - // Darmanitan - [SPECIES_DARMANITAN_ZEN_MODE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_DARMANITAN_ZEN_MODE_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - // Deerling - [SPECIES_DEERLING_SUMMER] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_DEERLING_AUTUMN] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_DEERLING_WINTER] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - // Sawsbuck - [SPECIES_SAWSBUCK_SUMMER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_SAWSBUCK_AUTUMN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_SAWSBUCK_WINTER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 5, - }, - // Therian Forms - [SPECIES_TORNADUS_THERIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_THUNDURUS_THERIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_LANDORUS_THERIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ENAMORUS_THERIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Kyurem - [SPECIES_KYUREM_WHITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KYUREM_BLACK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Keldeo - [SPECIES_KELDEO_RESOLUTE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Meloetta - [SPECIES_MELOETTA_PIROUETTE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - // Genesect - [SPECIES_GENESECT_DOUSE_DRIVE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_GENESECT_SHOCK_DRIVE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_GENESECT_BURN_DRIVE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_GENESECT_CHILL_DRIVE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - // Greninja - [SPECIES_GRENINJA_BATTLE_BOND] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_GRENINJA_ASH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - // Vivillon - [SPECIES_VIVILLON_POLAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_TUNDRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_CONTINENTAL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_GARDEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_ELEGANT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MEADOW] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MODERN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MARINE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_ARCHIPELAGO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_HIGH_PLAINS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_SANDSTORM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_RIVER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MONSOON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_SAVANNA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_SUN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_OCEAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_JUNGLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_FANCY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_POKE_BALL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Flabébé - [SPECIES_FLABEBE_YELLOW_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_FLABEBE_ORANGE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_FLABEBE_BLUE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_FLABEBE_WHITE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - // Floette - [SPECIES_FLOETTE_YELLOW_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_FLOETTE_ORANGE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_FLOETTE_BLUE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_FLOETTE_WHITE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_FLOETTE_ETERNAL_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - // Florges - [SPECIES_FLORGES_YELLOW_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_FLORGES_ORANGE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_FLORGES_BLUE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_FLORGES_WHITE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - // Furfrou - [SPECIES_FURFROU_HEART_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_STAR_TRIM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_DIAMOND_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_DEBUTANTE_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_MATRON_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_DANDY_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_LA_REINE_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_KABUKI_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_FURFROU_PHARAOH_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - // Meowstic - [SPECIES_MEOWSTIC_FEMALE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 9, - }, - // Aegislash - [SPECIES_AEGISLASH_BLADE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 9, - }, - // Pumpkaboo - [SPECIES_PUMPKABOO_SMALL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 14, - }, - [SPECIES_PUMPKABOO_LARGE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 13, - }, - [SPECIES_PUMPKABOO_SUPER] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 12, - }, - // Gourgeist - [SPECIES_GOURGEIST_SMALL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_GOURGEIST_LARGE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_GOURGEIST_SUPER] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - // Xerneas - [SPECIES_XERNEAS_ACTIVE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Zygarde - [SPECIES_ZYGARDE_10] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_ZYGARDE_COMPLETE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Hoopa - [SPECIES_HOOPA_UNBOUND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Oricorio - [SPECIES_ORICORIO_POM_POM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ORICORIO_PAU] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ORICORIO_SENSU] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Rockruff - [SPECIES_ROCKRUFF_OWN_TEMPO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - // Lycanroc - [SPECIES_LYCANROC_MIDNIGHT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_LYCANROC_DUSK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - // Wishiwashi - [SPECIES_WISHIWASHI_SCHOOL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - // Silvally - [SPECIES_SILVALLY_FIGHTING] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_FLYING] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_POISON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_GROUND] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_ROCK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_BUG] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_GHOST] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_STEEL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_FIRE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_WATER] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_GRASS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_ELECTRIC] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_PSYCHIC] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_ICE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_DRAGON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_DARK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_FAIRY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - // Minior - [SPECIES_MINIOR_METEOR_ORANGE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_YELLOW] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_GREEN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_BLUE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_INDIGO] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_VIOLET] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_RED] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_MINIOR_CORE_ORANGE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_MINIOR_CORE_YELLOW] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_MINIOR_CORE_GREEN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_MINIOR_CORE_BLUE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_MINIOR_CORE_INDIGO] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_MINIOR_CORE_VIOLET] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - // Mimikyu - [SPECIES_MIMIKYU_BUSTED] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 15, - }, - // Necrozma - [SPECIES_NECROZMA_DUSK_MANE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_NECROZMA_DAWN_WINGS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_NECROZMA_ULTRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Magearna - [SPECIES_MAGEARNA_ORIGINAL_COLOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - // Cramorant - [SPECIES_CRAMORANT_GULPING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CRAMORANT_GORGING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - // Toxtricity - [SPECIES_TOXTRICITY_LOW_KEY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - // Sinistea - [SPECIES_SINISTEA_ANTIQUE] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - // Polteageist - [SPECIES_POLTEAGEIST_ANTIQUE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - // Alcremie - [SPECIES_ALCREMIE_RUBY_CREAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_ALCREMIE_MATCHA_CREAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_ALCREMIE_MINT_CREAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_ALCREMIE_LEMON_CREAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_ALCREMIE_SALTED_CREAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_ALCREMIE_RUBY_SWIRL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_ALCREMIE_CARAMEL_SWIRL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_ALCREMIE_RAINBOW_SWIRL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - // Eiscue - [SPECIES_EISCUE_NOICE_FACE] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - // Indeedee - [SPECIES_INDEEDEE_FEMALE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - // Morpeko - [SPECIES_MORPEKO_HANGRY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - // Zacian - [SPECIES_ZACIAN_CROWNED_SWORD] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - // Zamazenta - [SPECIES_ZAMAZENTA_CROWNED_SHIELD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Eternatus - [SPECIES_ETERNATUS_ETERNAMAX] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - // Urshifu - [SPECIES_URSHIFU_RAPID_STRIKE_STYLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - // Zarude - [SPECIES_ZARUDE_DADA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - // Calyrex - [SPECIES_CALYREX_ICE_RIDER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_CALYREX_SHADOW_RIDER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, + + [SPECIES_BURMY_SANDY_CLOAK] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 7 }, + [SPECIES_BURMY_TRASH_CLOAK] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_WORMADAM_SANDY_CLOAK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_WORMADAM_TRASH_CLOAK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CHERRIM_SUNSHINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SHELLOS_EAST_SEA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_GASTRODON_EAST_SEA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_ROTOM_HEAT] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_ROTOM_WASH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_ROTOM_FROST] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ROTOM_FAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_ROTOM_MOW] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_DIALGA_ORIGIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PALKIA_ORIGIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_GIRATINA_ORIGIN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SHAYMIN_SKY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_ARCEUS_FIGHTING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_FLYING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_POISON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_GROUND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_ROCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_BUG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_GHOST] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_STEEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_FIRE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_WATER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_GRASS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_ELECTRIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_PSYCHIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_ICE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_DRAGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_DARK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ARCEUS_FAIRY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_BASCULIN_BLUE_STRIPED] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 16 }, + [SPECIES_BASCULIN_WHITE_STRIPED] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 16 }, + [SPECIES_DARMANITAN_ZEN_MODE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_DARMANITAN_ZEN_MODE_GALARIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_DEERLING_SUMMER] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_DEERLING_AUTUMN] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_DEERLING_WINTER] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_SAWSBUCK_SUMMER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_SAWSBUCK_AUTUMN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_SAWSBUCK_WINTER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 5 }, + [SPECIES_TORNADUS_THERIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_THUNDURUS_THERIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_LANDORUS_THERIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ENAMORUS_THERIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KYUREM_WHITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KYUREM_BLACK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_KELDEO_RESOLUTE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_MELOETTA_PIROUETTE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_GENESECT_DOUSE_DRIVE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_GENESECT_SHOCK_DRIVE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_GENESECT_BURN_DRIVE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_GENESECT_CHILL_DRIVE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_GRENINJA_BATTLE_BOND] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_GRENINJA_ASH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_VIVILLON_POLAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_TUNDRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_CONTINENTAL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_GARDEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_ELEGANT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MEADOW] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MODERN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MARINE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_ARCHIPELAGO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_HIGH_PLAINS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_SANDSTORM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_RIVER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MONSOON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_SAVANNA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_SUN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_OCEAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_JUNGLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_FANCY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_POKE_BALL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FLABEBE_YELLOW_FLOWER] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_FLABEBE_ORANGE_FLOWER] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_FLABEBE_BLUE_FLOWER] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_FLABEBE_WHITE_FLOWER] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_FLOETTE_YELLOW_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FLOETTE_ORANGE_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FLOETTE_BLUE_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FLOETTE_WHITE_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FLOETTE_ETERNAL_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FLORGES_YELLOW_FLOWER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_FLORGES_ORANGE_FLOWER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_FLORGES_BLUE_FLOWER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_FLORGES_WHITE_FLOWER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_FURFROU_HEART_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_FURFROU_STAR_TRIM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_FURFROU_DIAMOND_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_FURFROU_DEBUTANTE_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_FURFROU_MATRON_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_FURFROU_DANDY_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_FURFROU_LA_REINE_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_FURFROU_KABUKI_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_FURFROU_PHARAOH_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_MEOWSTIC_FEMALE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 9 }, + [SPECIES_AEGISLASH_BLADE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 9 }, + [SPECIES_PUMPKABOO_SMALL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 14 }, + [SPECIES_PUMPKABOO_LARGE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 13 }, + [SPECIES_PUMPKABOO_SUPER] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 12 }, + [SPECIES_GOURGEIST_SMALL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_GOURGEIST_LARGE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_GOURGEIST_SUPER] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_XERNEAS_ACTIVE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ZYGARDE_10] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_ZYGARDE_COMPLETE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HOOPA_UNBOUND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ORICORIO_POM_POM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ORICORIO_PAU] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ORICORIO_SENSU] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ROCKRUFF_OWN_TEMPO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_LYCANROC_MIDNIGHT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_LYCANROC_DUSK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_WISHIWASHI_SCHOOL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SILVALLY_FIGHTING] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_FLYING] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_POISON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_GROUND] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_ROCK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_BUG] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_GHOST] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_STEEL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_FIRE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_WATER] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_GRASS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_ELECTRIC] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_PSYCHIC] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_ICE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_DRAGON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_DARK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_FAIRY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_MINIOR_METEOR_ORANGE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_YELLOW] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_GREEN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_BLUE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_INDIGO] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_VIOLET] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_RED] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_MINIOR_CORE_ORANGE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_MINIOR_CORE_YELLOW] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_MINIOR_CORE_GREEN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_MINIOR_CORE_BLUE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_MINIOR_CORE_INDIGO] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_MINIOR_CORE_VIOLET] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_MIMIKYU_BUSTED] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 15 }, + [SPECIES_NECROZMA_DUSK_MANE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_NECROZMA_DAWN_WINGS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_NECROZMA_ULTRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_MAGEARNA_ORIGINAL_COLOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_CRAMORANT_GULPING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CRAMORANT_GORGING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_TOXTRICITY_LOW_KEY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_SINISTEA_ANTIQUE] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_POLTEAGEIST_ANTIQUE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_ALCREMIE_RUBY_CREAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_ALCREMIE_MATCHA_CREAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_ALCREMIE_MINT_CREAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_ALCREMIE_LEMON_CREAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_ALCREMIE_SALTED_CREAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_ALCREMIE_RUBY_SWIRL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_ALCREMIE_CARAMEL_SWIRL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_ALCREMIE_RAINBOW_SWIRL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_EISCUE_NOICE_FACE] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_INDEEDEE_FEMALE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_MORPEKO_HANGRY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_ZACIAN_CROWNED_SWORD] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ZAMAZENTA_CROWNED_SHIELD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ETERNATUS_ETERNAMAX] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_URSHIFU_RAPID_STRIKE_STYLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ZARUDE_DADA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CALYREX_ICE_RIDER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_CALYREX_SHADOW_RIDER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, #endif - // Egg - [SPECIES_EGG] = - { - .size = MON_COORDS_SIZE(24, 24), - .y_offset = 20, - }, + [SPECIES_EGG] = { .size = MON_COORDS_SIZE(24, 24), .y_offset = 20 }, }; diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h index 4c41a50e1b0c..1ec35b4deed5 100644 --- a/src/data/pokemon_graphics/front_pic_coordinates.h +++ b/src/data/pokemon_graphics/front_pic_coordinates.h @@ -4,6250 +4,1239 @@ // .y_offset is the number of pixels between the drawn pixel area and the bottom edge. const struct MonCoords gMonFrontPicCoords[] = { - [SPECIES_NONE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_BULBASAUR] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_IVYSAUR] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_VENUSAUR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CHARMANDER] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_CHARMELEON] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_CHARIZARD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SQUIRTLE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_WARTORTLE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_BLASTOISE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CATERPIE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_METAPOD] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_BUTTERFREE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_WEEDLE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_KAKUNA] = - { - .size = MON_COORDS_SIZE(24, 48), - .y_offset = 11, - }, - [SPECIES_BEEDRILL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_PIDGEY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_PIDGEOTTO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_PIDGEOT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_RATTATA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_RATICATE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SPEAROW] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_FEAROW] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_EKANS] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_ARBOK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PIKACHU] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_RAICHU] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SANDSHREW] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SANDSLASH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_NIDORAN_F] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_NIDORINA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_NIDOQUEEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_NIDORAN_M] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_NIDORINO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_NIDOKING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_CLEFAIRY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_CLEFABLE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_VULPIX] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_NINETALES] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_JIGGLYPUFF] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_WIGGLYTUFF] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 4, - }, - [SPECIES_ZUBAT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 16, - }, - [SPECIES_GOLBAT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ODDISH] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_GLOOM] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_VILEPLUME] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_PARAS] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_PARASECT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_VENONAT] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 8, - }, - [SPECIES_VENOMOTH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_DIGLETT] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_DUGTRIO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_MEOWTH] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_PERSIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PSYDUCK] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_GOLDUCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MANKEY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_PRIMEAPE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GROWLITHE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_ARCANINE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_POLIWAG] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_POLIWHIRL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_POLIWRATH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ABRA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_KADABRA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ALAKAZAM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MACHOP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_MACHOKE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_MACHAMP] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BELLSPROUT] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_WEEPINBELL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_VICTREEBEL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TENTACOOL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_TENTACRUEL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_GEODUDE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 19, - }, - [SPECIES_GRAVELER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_GOLEM] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_PONYTA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_RAPIDASH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SLOWPOKE] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_SLOWBRO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_MAGNEMITE] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 20, - }, - [SPECIES_MAGNETON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_FARFETCHD] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_DODUO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_DODRIO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SEEL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_DEWGONG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_GRIMER] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_MUK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SHELLDER] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_CLOYSTER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_GASTLY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 13, - }, - [SPECIES_HAUNTER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 13, - }, - [SPECIES_GENGAR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_ONIX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_DROWZEE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_HYPNO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_KRABBY] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 14, - }, - [SPECIES_KINGLER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_VOLTORB] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 11, - }, - [SPECIES_ELECTRODE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_EXEGGCUTE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_EXEGGUTOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CUBONE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_MAROWAK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 8, - }, - [SPECIES_HITMONLEE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_HITMONCHAN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_LICKITUNG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_KOFFING] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_WEEZING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_RHYHORN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_RHYDON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_CHANSEY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_TANGELA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_KANGASKHAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_HORSEA] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_SEADRA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GOLDEEN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_SEAKING] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_STARYU] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_STARMIE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_MR_MIME] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_SCYTHER] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_JYNX] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_ELECTABUZZ] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_MAGMAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PINSIR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_TAUROS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_MAGIKARP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_GYARADOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_LAPRAS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_DITTO] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_EEVEE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_VAPOREON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_JOLTEON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_FLAREON] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 11, - }, - [SPECIES_PORYGON] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_OMANYTE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_OMASTAR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_KABUTO] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_KABUTOPS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_AERODACTYL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_SNORLAX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_ARTICUNO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_ZAPDOS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MOLTRES] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_DRATINI] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_DRAGONAIR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_DRAGONITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MEWTWO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MEW] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_CHIKORITA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_BAYLEEF] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_MEGANIUM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_CYNDAQUIL] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_QUILAVA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_TYPHLOSION] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_TOTODILE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_CROCONAW] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_FERALIGATR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SENTRET] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 2, - }, - [SPECIES_FURRET] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_HOOTHOOT] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_NOCTOWL] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 2, - }, - [SPECIES_LEDYBA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_LEDIAN] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_SPINARAK] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - [SPECIES_ARIADOS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_CROBAT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_CHINCHOU] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_LANTURN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_PICHU] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_CLEFFA] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 18, - }, - [SPECIES_IGGLYBUFF] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_TOGEPI] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 16, - }, - [SPECIES_TOGETIC] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 8, - }, - [SPECIES_NATU] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_XATU] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 5, - }, - [SPECIES_MAREEP] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_FLAAFFY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_AMPHAROS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_BELLOSSOM] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_MARILL] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_AZUMARILL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 6, - }, - [SPECIES_SUDOWOODO] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_POLITOED] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_HOPPIP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 14, - }, - [SPECIES_SKIPLOOM] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_JUMPLUFF] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_AIPOM] = - { - .size = MON_COORDS_SIZE(32, 64), - .y_offset = 1, - }, - [SPECIES_SUNKERN] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 17, - }, - [SPECIES_SUNFLORA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_YANMA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 14, - }, - [SPECIES_WOOPER] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_QUAGSIRE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ESPEON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_UMBREON] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_MURKROW] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_SLOWKING] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_MISDREAVUS] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 13, - }, - [SPECIES_UNOWN] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 15, - }, - [SPECIES_WOBBUFFET] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_GIRAFARIG] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_PINECO] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_FORRETRESS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_DUNSPARCE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_GLIGAR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_STEELIX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNUBBULL] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_GRANBULL] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_QWILFISH] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_SCIZOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SHUCKLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_HERACROSS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SNEASEL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_TEDDIURSA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_URSARING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SLUGMA] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 12, - }, - [SPECIES_MAGCARGO] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 6, - }, - [SPECIES_SWINUB] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 18, - }, - [SPECIES_PILOSWINE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_CORSOLA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_REMORAID] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_OCTILLERY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_DELIBIRD] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_MANTINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_SKARMORY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_HOUNDOUR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_HOUNDOOM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KINGDRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PHANPY] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_DONPHAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_PORYGON2] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_STANTLER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_SMEARGLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TYROGUE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_HITMONTOP] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SMOOCHUM] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_ELEKID] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_MAGBY] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - [SPECIES_MILTANK] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_BLISSEY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_RAIKOU] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_ENTEI] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SUICUNE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_LARVITAR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_PUPITAR] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_TYRANITAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LUGIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HO_OH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CELEBI] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_TREECKO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_GROVYLE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SCEPTILE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TORCHIC] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 12, - }, - [SPECIES_COMBUSKEN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_BLAZIKEN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_MUDKIP] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_MARSHTOMP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_SWAMPERT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_POOCHYENA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_MIGHTYENA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ZIGZAGOON] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_LINOONE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_WURMPLE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_SILCOON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_BEAUTIFLY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 9, - }, - [SPECIES_CASCOON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_DUSTOX] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 12, - }, - [SPECIES_LOTAD] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_LOMBRE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_LUDICOLO] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SEEDOT] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_NUZLEAF] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_SHIFTRY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_NINCADA] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 16, - }, - [SPECIES_NINJASK] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_SHEDINJA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_TAILLOW] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SWELLOW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SHROOMISH] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_BRELOOM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_SPINDA] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_WINGULL] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_PELIPPER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SURSKIT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_MASQUERAIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_WAILMER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_WAILORD] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_SKITTY] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_DELCATTY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_KECLEON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_BALTOY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 11, - }, - [SPECIES_CLAYDOL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_NOSEPASS] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_TORKOAL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SABLEYE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_BARBOACH] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 11, - }, - [SPECIES_WHISCASH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_LUVDISC] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 11, - }, - [SPECIES_CORPHISH] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_CRAWDAUNT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_FEEBAS] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_MILOTIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_CARVANHA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_SHARPEDO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TRAPINCH] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_VIBRAVA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_FLYGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_MAKUHITA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_HARIYAMA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ELECTRIKE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MANECTRIC] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_NUMEL] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_CAMERUPT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SPHEAL] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_SEALEO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_WALREIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CACNEA] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_CACTURNE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNORUNT] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_GLALIE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_LUNATONE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SOLROCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_AZURILL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SPOINK] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_GRUMPIG] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_PLUSLE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_MINUN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_MAWILE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_MEDITITE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_MEDICHAM] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - [SPECIES_SWABLU] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_ALTARIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_WYNAUT] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_DUSKULL] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_DUSCLOPS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ROSELIA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_SLAKOTH] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_VIGOROTH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_SLAKING] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GULPIN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 15, - }, - [SPECIES_SWALOT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_TROPIUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_WHISMUR] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_LOUDRED] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_EXPLOUD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CLAMPERL] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_HUNTAIL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_GOREBYSS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ABSOL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_SHUPPET] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_BANETTE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_SEVIPER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ZANGOOSE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_RELICANTH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 10, - }, - [SPECIES_ARON] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_LAIRON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_AGGRON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CASTFORM] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 17, - }, - [SPECIES_VOLBEAT] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_ILLUMISE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_LILEEP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_CRADILY] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_ANORITH] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_ARMALDO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_RALTS] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 12, - }, - [SPECIES_KIRLIA] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 6, - }, - [SPECIES_GARDEVOIR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BAGON] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_SHELGON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SALAMENCE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_BELDUM] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_METANG] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_METAGROSS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_REGIROCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_REGICE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_REGISTEEL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_KYOGRE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_GROUDON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_RAYQUAZA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LATIAS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_LATIOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_JIRACHI] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 13, - }, - [SPECIES_DEOXYS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CHIMECHO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, -#if P_NEW_POKEMON == TRUE - [SPECIES_TURTWIG] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_GROTLE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_TORTERRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CHIMCHAR] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_MONFERNO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_INFERNAPE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PIPLUP] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 14, - }, - [SPECIES_PRINPLUP] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_EMPOLEON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_STARLY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_STARAVIA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_STARAPTOR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_BIDOOF] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_BIBAREL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_KRICKETOT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_KRICKETUNE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_SHINX] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_LUXIO] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_LUXRAY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_BUDEW] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_ROSERADE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_CRANIDOS] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_RAMPARDOS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SHIELDON] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_BASTIODON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_BURMY] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 13, - }, - [SPECIES_WORMADAM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 10, - }, - [SPECIES_MOTHIM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 12, - }, - [SPECIES_COMBEE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 16, - }, - [SPECIES_VESPIQUEN] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_PACHIRISU] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 12, - }, - [SPECIES_BUIZEL] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_FLOATZEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CHERUBI] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_CHERRIM] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 8, - }, - [SPECIES_SHELLOS] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_GASTRODON] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_AMBIPOM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_DRIFLOON] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 7, - }, - [SPECIES_DRIFBLIM] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_BUNEARY] = - { - .size = MON_COORDS_SIZE(32, 64), - .y_offset = 9, - }, - [SPECIES_LOPUNNY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_MISMAGIUS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_HONCHKROW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_GLAMEOW] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_PURUGLY] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_CHINGLING] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_STUNKY] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 13, - }, - [SPECIES_SKUNTANK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_BRONZOR] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_BRONZONG] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_BONSLY] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_MIME_JR] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 9, - }, - [SPECIES_HAPPINY] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 12, - }, - [SPECIES_CHATOT] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_SPIRITOMB] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_GIBLE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_GABITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_GARCHOMP] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MUNCHLAX] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_RIOLU] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_LUCARIO] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_HIPPOPOTAS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_HIPPOWDON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_SKORUPI] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_DRAPION] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_CROAGUNK] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_TOXICROAK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_CARNIVINE] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_FINNEON] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_LUMINEON] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_MANTYKE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_SNOVER] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_ABOMASNOW] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_WEAVILE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_MAGNEZONE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_LICKILICKY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_RHYPERIOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_TANGROWTH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_ELECTIVIRE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MAGMORTAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TOGEKISS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_YANMEGA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_LEAFEON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_GLACEON] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 10, - }, - [SPECIES_GLISCOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_MAMOSWINE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_PORYGON_Z] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 6, - }, - [SPECIES_GALLADE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_PROBOPASS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_DUSKNOIR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_FROSLASS] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_ROTOM] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_UXIE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_MESPRIT] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_AZELF] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_DIALGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PALKIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HEATRAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_REGIGIGAS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_GIRATINA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CRESSELIA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_PHIONE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 8, - }, - [SPECIES_MANAPHY] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 10, - }, - [SPECIES_DARKRAI] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SHAYMIN] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 16, - }, - [SPECIES_ARCEUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VICTINI] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 10, - }, - [SPECIES_SNIVY] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_SERVINE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_SERPERIOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_TEPIG] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 15, - }, - [SPECIES_PIGNITE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_EMBOAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_OSHAWOTT] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_DEWOTT] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_SAMUROTT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PATRAT] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_WATCHOG] = - { - .size = MON_COORDS_SIZE(32, 64), - .y_offset = 2, - }, - [SPECIES_LILLIPUP] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_HERDIER] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_STOUTLAND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PURRLOIN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_LIEPARD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_PANSAGE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_SIMISAGE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PANSEAR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_SIMISEAR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_PANPOUR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_SIMIPOUR] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_MUNNA] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 14, - }, - [SPECIES_MUSHARNA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_PIDOVE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_TRANQUILL] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_UNFEZANT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_BLITZLE] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 5, - }, - [SPECIES_ZEBSTRIKA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ROGGENROLA] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 14, - }, - [SPECIES_BOLDORE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_GIGALITH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_WOOBAT] = - { - .size = MON_COORDS_SIZE(64, 32), - .y_offset = 16, - }, - [SPECIES_SWOOBAT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_DRILBUR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_EXCADRILL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_AUDINO] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_TIMBURR] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_GURDURR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CONKELDURR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_TYMPOLE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_PALPITOAD] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_SEISMITOAD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_THROH] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 10, - }, - [SPECIES_SAWK] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_SEWADDLE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_SWADLOON] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 12, - }, - [SPECIES_LEAVANNY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_VENIPEDE] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 16, - }, - [SPECIES_WHIRLIPEDE] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_SCOLIPEDE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_COTTONEE] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 18, - }, - [SPECIES_WHIMSICOTT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 6, - }, - [SPECIES_PETILIL] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 12, - }, - [SPECIES_LILLIGANT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_BASCULIN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_SANDILE] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 18, - }, - [SPECIES_KROKOROK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_KROOKODILE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_DARUMAKA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_DARMANITAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_MARACTUS] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_DWEBBLE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_CRUSTLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SCRAGGY] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_SCRAFTY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_SIGILYPH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_YAMASK] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_COFAGRIGUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TIRTOUGA] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 16, - }, - [SPECIES_CARRACOSTA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_ARCHEN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_ARCHEOPS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_TRUBBISH] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_GARBODOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_ZORUA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_ZOROARK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MINCCINO] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_CINCCINO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_GOTHITA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_GOTHORITA] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_GOTHITELLE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_SOLOSIS] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_DUOSION] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_REUNICLUS] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 11, - }, - [SPECIES_DUCKLETT] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_SWANNA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_VANILLITE] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_VANILLISH] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 5, - }, - [SPECIES_VANILLUXE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_DEERLING] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - [SPECIES_SAWSBUCK] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_EMOLGA] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 17, - }, - [SPECIES_KARRABLAST] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 13, - }, - [SPECIES_ESCAVALIER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_FOONGUS] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_AMOONGUSS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 8, - }, - [SPECIES_FRILLISH] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_JELLICENT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_ALOMOMOLA] = - { - .size = MON_COORDS_SIZE(32, 64), - .y_offset = 0, - }, - [SPECIES_JOLTIK] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_GALVANTULA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_FERROSEED] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_FERROTHORN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_KLINK] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_KLANG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_KLINKLANG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_TYNAMO] = - { - .size = MON_COORDS_SIZE(40, 24), - .y_offset = 22, - }, - [SPECIES_EELEKTRIK] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 6, - }, - [SPECIES_EELEKTROSS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_ELGYEM] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - [SPECIES_BEHEEYEM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_LITWICK] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_LAMPENT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_CHANDELURE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_AXEW] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_FRAXURE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_HAXORUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CUBCHOO] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_BEARTIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_CRYOGONAL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SHELMET] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_ACCELGOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_STUNFISK] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 14, - }, - [SPECIES_MIENFOO] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_MIENSHAO] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_DRUDDIGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_GOLETT] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_GOLURK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PAWNIARD] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_BISHARP] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_BOUFFALANT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_RUFFLET] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_BRAVIARY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_VULLABY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_MANDIBUZZ] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_HEATMOR] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_DURANT] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_DEINO] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_ZWEILOUS] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_HYDREIGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LARVESTA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 13, - }, - [SPECIES_VOLCARONA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_COBALION] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_TERRAKION] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_VIRIZION] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_TORNADUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_THUNDURUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_RESHIRAM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_ZEKROM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LANDORUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_KYUREM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_KELDEO] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_MELOETTA] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_GENESECT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_CHESPIN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_QUILLADIN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_CHESNAUGHT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_FENNEKIN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_BRAIXEN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 4, - }, - [SPECIES_DELPHOX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_FROAKIE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_FROGADIER] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_GRENINJA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_BUNNELBY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 5, - }, - [SPECIES_DIGGERSBY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_FLETCHLING] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_FLETCHINDER] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_TALONFLAME] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SCATTERBUG] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 13, - }, - [SPECIES_SPEWPA] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_VIVILLON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LITLEO] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_PYROAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_FLABEBE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_FLOETTE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_FLORGES] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SKIDDO] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_GOGOAT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_PANCHAM] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 12, - }, - [SPECIES_PANGORO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_FURFROU] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_ESPURR] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 10, - }, - [SPECIES_MEOWSTIC] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_HONEDGE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_DOUBLADE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_AEGISLASH] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_SPRITZEE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_AROMATISSE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_SWIRLIX] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_SLURPUFF] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_INKAY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 14, - }, - [SPECIES_MALAMAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BINACLE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 9, - }, - [SPECIES_BARBARACLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SKRELP] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_DRAGALGE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CLAUNCHER] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 14, - }, - [SPECIES_CLAWITZER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 10, - }, - [SPECIES_HELIOPTILE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_HELIOLISK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_TYRUNT] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_TYRANTRUM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_AMAURA] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 8, - }, - [SPECIES_AURORUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SYLVEON] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_HAWLUCHA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_DEDENNE] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_CARBINK] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_GOOMY] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 13, - }, - [SPECIES_SLIGGOO] = - { - .size = MON_COORDS_SIZE(32, 64), - .y_offset = 6, - }, - [SPECIES_GOODRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KLEFKI] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 4, - }, - [SPECIES_PHANTUMP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_TREVENANT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_PUMPKABOO] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_GOURGEIST] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_BERGMITE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_AVALUGG] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_NOIBAT] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 8, - }, - [SPECIES_NOIVERN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_XERNEAS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_YVELTAL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ZYGARDE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_DIANCIE] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 1, - }, - [SPECIES_HOOPA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_VOLCANION] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ROWLET] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_DARTRIX] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_DECIDUEYE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_LITTEN] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_TORRACAT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_INCINEROAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_POPPLIO] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_BRIONNE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_PRIMARINA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PIKIPEK] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_TRUMBEAK] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_TOUCANNON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_YUNGOOS] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_GUMSHOOS] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_GRUBBIN] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_CHARJABUG] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_VIKAVOLT] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_CRABRAWLER] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_CRABOMINABLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ORICORIO] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_CUTIEFLY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 16, - }, - [SPECIES_RIBOMBEE] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_ROCKRUFF] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_LYCANROC] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 6, - }, - [SPECIES_WISHIWASHI] = - { - .size = MON_COORDS_SIZE(40, 24), - .y_offset = 15, - }, - [SPECIES_MAREANIE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_TOXAPEX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MUDBRAY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_MUDSDALE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_DEWPIDER] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 13, - }, - [SPECIES_ARAQUANID] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_FOMANTIS] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_LURANTIS] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_MORELULL] = - { - .size = MON_COORDS_SIZE(24, 48), - .y_offset = 10, - }, - [SPECIES_SHIINOTIC] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_SALANDIT] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 12, - }, - [SPECIES_SALAZZLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_STUFFUL] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_BEWEAR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_BOUNSWEET] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 16, - }, - [SPECIES_STEENEE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_TSAREENA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_COMFEY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_ORANGURU] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_PASSIMIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_WIMPOD] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_GOLISOPOD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SANDYGAST] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_PALOSSAND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PYUKUMUKU] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_TYPE_NULL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SILVALLY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MINIOR] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_KOMALA] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_TURTONATOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TOGEDEMARU] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_MIMIKYU] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_BRUXISH] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 15, - }, - [SPECIES_DRAMPA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_DHELMISE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_JANGMO_O] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_HAKAMO_O] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_KOMMO_O] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TAPU_KOKO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_TAPU_LELE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_TAPU_BULU] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_TAPU_FINI] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_COSMOG] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_COSMOEM] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_SOLGALEO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LUNALA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_NIHILEGO] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_BUZZWOLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PHEROMOSA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_XURKITREE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CELESTEELA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KARTANA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_GUZZLORD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_NECROZMA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MAGEARNA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_MARSHADOW] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 9, - }, - [SPECIES_POIPOLE] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 8, - }, - [SPECIES_NAGANADEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_STAKATAKA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BLACEPHALON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_ZERAORA] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_MELTAN] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - [SPECIES_MELMETAL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_GROOKEY] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 12, - }, - [SPECIES_THWACKEY] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 7, - }, - [SPECIES_RILLABOOM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_SCORBUNNY] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 8, - }, - [SPECIES_RABOOT] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_CINDERACE] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - [SPECIES_SOBBLE] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 11, - }, - [SPECIES_DRIZZILE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_INTELEON] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_SKWOVET] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_GREEDENT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_ROOKIDEE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 16, - }, - [SPECIES_CORVISQUIRE] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_CORVIKNIGHT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_BLIPBUG] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_DOTTLER] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_ORBEETLE] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_NICKIT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_THIEVUL] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GOSSIFLEUR] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 11, - }, - [SPECIES_ELDEGOSS] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 4, - }, - [SPECIES_WOOLOO] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_DUBWOOL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_CHEWTLE] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 13, - }, - [SPECIES_DREDNAW] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_YAMPER] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 10, - }, - [SPECIES_BOLTUND] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_ROLYCOLY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 16, - }, - [SPECIES_CARKOL] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 8, - }, - [SPECIES_COALOSSAL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_APPLIN] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 16, - }, - [SPECIES_FLAPPLE] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 9, - }, - [SPECIES_APPLETUN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_SILICOBRA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 12, - }, - [SPECIES_SANDACONDA] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 12, - }, - [SPECIES_CRAMORANT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARROKUDA] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 13, - }, - [SPECIES_BARRASKEWDA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_TOXEL] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_TOXTRICITY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 1, - }, - [SPECIES_SIZZLIPEDE] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_CENTISKORCH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_CLOBBOPUS] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 15, - }, - [SPECIES_GRAPPLOCT] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 5, - }, - [SPECIES_SINISTEA] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - [SPECIES_POLTEAGEIST] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_HATENNA] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_HATTREM] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_HATTERENE] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_IMPIDIMP] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - [SPECIES_MORGREM] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_GRIMMSNARL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_OBSTAGOON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_PERRSERKER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_CURSOLA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SIRFETCHD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MR_RIME] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 4, - }, - [SPECIES_RUNERIGUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MILCERY] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_ALCREMIE] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_FALINKS] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_PINCURCHIN] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_SNOM] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 20, - }, - [SPECIES_FROSMOTH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_STONJOURNER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_EISCUE] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - [SPECIES_INDEEDEE] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 9, - }, - [SPECIES_MORPEKO] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - [SPECIES_CUFANT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_COPPERAJAH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_DRACOZOLT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_ARCTOZOLT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_DRACOVISH] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_ARCTOVISH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_DURALUDON] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_DREEPY] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_DRAKLOAK] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_DRAGAPULT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_ZACIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_ZAMAZENTA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ETERNATUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_KUBFU] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 8, - }, - [SPECIES_URSHIFU] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_ZARUDE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_REGIELEKI] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 5, - }, - [SPECIES_REGIDRAGO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_GLASTRIER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SPECTRIER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CALYREX] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_WYRDEER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KLEAVOR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_URSALUNA] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_BASCULEGION] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SNEASLER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_OVERQWIL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ENAMORUS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Megas - [SPECIES_VENUSAUR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_CHARIZARD_MEGA_X] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CHARIZARD_MEGA_Y] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BLASTOISE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BEEDRILL_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_PIDGEOT_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ALAKAZAM_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SLOWBRO_MEGA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_GENGAR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 7, - }, - [SPECIES_KANGASKHAN_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PINSIR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_GYARADOS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_AERODACTYL_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_MEWTWO_MEGA_X] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_MEWTWO_MEGA_Y] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - [SPECIES_AMPHAROS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_STEELIX_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SCIZOR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HERACROSS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_HOUNDOOM_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_TYRANITAR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SCEPTILE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BLAZIKEN_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SWAMPERT_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 6, - }, - [SPECIES_GARDEVOIR_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SABLEYE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_MAWILE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 5, - }, - [SPECIES_AGGRON_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MEDICHAM_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MANECTRIC_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_SHARPEDO_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CAMERUPT_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_ALTARIA_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_BANETTE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ABSOL_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_GLALIE_MEGA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_SALAMENCE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_METAGROSS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LATIAS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LATIOS_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LOPUNNY_MEGA] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_GARCHOMP_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LUCARIO_MEGA] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_ABOMASNOW_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_GALLADE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_AUDINO_MEGA] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 6, - }, - [SPECIES_DIANCIE_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Special Mega + Primals - [SPECIES_RAYQUAZA_MEGA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KYOGRE_PRIMAL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_GROUDON_PRIMAL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Alolan Forms - [SPECIES_RATTATA_ALOLAN] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - [SPECIES_RATICATE_ALOLAN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - [SPECIES_RAICHU_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SANDSHREW_ALOLAN] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 13, - }, - [SPECIES_SANDSLASH_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_VULPIX_ALOLAN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - [SPECIES_NINETALES_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_DIGLETT_ALOLAN] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 19, - }, - [SPECIES_DUGTRIO_ALOLAN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_MEOWTH_ALOLAN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 8, - }, - [SPECIES_PERSIAN_ALOLAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 4, - }, - [SPECIES_GEODUDE_ALOLAN] = - { - .size = MON_COORDS_SIZE(48, 32), - .y_offset = 17, - }, - [SPECIES_GRAVELER_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_GOLEM_ALOLAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_GRIMER_ALOLAN] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 11, - }, - [SPECIES_MUK_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - [SPECIES_EXEGGUTOR_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MAROWAK_ALOLAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - // Galarian Forms - [SPECIES_MEOWTH_GALARIAN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PONYTA_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_RAPIDASH_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SLOWPOKE_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 32), - .y_offset = 19, - }, - [SPECIES_SLOWBRO_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - [SPECIES_FARFETCHD_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 9, - }, - [SPECIES_WEEZING_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_MR_MIME_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_ARTICUNO_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ZAPDOS_GALARIAN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_MOLTRES_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_SLOWKING_GALARIAN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_CORSOLA_GALARIAN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - [SPECIES_ZIGZAGOON_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 13, - }, - [SPECIES_LINOONE_GALARIAN] = - { - .size = MON_COORDS_SIZE(64, 40), - .y_offset = 13, - }, - [SPECIES_DARUMAKA_GALARIAN] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_DARMANITAN_GALARIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_YAMASK_GALARIAN] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 13, - }, - [SPECIES_STUNFISK_GALARIAN] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - // Hisuian Forms - [SPECIES_GROWLITHE_HISUIAN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 6, - }, - [SPECIES_ARCANINE_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_VOLTORB_HISUIAN] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 0, - }, - [SPECIES_ELECTRODE_HISUIAN] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 0, - }, - [SPECIES_TYPHLOSION_HISUIAN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 0, - }, - [SPECIES_QWILFISH_HISUIAN] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 8, - }, - [SPECIES_SNEASEL_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - [SPECIES_SAMUROTT_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_LILLIGANT_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_ZORUA_HISUIAN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_ZOROARK_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, - [SPECIES_BRAVIARY_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SLIGGOO_HISUIAN] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_GOODRA_HISUIAN] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_AVALUGG_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 48), - .y_offset = 5, - }, - [SPECIES_DECIDUEYE_HISUIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Misc Forms - // Cosplay Pikachu - [SPECIES_PIKACHU_COSPLAY] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_ROCK_STAR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_BELLE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_POP_STAR] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_PH_D] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_LIBRE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - // Cap Pikachu - [SPECIES_PIKACHU_ORIGINAL_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_HOENN_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_SINNOH_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_UNOVA_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_KALOS_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_ALOLA_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_PARTNER_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - [SPECIES_PIKACHU_WORLD_CAP] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 9, - }, - // Pichu - [SPECIES_PICHU_SPIKY_EARED] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, -#endif - // Unown - [SPECIES_UNOWN_B] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_C] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_D] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_E] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_F] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_G] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 14, - }, - [SPECIES_UNOWN_H] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_I] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_J] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_K] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_L] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_M] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_N] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 20, - }, - [SPECIES_UNOWN_O] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_P] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_Q] = - { - .size = MON_COORDS_SIZE(32, 24), - .y_offset = 21, - }, - [SPECIES_UNOWN_R] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_S] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 12, - }, - [SPECIES_UNOWN_T] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 18, - }, - [SPECIES_UNOWN_U] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 18, - }, - [SPECIES_UNOWN_V] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 18, - }, - [SPECIES_UNOWN_W] = - { - .size = MON_COORDS_SIZE(32, 32), - .y_offset = 19, - }, - [SPECIES_UNOWN_X] = - { - .size = MON_COORDS_SIZE(24, 24), - .y_offset = 21, - }, - [SPECIES_UNOWN_Y] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 17, - }, - [SPECIES_UNOWN_Z] = - { - .size = MON_COORDS_SIZE(24, 32), - .y_offset = 16, - }, - [SPECIES_UNOWN_EMARK] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 15, - }, - [SPECIES_UNOWN_QMARK] = - { - .size = MON_COORDS_SIZE(24, 40), - .y_offset = 13, - }, - // Castform - [SPECIES_CASTFORM_SUNNY] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - [SPECIES_CASTFORM_RAINY] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 9, - }, - [SPECIES_CASTFORM_SNOWY] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 8, - }, - // Deoxys - [SPECIES_DEOXYS_ATTACK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_DEOXYS_DEFENSE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_DEOXYS_SPEED] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 1, - }, -#if P_NEW_POKEMON == TRUE - // Burmy - [SPECIES_BURMY_SANDY_CLOAK] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 12, - }, - [SPECIES_BURMY_TRASH_CLOAK] = - { - .size = MON_COORDS_SIZE(32, 56), - .y_offset = 8, - }, - // Wormadam - [SPECIES_WORMADAM_SANDY_CLOAK] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 10, - }, - [SPECIES_WORMADAM_TRASH_CLOAK] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 10, - }, - // Cherrim - [SPECIES_CHERRIM_SUNSHINE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - // Shellos - [SPECIES_SHELLOS_EAST_SEA] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - // Gastrodon - [SPECIES_GASTRODON_EAST_SEA] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 8, - }, - // Rotom - [SPECIES_ROTOM_HEAT] = - { - .size = MON_COORDS_SIZE(56, 48), - .y_offset = 10, - }, - [SPECIES_ROTOM_WASH] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_ROTOM_FROST] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - [SPECIES_ROTOM_FAN] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 8, - }, - [SPECIES_ROTOM_MOW] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 12, - }, - // Origin Forme - [SPECIES_DIALGA_ORIGIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_PALKIA_ORIGIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_GIRATINA_ORIGIN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Shaymin - [SPECIES_SHAYMIN_SKY] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 7, - }, - // Arceus - [SPECIES_ARCEUS_FIGHTING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_FLYING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_POISON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_GROUND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_ROCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_BUG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_GHOST] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_STEEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_FIRE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_WATER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_GRASS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_ELECTRIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_PSYCHIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_ICE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_DRAGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_DARK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ARCEUS_FAIRY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Basculin - [SPECIES_BASCULIN_BLUE_STRIPED] = - { - .size = MON_COORDS_SIZE(56, 40), - .y_offset = 16, - }, - [SPECIES_BASCULIN_WHITE_STRIPED] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 10, - }, - // Darmanitan - [SPECIES_DARMANITAN_ZEN_MODE] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 14, - }, - [SPECIES_DARMANITAN_ZEN_MODE_GALARIAN] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - // Deerling - [SPECIES_DEERLING_SUMMER] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - [SPECIES_DEERLING_AUTUMN] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - [SPECIES_DEERLING_WINTER] = - { - .size = MON_COORDS_SIZE(32, 48), - .y_offset = 11, - }, - // Sawsbuck - [SPECIES_SAWSBUCK_SUMMER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SAWSBUCK_AUTUMN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SAWSBUCK_WINTER] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - // Therian Forms - [SPECIES_TORNADUS_THERIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_THUNDURUS_THERIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_LANDORUS_THERIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ENAMORUS_THERIAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Kyurem - [SPECIES_KYUREM_WHITE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_KYUREM_BLACK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Keldeo - [SPECIES_KELDEO_RESOLUTE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - // Meloetta - [SPECIES_MELOETTA_PIROUETTE] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 2, - }, - // Genesect - [SPECIES_GENESECT_DOUSE_DRIVE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_GENESECT_SHOCK_DRIVE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_GENESECT_BURN_DRIVE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - [SPECIES_GENESECT_CHILL_DRIVE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - // Greninja - [SPECIES_GRENINJA_BATTLE_BOND] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 7, - }, - [SPECIES_GRENINJA_ASH] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Vivillon - [SPECIES_VIVILLON_POLAR] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_TUNDRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_CONTINENTAL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_GARDEN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_ELEGANT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MEADOW] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MODERN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MARINE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_ARCHIPELAGO] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_HIGH_PLAINS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_SANDSTORM] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_RIVER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_MONSOON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_SAVANNA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_SUN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_OCEAN] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_JUNGLE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_FANCY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_VIVILLON_POKE_BALL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Flabébé - [SPECIES_FLABEBE_YELLOW_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_FLABEBE_ORANGE_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_FLABEBE_BLUE_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - [SPECIES_FLABEBE_WHITE_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 56), - .y_offset = 6, - }, - // Floette - [SPECIES_FLOETTE_YELLOW_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_FLOETTE_ORANGE_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_FLOETTE_BLUE_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_FLOETTE_WHITE_FLOWER] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 3, - }, - [SPECIES_FLOETTE_ETERNAL_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Florges - [SPECIES_FLORGES_YELLOW_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_FLORGES_ORANGE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_FLORGES_BLUE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_FLORGES_WHITE_FLOWER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Furfrou - [SPECIES_FURFROU_HEART_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_STAR_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_DIAMOND_TRIM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_DEBUTANTE_TRIM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_MATRON_TRIM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_DANDY_TRIM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_LA_REINE_TRIM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_KABUKI_TRIM] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_FURFROU_PHARAOH_TRIM] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - // Meowstic - [SPECIES_MEOWSTIC_FEMALE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - // Aegislash - [SPECIES_AEGISLASH_BLADE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Pumpkaboo - [SPECIES_PUMPKABOO_SMALL] = - { - .size = MON_COORDS_SIZE(40, 40), - .y_offset = 15, - }, - [SPECIES_PUMPKABOO_LARGE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 12, - }, - [SPECIES_PUMPKABOO_SUPER] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 10, - }, - // Gourgeist - [SPECIES_GOURGEIST_SMALL] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 5, - }, - [SPECIES_GOURGEIST_LARGE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - [SPECIES_GOURGEIST_SUPER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Xerneas - [SPECIES_XERNEAS_ACTIVE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Zygarde - [SPECIES_ZYGARDE_10] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 2, - }, - [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_ZYGARDE_COMPLETE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Hoopa - [SPECIES_HOOPA_UNBOUND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Oricorio - [SPECIES_ORICORIO_POM_POM] = - { - .size = MON_COORDS_SIZE(56, 56), - .y_offset = 5, - }, - [SPECIES_ORICORIO_PAU] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 3, - }, - [SPECIES_ORICORIO_SENSU] = - { - .size = MON_COORDS_SIZE(64, 56), - .y_offset = 4, - }, - // Rockruff - [SPECIES_ROCKRUFF_OWN_TEMPO] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 11, - }, - // Lycanroc - [SPECIES_LYCANROC_MIDNIGHT] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 1, - }, - [SPECIES_LYCANROC_DUSK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Wishiwashi - [SPECIES_WISHIWASHI_SCHOOL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 4, - }, - // Silvally - [SPECIES_SILVALLY_FIGHTING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_FLYING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_POISON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_GROUND] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_ROCK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_BUG] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_GHOST] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_STEEL] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_FIRE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_WATER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_GRASS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_ELECTRIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_PSYCHIC] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_ICE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_DRAGON] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_DARK] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_SILVALLY_FAIRY] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Minior - [SPECIES_MINIOR_METEOR_ORANGE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_YELLOW] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_GREEN] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_BLUE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_INDIGO] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_METEOR_VIOLET] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_RED] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_ORANGE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_YELLOW] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_GREEN] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_BLUE] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_INDIGO] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - [SPECIES_MINIOR_CORE_VIOLET] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 14, - }, - // Mimikyu - [SPECIES_MIMIKYU_BUSTED] = - { - .size = MON_COORDS_SIZE(48, 40), - .y_offset = 12, - }, - // Necrozma - [SPECIES_NECROZMA_DUSK_MANE] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_NECROZMA_DAWN_WINGS] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_NECROZMA_ULTRA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Magearna - [SPECIES_MAGEARNA_ORIGINAL_COLOR] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - // Cramorant - [SPECIES_CRAMORANT_GULPING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CRAMORANT_GORGING] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Toxtricity - [SPECIES_TOXTRICITY_LOW_KEY] = - { - .size = MON_COORDS_SIZE(48, 64), - .y_offset = 2, - }, - // Sinistea - [SPECIES_SINISTEA_ANTIQUE] = - { - .size = MON_COORDS_SIZE(40, 32), - .y_offset = 17, - }, - // Polteageist - [SPECIES_POLTEAGEIST_ANTIQUE] = - { - .size = MON_COORDS_SIZE(48, 48), - .y_offset = 11, - }, - // Alcremie - [SPECIES_ALCREMIE_RUBY_CREAM] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_ALCREMIE_MATCHA_CREAM] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_ALCREMIE_MINT_CREAM] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_ALCREMIE_LEMON_CREAM] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_ALCREMIE_SALTED_CREAM] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_ALCREMIE_RUBY_SWIRL] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_ALCREMIE_CARAMEL_SWIRL] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - [SPECIES_ALCREMIE_RAINBOW_SWIRL] = - { - .size = MON_COORDS_SIZE(40, 56), - .y_offset = 7, - }, - // Eiscue - [SPECIES_EISCUE_NOICE_FACE] = - { - .size = MON_COORDS_SIZE(40, 64), - .y_offset = 0, - }, - // Indeedee - [SPECIES_INDEEDEE_FEMALE] = - { - .size = MON_COORDS_SIZE(40, 48), - .y_offset = 9, - }, - // Morpeko - [SPECIES_MORPEKO_HANGRY] = - { - .size = MON_COORDS_SIZE(32, 40), - .y_offset = 14, - }, - // Zacian - [SPECIES_ZACIAN_CROWNED_SWORD] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - // Zamazenta - [SPECIES_ZAMAZENTA_CROWNED_SHIELD] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - // Eternatus - [SPECIES_ETERNATUS_ETERNAMAX] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 3, - }, - // Urshifu - [SPECIES_URSHIFU_RAPID_STRIKE_STYLE] = - { - .size = MON_COORDS_SIZE(56, 64), - .y_offset = 0, - }, - // Zarude - [SPECIES_ZARUDE_DADA] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 2, - }, - // Calyrex - [SPECIES_CALYREX_ICE_RIDER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, - [SPECIES_CALYREX_SHADOW_RIDER] = - { - .size = MON_COORDS_SIZE(64, 64), - .y_offset = 0, - }, -#endif - // Egg - [SPECIES_EGG] = - { - .size = MON_COORDS_SIZE(24, 24), - .y_offset = 20, - }, + [SPECIES_NONE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_BULBASAUR] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_IVYSAUR] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_VENUSAUR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CHARMANDER] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_CHARMELEON] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_CHARIZARD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SQUIRTLE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_WARTORTLE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_BLASTOISE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CATERPIE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_METAPOD] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_BUTTERFREE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_WEEDLE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_KAKUNA] = { .size = MON_COORDS_SIZE(24, 48), .y_offset = 11 }, + [SPECIES_BEEDRILL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_PIDGEY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_PIDGEOTTO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_PIDGEOT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_RATTATA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_RATICATE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SPEAROW] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_FEAROW] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_EKANS] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_ARBOK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PIKACHU] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_RAICHU] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SANDSHREW] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SANDSLASH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_NIDORAN_F] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_NIDORINA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_NIDOQUEEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_NIDORAN_M] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_NIDORINO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_NIDOKING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CLEFAIRY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_CLEFABLE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_VULPIX] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_NINETALES] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_JIGGLYPUFF] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_WIGGLYTUFF] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 4 }, + [SPECIES_ZUBAT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 16 }, + [SPECIES_GOLBAT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ODDISH] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_GLOOM] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_VILEPLUME] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_PARAS] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_PARASECT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_VENONAT] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 8 }, + [SPECIES_VENOMOTH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_DIGLETT] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_DUGTRIO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_MEOWTH] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_PERSIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PSYDUCK] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_GOLDUCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MANKEY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_PRIMEAPE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GROWLITHE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_ARCANINE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_POLIWAG] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_POLIWHIRL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_POLIWRATH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ABRA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_KADABRA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ALAKAZAM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MACHOP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_MACHOKE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_MACHAMP] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BELLSPROUT] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_WEEPINBELL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_VICTREEBEL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TENTACOOL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_TENTACRUEL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_GEODUDE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 19 }, + [SPECIES_GRAVELER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_GOLEM] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_PONYTA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_RAPIDASH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SLOWPOKE] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_SLOWBRO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_MAGNEMITE] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 20 }, + [SPECIES_MAGNETON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_FARFETCHD] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_DODUO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_DODRIO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SEEL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_DEWGONG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_GRIMER] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_MUK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SHELLDER] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_CLOYSTER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_GASTLY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 13 }, + [SPECIES_HAUNTER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 13 }, + [SPECIES_GENGAR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_ONIX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_DROWZEE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_HYPNO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_KRABBY] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 14 }, + [SPECIES_KINGLER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_VOLTORB] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 11 }, + [SPECIES_ELECTRODE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_EXEGGCUTE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_EXEGGUTOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CUBONE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_MAROWAK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 8 }, + [SPECIES_HITMONLEE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_HITMONCHAN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_LICKITUNG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_KOFFING] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_WEEZING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_RHYHORN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_RHYDON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_CHANSEY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_TANGELA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_KANGASKHAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_HORSEA] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_SEADRA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GOLDEEN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_SEAKING] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_STARYU] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_STARMIE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MR_MIME] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_SCYTHER] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_JYNX] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_ELECTABUZZ] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_MAGMAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PINSIR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_TAUROS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_MAGIKARP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_GYARADOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_LAPRAS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_DITTO] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_EEVEE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_VAPOREON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_JOLTEON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_FLAREON] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 11 }, + [SPECIES_PORYGON] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_OMANYTE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_OMASTAR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_KABUTO] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_KABUTOPS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_AERODACTYL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_SNORLAX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_ARTICUNO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_ZAPDOS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MOLTRES] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_DRATINI] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_DRAGONAIR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_DRAGONITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MEWTWO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MEW] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_CHIKORITA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_BAYLEEF] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_MEGANIUM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_CYNDAQUIL] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_QUILAVA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_TYPHLOSION] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_TOTODILE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_CROCONAW] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_FERALIGATR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SENTRET] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 2 }, + [SPECIES_FURRET] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_HOOTHOOT] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_NOCTOWL] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 2 }, + [SPECIES_LEDYBA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_LEDIAN] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_SPINARAK] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_ARIADOS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_CROBAT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_CHINCHOU] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_LANTURN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_PICHU] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_CLEFFA] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 18 }, + [SPECIES_IGGLYBUFF] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_TOGEPI] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 16 }, + [SPECIES_TOGETIC] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 8 }, + [SPECIES_NATU] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_XATU] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 5 }, + [SPECIES_MAREEP] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_FLAAFFY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_AMPHAROS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_BELLOSSOM] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_MARILL] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_AZUMARILL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 6 }, + [SPECIES_SUDOWOODO] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_POLITOED] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_HOPPIP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 14 }, + [SPECIES_SKIPLOOM] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_JUMPLUFF] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_AIPOM] = { .size = MON_COORDS_SIZE(32, 64), .y_offset = 1 }, + [SPECIES_SUNKERN] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 17 }, + [SPECIES_SUNFLORA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_YANMA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 14 }, + [SPECIES_WOOPER] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_QUAGSIRE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ESPEON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_UMBREON] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_MURKROW] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_SLOWKING] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_MISDREAVUS] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 13 }, + [SPECIES_UNOWN] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 15 }, + [SPECIES_WOBBUFFET] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_GIRAFARIG] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_PINECO] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_FORRETRESS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_DUNSPARCE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_GLIGAR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_STEELIX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNUBBULL] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_GRANBULL] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_QWILFISH] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_SCIZOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SHUCKLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_HERACROSS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SNEASEL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_TEDDIURSA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_URSARING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SLUGMA] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 12 }, + [SPECIES_MAGCARGO] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 6 }, + [SPECIES_SWINUB] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 18 }, + [SPECIES_PILOSWINE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_CORSOLA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_REMORAID] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_OCTILLERY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_DELIBIRD] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_MANTINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_SKARMORY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_HOUNDOUR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_HOUNDOOM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KINGDRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PHANPY] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_DONPHAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_PORYGON2] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_STANTLER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_SMEARGLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TYROGUE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_HITMONTOP] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SMOOCHUM] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_ELEKID] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_MAGBY] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_MILTANK] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_BLISSEY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_RAIKOU] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_ENTEI] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SUICUNE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_LARVITAR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_PUPITAR] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_TYRANITAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LUGIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HO_OH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CELEBI] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_TREECKO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_GROVYLE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SCEPTILE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TORCHIC] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 12 }, + [SPECIES_COMBUSKEN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_BLAZIKEN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_MUDKIP] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_MARSHTOMP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_SWAMPERT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_POOCHYENA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_MIGHTYENA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ZIGZAGOON] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_LINOONE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_WURMPLE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_SILCOON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_BEAUTIFLY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 9 }, + [SPECIES_CASCOON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_DUSTOX] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 12 }, + [SPECIES_LOTAD] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_LOMBRE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_LUDICOLO] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SEEDOT] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_NUZLEAF] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_SHIFTRY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_NINCADA] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 16 }, + [SPECIES_NINJASK] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_SHEDINJA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_TAILLOW] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SWELLOW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SHROOMISH] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_BRELOOM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_SPINDA] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_WINGULL] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_PELIPPER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SURSKIT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_MASQUERAIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_WAILMER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_WAILORD] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_SKITTY] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_DELCATTY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_KECLEON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_BALTOY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 11 }, + [SPECIES_CLAYDOL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_NOSEPASS] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_TORKOAL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SABLEYE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_BARBOACH] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 11 }, + [SPECIES_WHISCASH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_LUVDISC] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 11 }, + [SPECIES_CORPHISH] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_CRAWDAUNT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_FEEBAS] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_MILOTIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CARVANHA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_SHARPEDO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TRAPINCH] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_VIBRAVA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_FLYGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_MAKUHITA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_HARIYAMA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ELECTRIKE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MANECTRIC] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_NUMEL] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_CAMERUPT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SPHEAL] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_SEALEO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_WALREIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CACNEA] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_CACTURNE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNORUNT] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_GLALIE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_LUNATONE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SOLROCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_AZURILL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SPOINK] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_GRUMPIG] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_PLUSLE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_MINUN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_MAWILE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_MEDITITE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_MEDICHAM] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_SWABLU] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_ALTARIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_WYNAUT] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_DUSKULL] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_DUSCLOPS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ROSELIA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_SLAKOTH] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_VIGOROTH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_SLAKING] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GULPIN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 15 }, + [SPECIES_SWALOT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_TROPIUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_WHISMUR] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_LOUDRED] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_EXPLOUD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CLAMPERL] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_HUNTAIL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_GOREBYSS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ABSOL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_SHUPPET] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_BANETTE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_SEVIPER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ZANGOOSE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_RELICANTH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 10 }, + [SPECIES_ARON] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_LAIRON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_AGGRON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CASTFORM] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 17 }, + [SPECIES_VOLBEAT] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_ILLUMISE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_LILEEP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_CRADILY] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ANORITH] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_ARMALDO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_RALTS] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 12 }, + [SPECIES_KIRLIA] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 6 }, + [SPECIES_GARDEVOIR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BAGON] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_SHELGON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SALAMENCE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_BELDUM] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_METANG] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_METAGROSS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_REGIROCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_REGICE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_REGISTEEL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_KYOGRE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_GROUDON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_RAYQUAZA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LATIAS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_LATIOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_JIRACHI] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 13 }, + [SPECIES_DEOXYS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CHIMECHO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_TURTWIG] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_GROTLE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_TORTERRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CHIMCHAR] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_MONFERNO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_INFERNAPE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PIPLUP] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 14 }, + [SPECIES_PRINPLUP] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_EMPOLEON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_STARLY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_STARAVIA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_STARAPTOR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_BIDOOF] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_BIBAREL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_KRICKETOT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_KRICKETUNE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_SHINX] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_LUXIO] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_LUXRAY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_BUDEW] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_ROSERADE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_CRANIDOS] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_RAMPARDOS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SHIELDON] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_BASTIODON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_BURMY] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 13 }, + [SPECIES_WORMADAM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 10 }, + [SPECIES_MOTHIM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 12 }, + [SPECIES_COMBEE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 16 }, + [SPECIES_VESPIQUEN] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_PACHIRISU] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 12 }, + [SPECIES_BUIZEL] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_FLOATZEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CHERUBI] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_CHERRIM] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 8 }, + [SPECIES_SHELLOS] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_GASTRODON] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_AMBIPOM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_DRIFLOON] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 7 }, + [SPECIES_DRIFBLIM] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_BUNEARY] = { .size = MON_COORDS_SIZE(32, 64), .y_offset = 9 }, + [SPECIES_LOPUNNY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_MISMAGIUS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_HONCHKROW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_GLAMEOW] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_PURUGLY] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CHINGLING] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_STUNKY] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 13 }, + [SPECIES_SKUNTANK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_BRONZOR] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_BRONZONG] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_BONSLY] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_MIME_JR] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 9 }, + [SPECIES_HAPPINY] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 12 }, + [SPECIES_CHATOT] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_SPIRITOMB] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_GIBLE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_GABITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_GARCHOMP] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MUNCHLAX] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_RIOLU] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_LUCARIO] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_HIPPOPOTAS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_HIPPOWDON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_SKORUPI] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_DRAPION] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_CROAGUNK] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_TOXICROAK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_CARNIVINE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_FINNEON] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_LUMINEON] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MANTYKE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_SNOVER] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_ABOMASNOW] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_WEAVILE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_MAGNEZONE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_LICKILICKY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_RHYPERIOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_TANGROWTH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_ELECTIVIRE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MAGMORTAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TOGEKISS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_YANMEGA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_LEAFEON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_GLACEON] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 10 }, + [SPECIES_GLISCOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_MAMOSWINE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_PORYGON_Z] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 6 }, + [SPECIES_GALLADE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_PROBOPASS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_DUSKNOIR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FROSLASS] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_ROTOM] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_UXIE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MESPRIT] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_AZELF] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_DIALGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PALKIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HEATRAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_REGIGIGAS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_GIRATINA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CRESSELIA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_PHIONE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 8 }, + [SPECIES_MANAPHY] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 10 }, + [SPECIES_DARKRAI] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SHAYMIN] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 16 }, + [SPECIES_ARCEUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VICTINI] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 10 }, + [SPECIES_SNIVY] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_SERVINE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_SERPERIOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_TEPIG] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 15 }, + [SPECIES_PIGNITE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_EMBOAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_OSHAWOTT] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_DEWOTT] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_SAMUROTT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PATRAT] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_WATCHOG] = { .size = MON_COORDS_SIZE(32, 64), .y_offset = 2 }, + [SPECIES_LILLIPUP] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_HERDIER] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_STOUTLAND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PURRLOIN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_LIEPARD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_PANSAGE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_SIMISAGE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PANSEAR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_SIMISEAR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_PANPOUR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_SIMIPOUR] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_MUNNA] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 14 }, + [SPECIES_MUSHARNA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_PIDOVE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_TRANQUILL] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_UNFEZANT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_BLITZLE] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 5 }, + [SPECIES_ZEBSTRIKA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ROGGENROLA] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 14 }, + [SPECIES_BOLDORE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_GIGALITH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_WOOBAT] = { .size = MON_COORDS_SIZE(64, 32), .y_offset = 16 }, + [SPECIES_SWOOBAT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_DRILBUR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_EXCADRILL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_AUDINO] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_TIMBURR] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_GURDURR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CONKELDURR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_TYMPOLE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_PALPITOAD] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_SEISMITOAD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_THROH] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 10 }, + [SPECIES_SAWK] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_SEWADDLE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_SWADLOON] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 12 }, + [SPECIES_LEAVANNY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_VENIPEDE] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 16 }, + [SPECIES_WHIRLIPEDE] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_SCOLIPEDE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_COTTONEE] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 18 }, + [SPECIES_WHIMSICOTT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 6 }, + [SPECIES_PETILIL] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 12 }, + [SPECIES_LILLIGANT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_BASCULIN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_SANDILE] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 18 }, + [SPECIES_KROKOROK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_KROOKODILE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_DARUMAKA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_DARMANITAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_MARACTUS] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_DWEBBLE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_CRUSTLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SCRAGGY] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_SCRAFTY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_SIGILYPH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_YAMASK] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_COFAGRIGUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TIRTOUGA] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 16 }, + [SPECIES_CARRACOSTA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ARCHEN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_ARCHEOPS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_TRUBBISH] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_GARBODOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_ZORUA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_ZOROARK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MINCCINO] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_CINCCINO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_GOTHITA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_GOTHORITA] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_GOTHITELLE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_SOLOSIS] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_DUOSION] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_REUNICLUS] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 11 }, + [SPECIES_DUCKLETT] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_SWANNA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_VANILLITE] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_VANILLISH] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 5 }, + [SPECIES_VANILLUXE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_DEERLING] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_SAWSBUCK] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_EMOLGA] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 17 }, + [SPECIES_KARRABLAST] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 13 }, + [SPECIES_ESCAVALIER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FOONGUS] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_AMOONGUSS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 8 }, + [SPECIES_FRILLISH] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_JELLICENT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_ALOMOMOLA] = { .size = MON_COORDS_SIZE(32, 64), .y_offset = 0 }, + [SPECIES_JOLTIK] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_GALVANTULA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_FERROSEED] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_FERROTHORN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_KLINK] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_KLANG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_KLINKLANG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_TYNAMO] = { .size = MON_COORDS_SIZE(40, 24), .y_offset = 22 }, + [SPECIES_EELEKTRIK] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 6 }, + [SPECIES_EELEKTROSS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_ELGYEM] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_BEHEEYEM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_LITWICK] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_LAMPENT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_CHANDELURE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_AXEW] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_FRAXURE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_HAXORUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CUBCHOO] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_BEARTIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_CRYOGONAL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SHELMET] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_ACCELGOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_STUNFISK] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 14 }, + [SPECIES_MIENFOO] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_MIENSHAO] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_DRUDDIGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_GOLETT] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_GOLURK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PAWNIARD] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_BISHARP] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_BOUFFALANT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_RUFFLET] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_BRAVIARY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_VULLABY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_MANDIBUZZ] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_HEATMOR] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_DURANT] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_DEINO] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_ZWEILOUS] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_HYDREIGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LARVESTA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 13 }, + [SPECIES_VOLCARONA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_COBALION] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_TERRAKION] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_VIRIZION] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_TORNADUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_THUNDURUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_RESHIRAM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_ZEKROM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LANDORUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_KYUREM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_KELDEO] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_MELOETTA] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_GENESECT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_CHESPIN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_QUILLADIN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_CHESNAUGHT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_FENNEKIN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_BRAIXEN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 4 }, + [SPECIES_DELPHOX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FROAKIE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_FROGADIER] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_GRENINJA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_BUNNELBY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 5 }, + [SPECIES_DIGGERSBY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_FLETCHLING] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_FLETCHINDER] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_TALONFLAME] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SCATTERBUG] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 13 }, + [SPECIES_SPEWPA] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_VIVILLON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LITLEO] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_PYROAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FLABEBE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_FLOETTE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_FLORGES] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SKIDDO] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_GOGOAT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_PANCHAM] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 12 }, + [SPECIES_PANGORO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FURFROU] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_ESPURR] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 10 }, + [SPECIES_MEOWSTIC] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_HONEDGE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_DOUBLADE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_AEGISLASH] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_SPRITZEE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_AROMATISSE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_SWIRLIX] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_SLURPUFF] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_INKAY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 14 }, + [SPECIES_MALAMAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BINACLE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 9 }, + [SPECIES_BARBARACLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SKRELP] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_DRAGALGE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CLAUNCHER] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 14 }, + [SPECIES_CLAWITZER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 10 }, + [SPECIES_HELIOPTILE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_HELIOLISK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_TYRUNT] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_TYRANTRUM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_AMAURA] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 8 }, + [SPECIES_AURORUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SYLVEON] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_HAWLUCHA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_DEDENNE] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_CARBINK] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_GOOMY] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 13 }, + [SPECIES_SLIGGOO] = { .size = MON_COORDS_SIZE(32, 64), .y_offset = 6 }, + [SPECIES_GOODRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KLEFKI] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 4 }, + [SPECIES_PHANTUMP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_TREVENANT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_PUMPKABOO] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_GOURGEIST] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_BERGMITE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_AVALUGG] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_NOIBAT] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, + [SPECIES_NOIVERN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_XERNEAS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_YVELTAL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ZYGARDE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_DIANCIE] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 1 }, + [SPECIES_HOOPA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_VOLCANION] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ROWLET] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_DARTRIX] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_DECIDUEYE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_LITTEN] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_TORRACAT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_INCINEROAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_POPPLIO] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_BRIONNE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_PRIMARINA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PIKIPEK] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_TRUMBEAK] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_TOUCANNON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_YUNGOOS] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_GUMSHOOS] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_GRUBBIN] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_CHARJABUG] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_VIKAVOLT] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_CRABRAWLER] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_CRABOMINABLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ORICORIO] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_CUTIEFLY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 16 }, + [SPECIES_RIBOMBEE] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_ROCKRUFF] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_LYCANROC] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 6 }, + [SPECIES_WISHIWASHI] = { .size = MON_COORDS_SIZE(40, 24), .y_offset = 15 }, + [SPECIES_MAREANIE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_TOXAPEX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MUDBRAY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_MUDSDALE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_DEWPIDER] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 13 }, + [SPECIES_ARAQUANID] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_FOMANTIS] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_LURANTIS] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_MORELULL] = { .size = MON_COORDS_SIZE(24, 48), .y_offset = 10 }, + [SPECIES_SHIINOTIC] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_SALANDIT] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 12 }, + [SPECIES_SALAZZLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_STUFFUL] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_BEWEAR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_BOUNSWEET] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 16 }, + [SPECIES_STEENEE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_TSAREENA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_COMFEY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_ORANGURU] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_PASSIMIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_WIMPOD] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_GOLISOPOD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SANDYGAST] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_PALOSSAND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PYUKUMUKU] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_TYPE_NULL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SILVALLY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MINIOR] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_KOMALA] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_TURTONATOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TOGEDEMARU] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_MIMIKYU] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_BRUXISH] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 15 }, + [SPECIES_DRAMPA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_DHELMISE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_JANGMO_O] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_HAKAMO_O] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_KOMMO_O] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TAPU_KOKO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_TAPU_LELE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_TAPU_BULU] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_TAPU_FINI] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_COSMOG] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_COSMOEM] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_SOLGALEO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LUNALA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_NIHILEGO] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_BUZZWOLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PHEROMOSA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_XURKITREE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CELESTEELA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KARTANA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_GUZZLORD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_NECROZMA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MAGEARNA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_MARSHADOW] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 9 }, + [SPECIES_POIPOLE] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 8 }, + [SPECIES_NAGANADEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_STAKATAKA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BLACEPHALON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_ZERAORA] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_MELTAN] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_MELMETAL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_GROOKEY] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 12 }, + [SPECIES_THWACKEY] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 7 }, + [SPECIES_RILLABOOM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_SCORBUNNY] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 8 }, + [SPECIES_RABOOT] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_CINDERACE] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_SOBBLE] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 11 }, + [SPECIES_DRIZZILE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_INTELEON] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_SKWOVET] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_GREEDENT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_ROOKIDEE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 16 }, + [SPECIES_CORVISQUIRE] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_CORVIKNIGHT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_BLIPBUG] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_DOTTLER] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_ORBEETLE] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_NICKIT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_THIEVUL] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GOSSIFLEUR] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 11 }, + [SPECIES_ELDEGOSS] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 4 }, + [SPECIES_WOOLOO] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_DUBWOOL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_CHEWTLE] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 13 }, + [SPECIES_DREDNAW] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_YAMPER] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 10 }, + [SPECIES_BOLTUND] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_ROLYCOLY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 16 }, + [SPECIES_CARKOL] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 8 }, + [SPECIES_COALOSSAL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_APPLIN] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 16 }, + [SPECIES_FLAPPLE] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 9 }, + [SPECIES_APPLETUN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_SILICOBRA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 }, + [SPECIES_SANDACONDA] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 12 }, + [SPECIES_CRAMORANT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARROKUDA] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 13 }, + [SPECIES_BARRASKEWDA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_TOXEL] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_TOXTRICITY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 1 }, + [SPECIES_SIZZLIPEDE] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_CENTISKORCH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_CLOBBOPUS] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 15 }, + [SPECIES_GRAPPLOCT] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 5 }, + [SPECIES_SINISTEA] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_POLTEAGEIST] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_HATENNA] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_HATTREM] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_HATTERENE] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_IMPIDIMP] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_MORGREM] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_GRIMMSNARL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_OBSTAGOON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_PERRSERKER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_CURSOLA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SIRFETCHD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MR_RIME] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 4 }, + [SPECIES_RUNERIGUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MILCERY] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_ALCREMIE] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_FALINKS] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_PINCURCHIN] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_SNOM] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 20 }, + [SPECIES_FROSMOTH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_STONJOURNER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_EISCUE] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_INDEEDEE] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 9 }, + [SPECIES_MORPEKO] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_CUFANT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_COPPERAJAH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_DRACOZOLT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_ARCTOZOLT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_DRACOVISH] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_ARCTOVISH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_DURALUDON] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_DREEPY] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_DRAKLOAK] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_DRAGAPULT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_ZACIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_ZAMAZENTA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ETERNATUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_KUBFU] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 8 }, + [SPECIES_URSHIFU] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ZARUDE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_REGIELEKI] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 5 }, + [SPECIES_REGIDRAGO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_GLASTRIER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SPECTRIER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CALYREX] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_WYRDEER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KLEAVOR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_URSALUNA] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_BASCULEGION] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SNEASLER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_OVERQWIL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ENAMORUS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VENUSAUR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_CHARIZARD_MEGA_X] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CHARIZARD_MEGA_Y] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BLASTOISE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BEEDRILL_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_PIDGEOT_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ALAKAZAM_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SLOWBRO_MEGA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_GENGAR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 7 }, + [SPECIES_KANGASKHAN_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PINSIR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_GYARADOS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_AERODACTYL_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MEWTWO_MEGA_X] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_MEWTWO_MEGA_Y] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_AMPHAROS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_STEELIX_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SCIZOR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HERACROSS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HOUNDOOM_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TYRANITAR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SCEPTILE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BLAZIKEN_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SWAMPERT_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 6 }, + [SPECIES_GARDEVOIR_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SABLEYE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_MAWILE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 5 }, + [SPECIES_AGGRON_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MEDICHAM_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MANECTRIC_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_SHARPEDO_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CAMERUPT_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_ALTARIA_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BANETTE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ABSOL_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_GLALIE_MEGA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_SALAMENCE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_METAGROSS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LATIAS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LATIOS_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LOPUNNY_MEGA] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_GARCHOMP_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LUCARIO_MEGA] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_ABOMASNOW_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_GALLADE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_AUDINO_MEGA] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 6 }, + [SPECIES_DIANCIE_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_RAYQUAZA_MEGA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KYOGRE_PRIMAL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_GROUDON_PRIMAL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_RATTATA_ALOLAN] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_RATICATE_ALOLAN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_RAICHU_ALOLAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SANDSHREW_ALOLAN] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 }, + [SPECIES_SANDSLASH_ALOLAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_VULPIX_ALOLAN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_NINETALES_ALOLAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_DIGLETT_ALOLAN] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 19 }, + [SPECIES_DUGTRIO_ALOLAN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_MEOWTH_ALOLAN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 8 }, + [SPECIES_PERSIAN_ALOLAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 4 }, + [SPECIES_GEODUDE_ALOLAN] = { .size = MON_COORDS_SIZE(48, 32), .y_offset = 17 }, + [SPECIES_GRAVELER_ALOLAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_GOLEM_ALOLAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_GRIMER_ALOLAN] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 11 }, + [SPECIES_MUK_ALOLAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_EXEGGUTOR_ALOLAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MAROWAK_ALOLAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MEOWTH_GALARIAN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PONYTA_GALARIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_RAPIDASH_GALARIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SLOWPOKE_GALARIAN] = { .size = MON_COORDS_SIZE(56, 32), .y_offset = 19 }, + [SPECIES_SLOWBRO_GALARIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_FARFETCHD_GALARIAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 9 }, + [SPECIES_WEEZING_GALARIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MR_MIME_GALARIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_ARTICUNO_GALARIAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ZAPDOS_GALARIAN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_MOLTRES_GALARIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_SLOWKING_GALARIAN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_CORSOLA_GALARIAN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_ZIGZAGOON_GALARIAN] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 }, + [SPECIES_LINOONE_GALARIAN] = { .size = MON_COORDS_SIZE(64, 40), .y_offset = 13 }, + [SPECIES_DARUMAKA_GALARIAN] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_DARMANITAN_GALARIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_YAMASK_GALARIAN] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 13 }, + [SPECIES_STUNFISK_GALARIAN] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_GROWLITHE_HISUIAN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 6 }, + [SPECIES_ARCANINE_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_VOLTORB_HISUIAN] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 0 }, + [SPECIES_ELECTRODE_HISUIAN] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 0 }, + [SPECIES_TYPHLOSION_HISUIAN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 0 }, + [SPECIES_QWILFISH_HISUIAN] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 8 }, + [SPECIES_SNEASEL_HISUIAN] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_SAMUROTT_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_LILLIGANT_HISUIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_ZORUA_HISUIAN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_ZOROARK_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BRAVIARY_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SLIGGOO_HISUIAN] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_GOODRA_HISUIAN] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_AVALUGG_HISUIAN] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 5 }, + [SPECIES_DECIDUEYE_HISUIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PIKACHU_COSPLAY] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_ROCK_STAR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_BELLE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_POP_STAR] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_PH_D] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_LIBRE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_ORIGINAL_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_HOENN_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_SINNOH_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_UNOVA_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_KALOS_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_ALOLA_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_PARTNER_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PIKACHU_WORLD_CAP] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 9 }, + [SPECIES_PICHU_SPIKY_EARED] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_UNOWN_B] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 16 }, + [SPECIES_UNOWN_C] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_D] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_E] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_UNOWN_F] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_UNOWN_G] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 14 }, + [SPECIES_UNOWN_H] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_I] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 16 }, + [SPECIES_UNOWN_J] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 17 }, + [SPECIES_UNOWN_K] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 17 }, + [SPECIES_UNOWN_L] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 19 }, + [SPECIES_UNOWN_M] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 19 }, + [SPECIES_UNOWN_N] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 20 }, + [SPECIES_UNOWN_O] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 16 }, + [SPECIES_UNOWN_P] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 19 }, + [SPECIES_UNOWN_Q] = { .size = MON_COORDS_SIZE(32, 24), .y_offset = 21 }, + [SPECIES_UNOWN_R] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 19 }, + [SPECIES_UNOWN_S] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 12 }, + [SPECIES_UNOWN_T] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 18 }, + [SPECIES_UNOWN_U] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 18 }, + [SPECIES_UNOWN_V] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 18 }, + [SPECIES_UNOWN_W] = { .size = MON_COORDS_SIZE(32, 32), .y_offset = 19 }, + [SPECIES_UNOWN_X] = { .size = MON_COORDS_SIZE(24, 24), .y_offset = 21 }, + [SPECIES_UNOWN_Y] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 17 }, + [SPECIES_UNOWN_Z] = { .size = MON_COORDS_SIZE(24, 32), .y_offset = 16 }, + [SPECIES_UNOWN_EMARK] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 15 }, + [SPECIES_UNOWN_QMARK] = { .size = MON_COORDS_SIZE(24, 40), .y_offset = 13 }, + [SPECIES_CASTFORM_SUNNY] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_CASTFORM_RAINY] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 9 }, + [SPECIES_CASTFORM_SNOWY] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 8 }, + [SPECIES_DEOXYS_ATTACK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_DEOXYS_DEFENSE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_DEOXYS_SPEED] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 1 }, + [SPECIES_BURMY_SANDY_CLOAK] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 12 }, + [SPECIES_BURMY_TRASH_CLOAK] = { .size = MON_COORDS_SIZE(32, 56), .y_offset = 8 }, + [SPECIES_WORMADAM_SANDY_CLOAK] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 10 }, + [SPECIES_WORMADAM_TRASH_CLOAK] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 10 }, + [SPECIES_CHERRIM_SUNSHINE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_SHELLOS_EAST_SEA] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_GASTRODON_EAST_SEA] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 8 }, + [SPECIES_ROTOM_HEAT] = { .size = MON_COORDS_SIZE(56, 48), .y_offset = 10 }, + [SPECIES_ROTOM_WASH] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_ROTOM_FROST] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_ROTOM_FAN] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 8 }, + [SPECIES_ROTOM_MOW] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 12 }, + [SPECIES_DIALGA_ORIGIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PALKIA_ORIGIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_GIRATINA_ORIGIN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SHAYMIN_SKY] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 7 }, + [SPECIES_ARCEUS_FIGHTING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_FLYING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_POISON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_GROUND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_ROCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_BUG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_GHOST] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_STEEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_FIRE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_WATER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_GRASS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_ELECTRIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_PSYCHIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_ICE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_DRAGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_DARK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ARCEUS_FAIRY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_BASCULIN_BLUE_STRIPED] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 16 }, + [SPECIES_BASCULIN_WHITE_STRIPED] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 10 }, + [SPECIES_DARMANITAN_ZEN_MODE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 14 }, + [SPECIES_DARMANITAN_ZEN_MODE_GALARIAN] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_DEERLING_SUMMER] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_DEERLING_AUTUMN] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_DEERLING_WINTER] = { .size = MON_COORDS_SIZE(32, 48), .y_offset = 11 }, + [SPECIES_SAWSBUCK_SUMMER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SAWSBUCK_AUTUMN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SAWSBUCK_WINTER] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_TORNADUS_THERIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_THUNDURUS_THERIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_LANDORUS_THERIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ENAMORUS_THERIAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KYUREM_WHITE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KYUREM_BLACK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_KELDEO_RESOLUTE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_MELOETTA_PIROUETTE] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 2 }, + [SPECIES_GENESECT_DOUSE_DRIVE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_GENESECT_SHOCK_DRIVE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_GENESECT_BURN_DRIVE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_GENESECT_CHILL_DRIVE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_GRENINJA_BATTLE_BOND] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 7 }, + [SPECIES_GRENINJA_ASH] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_POLAR] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_TUNDRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_CONTINENTAL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_GARDEN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_ELEGANT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MEADOW] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MODERN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MARINE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_ARCHIPELAGO] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_HIGH_PLAINS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_SANDSTORM] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_RIVER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_MONSOON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_SAVANNA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_SUN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_OCEAN] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_JUNGLE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_FANCY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_VIVILLON_POKE_BALL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FLABEBE_YELLOW_FLOWER] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_FLABEBE_ORANGE_FLOWER] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_FLABEBE_BLUE_FLOWER] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_FLABEBE_WHITE_FLOWER] = { .size = MON_COORDS_SIZE(48, 56), .y_offset = 6 }, + [SPECIES_FLOETTE_YELLOW_FLOWER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_FLOETTE_ORANGE_FLOWER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_FLOETTE_BLUE_FLOWER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_FLOETTE_WHITE_FLOWER] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 3 }, + [SPECIES_FLOETTE_ETERNAL_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_FLORGES_YELLOW_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FLORGES_ORANGE_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FLORGES_BLUE_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FLORGES_WHITE_FLOWER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_FURFROU_HEART_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_FURFROU_STAR_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_FURFROU_DIAMOND_TRIM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_FURFROU_DEBUTANTE_TRIM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_FURFROU_MATRON_TRIM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_FURFROU_DANDY_TRIM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_FURFROU_LA_REINE_TRIM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_FURFROU_KABUKI_TRIM] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_FURFROU_PHARAOH_TRIM] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_MEOWSTIC_FEMALE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_AEGISLASH_BLADE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_PUMPKABOO_SMALL] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 15 }, + [SPECIES_PUMPKABOO_LARGE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 12 }, + [SPECIES_PUMPKABOO_SUPER] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 10 }, + [SPECIES_GOURGEIST_SMALL] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 5 }, + [SPECIES_GOURGEIST_LARGE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_GOURGEIST_SUPER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_XERNEAS_ACTIVE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ZYGARDE_10] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 2 }, + [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ZYGARDE_COMPLETE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_HOOPA_UNBOUND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ORICORIO_POM_POM] = { .size = MON_COORDS_SIZE(56, 56), .y_offset = 5 }, + [SPECIES_ORICORIO_PAU] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 3 }, + [SPECIES_ORICORIO_SENSU] = { .size = MON_COORDS_SIZE(64, 56), .y_offset = 4 }, + [SPECIES_ROCKRUFF_OWN_TEMPO] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 11 }, + [SPECIES_LYCANROC_MIDNIGHT] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 1 }, + [SPECIES_LYCANROC_DUSK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_WISHIWASHI_SCHOOL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 4 }, + [SPECIES_SILVALLY_FIGHTING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_FLYING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_POISON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_GROUND] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_ROCK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_BUG] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_GHOST] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_STEEL] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_FIRE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_WATER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_GRASS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_ELECTRIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_PSYCHIC] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_ICE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_DRAGON] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_DARK] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_SILVALLY_FAIRY] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MINIOR_METEOR_ORANGE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_YELLOW] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_GREEN] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_BLUE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_INDIGO] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_METEOR_VIOLET] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_RED] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_ORANGE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_YELLOW] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_GREEN] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_BLUE] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_INDIGO] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MINIOR_CORE_VIOLET] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 14 }, + [SPECIES_MIMIKYU_BUSTED] = { .size = MON_COORDS_SIZE(48, 40), .y_offset = 12 }, + [SPECIES_NECROZMA_DUSK_MANE] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_NECROZMA_DAWN_WINGS] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_NECROZMA_ULTRA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_MAGEARNA_ORIGINAL_COLOR] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_CRAMORANT_GULPING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CRAMORANT_GORGING] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_TOXTRICITY_LOW_KEY] = { .size = MON_COORDS_SIZE(48, 64), .y_offset = 2 }, + [SPECIES_SINISTEA_ANTIQUE] = { .size = MON_COORDS_SIZE(40, 32), .y_offset = 17 }, + [SPECIES_POLTEAGEIST_ANTIQUE] = { .size = MON_COORDS_SIZE(48, 48), .y_offset = 11 }, + [SPECIES_ALCREMIE_RUBY_CREAM] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_ALCREMIE_MATCHA_CREAM] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_ALCREMIE_MINT_CREAM] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_ALCREMIE_LEMON_CREAM] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_ALCREMIE_SALTED_CREAM] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_ALCREMIE_RUBY_SWIRL] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_ALCREMIE_CARAMEL_SWIRL] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_ALCREMIE_RAINBOW_SWIRL] = { .size = MON_COORDS_SIZE(40, 56), .y_offset = 7 }, + [SPECIES_EISCUE_NOICE_FACE] = { .size = MON_COORDS_SIZE(40, 64), .y_offset = 0 }, + [SPECIES_INDEEDEE_FEMALE] = { .size = MON_COORDS_SIZE(40, 48), .y_offset = 9 }, + [SPECIES_MORPEKO_HANGRY] = { .size = MON_COORDS_SIZE(32, 40), .y_offset = 14 }, + [SPECIES_ZACIAN_CROWNED_SWORD] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_ZAMAZENTA_CROWNED_SHIELD] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ETERNATUS_ETERNAMAX] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 3 }, + [SPECIES_URSHIFU_RAPID_STRIKE_STYLE] = { .size = MON_COORDS_SIZE(56, 64), .y_offset = 0 }, + [SPECIES_ZARUDE_DADA] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 2 }, + [SPECIES_CALYREX_ICE_RIDER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_CALYREX_SHADOW_RIDER] = { .size = MON_COORDS_SIZE(64, 64), .y_offset = 0 }, + [SPECIES_EGG] = { .size = MON_COORDS_SIZE(24, 24), .y_offset = 20 }, }; diff --git a/src/data/text/move_descriptions.h b/src/data/text/move_descriptions.h index ac7c910d7e20..a4a1941adc97 100644 --- a/src/data/text/move_descriptions.h +++ b/src/data/text/move_descriptions.h @@ -2691,144 +2691,144 @@ static const u8 sVeeveeVolleyDescription[] = _( static const u8 sDoubleIronBashDescription[] = _( "The user spins and hits with\n" "its arms. May cause flinch."); - + // GEN 8 static const u8 sDynamaxCannonDescription[] = _( "Fires a strong beam. Deals\n" "2x damage to Dynamaxed foes."); - + static const u8 sSnipeShotDescription[] = _( "The user ignores effects\n" "that draw in moves."); - + static const u8 sJawLockDescription[] = _( "Prevents the user and\n" "the target from escaping."); - + static const u8 sStuffCheeksDescription[] = _( "Consumes the user's Berry,\n" "then sharply raises Def."); - + static const u8 sNoRetreatDescription[] = _( "Raises all of the user's\n" "stats but prevents escape."); - + static const u8 sTarShotDescription[] = _( "Lowers the foe's Speed and\n" "makes it weak to Fire."); - + static const u8 sMagicPowderDescription[] = _( "Magic powder changes the\n" "target into a Psychic-type."); - + static const u8 sDragonDartsDescription[] = _( "The user attacks twice. Two\n" "targets are hit once each."); - + static const u8 sTeatimeDescription[] = _( "All Pokémon have teatime\n" "and eat their Berries."); - + static const u8 sOctolockDescription[] = _( "Traps the foe to lower Def\n" "and Sp. Def fall each turn."); - + static const u8 sBoltBeakDescription[] = _( "Double power if the user\n" "moves before the target."); - + static const u8 sFishiousRendDescription[] = _( "Double power if the user\n" "moves before the target."); - + static const u8 sCourtChangeDescription[] = _( "The user swaps effects on\n" "either side of the field."); - + static const u8 sClangorousSoulDescription[] = _( "The user uses some of its\n" "HP to raise all its stats."); - + static const u8 sBodyPressDescription[] = _( "Does more damage the\n" "higher the user's Def."); - + static const u8 sDecorateDescription[] = _( "The user sharply raises\n" "the target's Atk and Sp.Atk"); - + static const u8 sDrumBeatingDescription[] = _( "Plays a drum to attack.\n" "The foe's Speed is lowered."); - + static const u8 sSnapTrapDescription[] = _( "Snares the target in a snap\n" "trap for four to five turns."); - + static const u8 sPyroBallDescription[] = _( "Launches a fiery ball at the\n" "target. It may cause a burn."); - + static const u8 sBehemothBladeDescription[] = _( "Strikes as a sword. Deals 2x\n" "damage to Dynamaxed foes."); - + static const u8 sBehemothBashDescription[] = _( "Attacks as a shield. Deals 2x\n" "damage to Dynamaxed foes."); - + static const u8 sAuraWheelDescription[] = _( "Raises Speed to attack. The\n" "Type is based on its form."); - + static const u8 sBreakingSwipeDescription[] = _( "Swings its tail to attack.\n" "Lowers the Atk of those hit."); - + static const u8 sBranchPokeDescription[] = _( "The user pokes the target\n" "with a pointed branch."); - + static const u8 sOverdriveDescription[] = _( "The user twangs its guitar,\n" "causing strong vibrations."); - + static const u8 sAppleAcidDescription[] = _( "Attacks with tart apple acid\n" "to lower the foe's Sp. Def."); - + static const u8 sGravAppleDescription[] = _( "Drops an apple from above.\n" "Lowers the foe's Defense."); - + static const u8 sSpiritBreakDescription[] = _( "Attacks with spirit-breaking\n" "force. Lowers Sp. Atk."); - + static const u8 sStrangeSteamDescription[] = _( "Emits a strange steam to\n" "potentially confuse the foe."); - + static const u8 sLifeDewDescription[] = _( "Scatters water to restore\n" "the HP of itself and allies."); - + static const u8 sObstructDescription[] = _( "Protects itself, harshly\n" "lowering Def on contact."); - + static const u8 sFalseSurrenderDescription[] = _( "Bows to stab the foe\n" "with hair. It never misses."); - + static const u8 sMeteorAssaultDescription[] = _( "Attacks with a thick leek.\n" "The user must then rest."); - + static const u8 sEternabeamDescription[] = _( "Eternatus' strongest move.\n" "The user rests next turn."); - + static const u8 sSteelBeamDescription[] = _( "Fires a beam of steel from\n" "its body. It hurts the user."); diff --git a/src/data/text/move_names.h b/src/data/text/move_names.h index ffa00e3f63fd..5f0a741cb4f4 100644 --- a/src/data/text/move_names.h +++ b/src/data/text/move_names.h @@ -1604,7 +1604,7 @@ static const u8 sText_Menacing_Moonraze_Maelstrom[] = _("Menacing Moonraze Maels static const u8 sText_Light_That_Burns_The_Sky[] = _("Light That Burns The Sky"); static const u8 sText_Soul_Stealing_7_Star_Strike[] = _("Soul Stealing 7 Star Strike"); -const u8 *const gZMoveNames[] = +const u8 *const gZMoveNames[] = { [MOVE_BREAKNECK_BLITZ - FIRST_Z_MOVE] = sText_Breakneck_Blitz, [MOVE_ALL_OUT_PUMMELING - FIRST_Z_MOVE] = sText_All_Out_Pummeling, diff --git a/src/data/union_room.h b/src/data/union_room.h index cf4b12b5d559..07f8e48994a6 100644 --- a/src/data/union_room.h +++ b/src/data/union_room.h @@ -885,6 +885,7 @@ static const struct ListMenuItem sTradingBoardTypes[NUMBER_OF_MON_TYPES] = { { gTypeNames[TYPE_DRAGON], TYPE_DRAGON }, { gTypeNames[TYPE_STEEL], TYPE_STEEL }, { gTypeNames[TYPE_DARK], TYPE_DARK }, + { gTypeNames[TYPE_FAIRY], TYPE_FAIRY }, { sText_Exit, NUMBER_OF_MON_TYPES } }; diff --git a/src/daycare.c b/src/daycare.c index 6108c6daa820..18bc45eb013c 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -261,7 +261,7 @@ static u16 TakeSelectedPokemonFromDaycare(struct DaycareMon *daycareMon) CalculateMonStats(&pokemon); species = newSpecies; } - + if (GetMonData(&pokemon, MON_DATA_LEVEL) != MAX_LEVEL) { experience = GetMonData(&pokemon, MON_DATA_EXP) + daycareMon->steps; @@ -1359,7 +1359,7 @@ static u8 ModifyBreedingScoreForOvalCharm(u8 score) return 88; } } - + return score; } diff --git a/src/debug.c b/src/debug.c index 4cc1ac616824..7c99ad2c285a 100644 --- a/src/debug.c +++ b/src/debug.c @@ -18,6 +18,7 @@ #include "event_scripts.h" #include "field_message_box.h" #include "field_screen_effect.h" +#include "field_weather.h" #include "international_string_util.h" #include "item.h" #include "item_icon.h" @@ -55,6 +56,7 @@ #include "constants/rgb.h" #include "constants/songs.h" #include "constants/species.h" +#include "constants/weather.h" #if DEBUG_SYSTEM_ENABLE == TRUE // ******************************* @@ -76,6 +78,7 @@ enum { // Util DEBUG_UTIL_MENU_ITEM_RUNNING_SHOES, DEBUG_UTIL_MENU_ITEM_POISON_MONS, DEBUG_UTIL_MENU_ITEM_SAVEBLOCK, + DEBUG_UTIL_MENU_ITEM_WEATHER, DEBUG_UTIL_MENU_ITEM_CHECKWALLCLOCK, DEBUG_UTIL_MENU_ITEM_SETWALLCLOCK, DEBUG_UTIL_MENU_ITEM_WATCHCREDITS, @@ -135,6 +138,8 @@ enum { //Sound #define DEBUG_NUMBER_DISPLAY_WIDTH 10 #define DEBUG_NUMBER_DISPLAY_HEIGHT 4 +#define DEBUG_NUMBER_DISPLAY_MEDIUM_WIDTH 15 +#define DEBUG_NUMBER_DISPLAY_MEDIUM_HEIGHT 3 #define DEBUG_NUMBER_DISPLAY_SOUND_WIDTH 20 #define DEBUG_NUMBER_DISPLAY_SOUND_HEIGHT 6 @@ -174,32 +179,33 @@ struct DebugMonData // Define functions static void Debug_ShowMenu(void (*HandleInput)(u8), struct ListMenuTemplate LMtemplate); void Debug_ShowMainMenu(void); -static void Debug_DestroyMenu(u8); -static void DebugAction_Cancel(u8); +static void Debug_DestroyMenu(u8 taskId); +static void Debug_DestroyMenu_Full(u8 taskId); +static void DebugAction_Cancel(u8 taskId); static void DebugAction_DestroyExtraWindow(u8 taskId); -static void DebugAction_Util_Script_1(u8); -static void DebugAction_Util_Script_2(u8); -static void DebugAction_Util_Script_3(u8); -static void DebugAction_Util_Script_4(u8); -static void DebugAction_Util_Script_5(u8); -static void DebugAction_Util_Script_6(u8); -static void DebugAction_Util_Script_7(u8); -static void DebugAction_Util_Script_8(u8); - -static void DebugAction_OpenUtilitiesMenu(u8); -static void DebugAction_OpenScriptsMenu(u8); -static void DebugAction_OpenFlagsMenu(u8); -static void DebugAction_OpenVariablesMenu(u8); -static void DebugAction_OpenGiveMenu(u8); -static void DebugAction_OpenSoundMenu(u8); -static void DebugTask_HandleMenuInput_Main(u8); -static void DebugTask_HandleMenuInput_Utilities(u8); -static void DebugTask_HandleMenuInput_Scripts(u8); -static void DebugTask_HandleMenuInput_Flags(u8); -static void DebugTask_HandleMenuInput_Vars(u8); -static void DebugTask_HandleMenuInput_Give(u8); -static void DebugTask_HandleMenuInput_Sound(u8); +static void DebugAction_Util_Script_1(u8 taskId); +static void DebugAction_Util_Script_2(u8 taskId); +static void DebugAction_Util_Script_3(u8 taskId); +static void DebugAction_Util_Script_4(u8 taskId); +static void DebugAction_Util_Script_5(u8 taskId); +static void DebugAction_Util_Script_6(u8 taskId); +static void DebugAction_Util_Script_7(u8 taskId); +static void DebugAction_Util_Script_8(u8 taskId); + +static void DebugAction_OpenUtilitiesMenu(u8 taskId); +static void DebugAction_OpenScriptsMenu(u8 taskId); +static void DebugAction_OpenFlagsMenu(u8 taskId); +static void DebugAction_OpenVariablesMenu(u8 taskId); +static void DebugAction_OpenGiveMenu(u8 taskId); +static void DebugAction_OpenSoundMenu(u8 taskId); +static void DebugTask_HandleMenuInput_Main(u8 taskId); +static void DebugTask_HandleMenuInput_Utilities(u8 taskId); +static void DebugTask_HandleMenuInput_Scripts(u8 taskId); +static void DebugTask_HandleMenuInput_Flags(u8 taskId); +static void DebugTask_HandleMenuInput_Vars(u8 taskId); +static void DebugTask_HandleMenuInput_Give(u8 taskId); +static void DebugTask_HandleMenuInput_Sound(u8 taskId); static void DebugAction_Util_HealParty(u8 taskId); static void DebugAction_Util_Fly(u8 taskId); @@ -209,13 +215,15 @@ static void DebugAction_Util_Warp_SelectMap(u8 taskId); static void DebugAction_Util_Warp_SelectWarp(u8 taskId); static void DebugAction_Util_RunningShoes(u8 taskId); static void DebugAction_Util_PoisonMons(u8 taskId); -static void DebugAction_Util_CheckSaveBlock(u8); -static void DebugAction_Util_CheckWallClock(u8); -static void DebugAction_Util_SetWallClock(u8); -static void DebugAction_Util_WatchCredits(u8); -static void DebugAction_Util_Trainer_Name(u8); -static void DebugAction_Util_Trainer_Gender(u8); -static void DebugAction_Util_Trainer_Id(u8); +static void DebugAction_Util_CheckSaveBlock(u8 taskId); +static void DebugAction_Util_Weather(u8 taskId); +static void DebugAction_Util_Weather_SelectId(u8 taskId); +static void DebugAction_Util_CheckWallClock(u8 taskId); +static void DebugAction_Util_SetWallClock(u8 taskId); +static void DebugAction_Util_WatchCredits(u8 taskId); +static void DebugAction_Util_Trainer_Name(u8 taskId); +static void DebugAction_Util_Trainer_Gender(u8 taskId); +static void DebugAction_Util_Trainer_Id(u8 taskId); static void DebugAction_Flags_Flags(u8 taskId); static void DebugAction_Flags_FlagsSelect(u8 taskId); @@ -282,10 +290,7 @@ extern u8 Debug_CheatStart[]; extern u8 PlayersHouse_2F_EventScript_SetWallClock[]; extern u8 PlayersHouse_2F_EventScript_CheckWallClock[]; - -// ******************************* -//Maps per map group COPY FROM /include/constants/map_groups.h -static const u8 MAP_GROUP_COUNT[] = {57, 5, 5, 6, 7, 8, 9, 7, 7, 14, 8, 17, 10, 23, 13, 15, 15, 2, 2, 2, 3, 1, 1, 1, 108, 61, 89, 2, 1, 13, 1, 1, 3, 1, 0}; +#include "data/map_group_count.h" // Text // Main Menu @@ -316,6 +321,8 @@ static const u8 gDebugText_Util_WarpToMap_SelMax[] = _("{STR_VAR_1} / {S static const u8 gDebugText_Util_RunningShoes[] = _("Toggle Running Shoes"); static const u8 gDebugText_Util_PoisonMons[] = _("Poison all mons"); static const u8 gDebugText_Util_SaveBlockSpace[] = _("SaveBlock Space"); +static const u8 gDebugText_Util_Weather[] = _("Set weather"); +static const u8 gDebugText_Util_Weather_ID[] = _("Weather Id: {STR_VAR_3}\n{STR_VAR_1}\n{STR_VAR_2}"); static const u8 gDebugText_Util_CheckWallClock[] = _("Check Wall Clock"); static const u8 gDebugText_Util_SetWallClock[] = _("Set Wall Clock"); static const u8 gDebugText_Util_WatchCredits[] = _("Watch Credits"); @@ -436,6 +443,7 @@ static const struct ListMenuItem sDebugMenu_Items_Utilities[] = [DEBUG_UTIL_MENU_ITEM_RUNNING_SHOES] = {gDebugText_Util_RunningShoes, DEBUG_UTIL_MENU_ITEM_RUNNING_SHOES}, [DEBUG_UTIL_MENU_ITEM_POISON_MONS] = {gDebugText_Util_PoisonMons, DEBUG_UTIL_MENU_ITEM_POISON_MONS}, [DEBUG_UTIL_MENU_ITEM_SAVEBLOCK] = {gDebugText_Util_SaveBlockSpace, DEBUG_UTIL_MENU_ITEM_SAVEBLOCK}, + [DEBUG_UTIL_MENU_ITEM_WEATHER] = {gDebugText_Util_Weather, DEBUG_UTIL_MENU_ITEM_WEATHER}, [DEBUG_UTIL_MENU_ITEM_CHECKWALLCLOCK] = {gDebugText_Util_CheckWallClock, DEBUG_UTIL_MENU_ITEM_CHECKWALLCLOCK}, [DEBUG_UTIL_MENU_ITEM_SETWALLCLOCK] = {gDebugText_Util_SetWallClock, DEBUG_UTIL_MENU_ITEM_SETWALLCLOCK}, [DEBUG_UTIL_MENU_ITEM_WATCHCREDITS] = {gDebugText_Util_WatchCredits, DEBUG_UTIL_MENU_ITEM_WATCHCREDITS}, @@ -514,6 +522,7 @@ static void (*const sDebugMenu_Actions_Utilities[])(u8) = [DEBUG_UTIL_MENU_ITEM_RUNNING_SHOES] = DebugAction_Util_RunningShoes, [DEBUG_UTIL_MENU_ITEM_POISON_MONS] = DebugAction_Util_PoisonMons, [DEBUG_UTIL_MENU_ITEM_SAVEBLOCK] = DebugAction_Util_CheckSaveBlock, + [DEBUG_UTIL_MENU_ITEM_WEATHER] = DebugAction_Util_Weather, [DEBUG_UTIL_MENU_ITEM_CHECKWALLCLOCK] = DebugAction_Util_CheckWallClock, [DEBUG_UTIL_MENU_ITEM_SETWALLCLOCK] = DebugAction_Util_SetWallClock, [DEBUG_UTIL_MENU_ITEM_WATCHCREDITS] = DebugAction_Util_WatchCredits, @@ -594,6 +603,16 @@ static const struct WindowTemplate sDebugNumberDisplayWindowTemplate = .paletteNum = 15, .baseBlock = 1, }; +static const struct WindowTemplate sDebugNumberDisplayMediumWindowTemplate = +{ + .bg = 0, + .tilemapLeft = 30 - DEBUG_NUMBER_DISPLAY_MEDIUM_WIDTH - 1, + .tilemapTop = 1, + .width = DEBUG_NUMBER_DISPLAY_MEDIUM_WIDTH, + .height = 2 * DEBUG_NUMBER_DISPLAY_MEDIUM_HEIGHT, + .paletteNum = 15, + .baseBlock = 1, +}; static const struct WindowTemplate sDebugNumberDisplayLargeWindowTemplate = { .bg = 0, @@ -697,15 +716,22 @@ static void Debug_ShowMenu(void (*HandleInput)(u8), struct ListMenuTemplate LMte gTasks[inputTaskId].data[1] = windowId; } static void Debug_DestroyMenu(u8 taskId) +{ + DestroyListMenuTask(gTasks[taskId].data[0], NULL, NULL); + RemoveWindow(gTasks[taskId].data[1]); + DestroyTask(taskId); +} +static void Debug_DestroyMenu_Full(u8 taskId) { DestroyListMenuTask(gTasks[taskId].data[0], NULL, NULL); ClearStdWindowAndFrame(gTasks[taskId].data[1], TRUE); RemoveWindow(gTasks[taskId].data[1]); DestroyTask(taskId); + UnfreezeObjectEvents(); } static void DebugAction_Cancel(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); ScriptContext_Enable(); } static void DebugAction_DestroyExtraWindow(u8 taskId) @@ -718,6 +744,7 @@ static void DebugAction_DestroyExtraWindow(u8 taskId) DestroyTask(taskId); ScriptContext_Enable(); + UnfreezeObjectEvents(); } @@ -737,7 +764,7 @@ static void DebugTask_HandleMenuInput_Main(u8 taskId) else if (gMain.newKeys & B_BUTTON) { PlaySE(SE_SELECT); - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); ScriptContext_Enable(); } } @@ -891,7 +918,7 @@ static void DebugAction_Util_HealParty(u8 taskId) PlaySE(SE_USE_ITEM); HealPlayerParty(); ScriptContext_Enable(); - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); } static void DebugAction_Util_Fly(u8 taskId) { @@ -913,7 +940,7 @@ static void DebugAction_Util_Fly(u8 taskId) FlagSet(FLAG_VISITED_EVER_GRANDE_CITY); FlagSet(FLAG_LANDMARK_POKEMON_LEAGUE); FlagSet(FLAG_LANDMARK_BATTLE_FRONTIER); - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); SetMainCallback2(CB2_OpenFlyMap); } @@ -1014,23 +1041,23 @@ static void DebugAction_Util_Warp_SelectMap(u8 taskId) if (gMain.newKeys & DPAD_UP) { gTasks[taskId].data[3] += sPowersOfTen[gTasks[taskId].data[4]]; - if(gTasks[taskId].data[3] > max_value - 1) + if (gTasks[taskId].data[3] > max_value - 1) gTasks[taskId].data[3] = max_value - 1; } - if(gMain.newKeys & DPAD_DOWN) + if (gMain.newKeys & DPAD_DOWN) { gTasks[taskId].data[3] -= sPowersOfTen[gTasks[taskId].data[4]]; if (gTasks[taskId].data[3] < 0) gTasks[taskId].data[3] = 0; } - if(gMain.newKeys & DPAD_LEFT) + if (gMain.newKeys & DPAD_LEFT) { if (gTasks[taskId].data[4] > 0) gTasks[taskId].data[4] -= 1; } if (gMain.newKeys & DPAD_RIGHT) { - if(gTasks[taskId].data[4] < 2) + if (gTasks[taskId].data[4] < 2) gTasks[taskId].data[4] += 1; } @@ -1066,16 +1093,16 @@ static void DebugAction_Util_Warp_SelectWarp(u8 taskId) if (gMain.newKeys & DPAD_ANY) { PlaySE(SE_SELECT); - if(gMain.newKeys & DPAD_UP) + if (gMain.newKeys & DPAD_UP) { gTasks[taskId].data[3] += sPowersOfTen[gTasks[taskId].data[4]]; - if(gTasks[taskId].data[3] > 10) + if (gTasks[taskId].data[3] > 10) gTasks[taskId].data[3] = 10; } - if(gMain.newKeys & DPAD_DOWN) + if (gMain.newKeys & DPAD_DOWN) { gTasks[taskId].data[3] -= sPowersOfTen[gTasks[taskId].data[4]]; - if(gTasks[taskId].data[3] < 0) + if (gTasks[taskId].data[3] < 0) gTasks[taskId].data[3] = 0; } @@ -1141,26 +1168,130 @@ static void DebugAction_Util_CheckSaveBlock(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, sizeof(struct PokemonStorage), STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gDebugText_SaveBlockSize); - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_ShowFieldMessageStringVar4); } + +static const u8 sWeatherNames[22][24] = { + [WEATHER_NONE] = _("NONE"), + [WEATHER_SUNNY_CLOUDS] = _("SUNNY CLOUDS"), + [WEATHER_SUNNY] = _("SUNNY"), + [WEATHER_RAIN] = _("RAIN"), + [WEATHER_SNOW] = _("SNOW"), + [WEATHER_RAIN_THUNDERSTORM] = _("RAIN THUNDERSTORM"), + [WEATHER_FOG_HORIZONTAL] = _("FOG HORIZONTAL"), + [WEATHER_VOLCANIC_ASH] = _("VOLCANIC ASH"), + [WEATHER_SANDSTORM] = _("SANDSTORM"), + [WEATHER_FOG_DIAGONAL] = _("FOG DIAGONAL"), + [WEATHER_UNDERWATER] = _("UNDERWATER"), + [WEATHER_SHADE] = _("SHADE"), + [WEATHER_DROUGHT] = _("DROUGHT"), + [WEATHER_DOWNPOUR] = _("DOWNPOUR"), + [WEATHER_UNDERWATER_BUBBLES] = _("UNDERWATER BUBBLES"), + [WEATHER_ABNORMAL] = _("ABNORMAL(NOT WORKING)"), + [WEATHER_ROUTE119_CYCLE] = _("ROUTE119 CYCLE"), + [WEATHER_ROUTE123_CYCLE] = _("ROUTE123 CYCLE"), +}; +static const u8 sText_WeatherNotDefined[] = _("NOT DEFINED!!!"); +static void DebugAction_Util_Weather(u8 taskId) +{ + u8 windowId; + + ClearStdWindowAndFrame(gTasks[taskId].data[1], TRUE); + RemoveWindow(gTasks[taskId].data[1]); + + HideMapNamePopUpWindow(); + LoadMessageBoxAndBorderGfx(); + windowId = AddWindow(&sDebugNumberDisplayMediumWindowTemplate); + DrawStdWindowFrame(windowId, FALSE); + + CopyWindowToVram(windowId, 3); + + //Display initial ID + StringCopy(gStringVar2, gText_DigitIndicator[0]); + ConvertIntToDecimalStringN(gStringVar3, 1, STR_CONV_MODE_LEADING_ZEROS, 2); + StringCopyPadded(gStringVar1, sWeatherNames[0], CHAR_SPACE, 30); + StringExpandPlaceholders(gStringVar4, gDebugText_Util_Weather_ID); + AddTextPrinterParameterized(windowId, 1, gStringVar4, 1, 1, 0, NULL); + + gTasks[taskId].func = DebugAction_Util_Weather_SelectId; + gTasks[taskId].data[2] = windowId; + gTasks[taskId].data[3] = 0; //Current ID + gTasks[taskId].data[4] = 0; //Digit Selected +} +static void DebugAction_Util_Weather_SelectId(u8 taskId) +{ + if (gMain.newKeys & DPAD_ANY) + { + PlaySE(SE_SELECT); + + if (gMain.newKeys & DPAD_UP) + { + gTasks[taskId].data[3] += sPowersOfTen[gTasks[taskId].data[4]]; + if (gTasks[taskId].data[3] > WEATHER_ROUTE123_CYCLE) + gTasks[taskId].data[3] = WEATHER_ROUTE123_CYCLE; + } + if (gMain.newKeys & DPAD_DOWN) + { + gTasks[taskId].data[3] -= sPowersOfTen[gTasks[taskId].data[4]]; + if (gTasks[taskId].data[3] < WEATHER_NONE) + gTasks[taskId].data[3] = WEATHER_NONE; + } + if (gMain.newKeys & DPAD_LEFT) + { + if (gTasks[taskId].data[4] > 0) + gTasks[taskId].data[4] -= 1; + } + if (gMain.newKeys & DPAD_RIGHT) + { + if (gTasks[taskId].data[4] < 2) + gTasks[taskId].data[4] += 1; + } + + StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].data[4]]); + ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].data[3], STR_CONV_MODE_LEADING_ZEROS, 2); + + if (gTasks[taskId].data[3] <= 15 || gTasks[taskId].data[3] >= 20) + StringCopyPadded(gStringVar1, sWeatherNames[gTasks[taskId].data[3]], CHAR_SPACE, 30); + else + StringCopyPadded(gStringVar1, sText_WeatherNotDefined, CHAR_SPACE, 30); + + StringExpandPlaceholders(gStringVar4, gDebugText_Util_Weather_ID); + AddTextPrinterParameterized(gTasks[taskId].data[2], 1, gStringVar4, 1, 1, 0, NULL); + } + + if (gMain.newKeys & A_BUTTON) + { + if (gTasks[taskId].data[3] <= 14 || gTasks[taskId].data[3] >= 20) + { + gTasks[taskId].data[5] = gTasks[taskId].data[3]; + SetWeather(gTasks[taskId].data[5]); + } + } + else if (gMain.newKeys & B_BUTTON) + { + PlaySE(SE_SELECT); + DebugAction_DestroyExtraWindow(taskId); + } +} + static void DebugAction_Util_CheckWallClock(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(PlayersHouse_2F_EventScript_CheckWallClock); } static void DebugAction_Util_SetWallClock(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(PlayersHouse_2F_EventScript_SetWallClock); } static void DebugAction_Util_WatchCredits(u8 taskId) { struct Task* task = &gTasks[taskId]; - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); SetMainCallback2(CB2_StartCreditsSequence); } static void DebugAction_Util_Trainer_Name(u8 taskId) @@ -1170,18 +1301,18 @@ static void DebugAction_Util_Trainer_Name(u8 taskId) } static void DebugAction_Util_Trainer_Gender(u8 taskId) { - if(gSaveBlock2Ptr->playerGender == 0) // 0 Male, 1 Female + if (gSaveBlock2Ptr->playerGender == 0) // 0 Male, 1 Female gSaveBlock2Ptr->playerGender = 1; else gSaveBlock2Ptr->playerGender = 0; + Debug_DestroyMenu_Full(taskId); ScriptContext_Enable(); - Debug_DestroyMenu(taskId); } static void DebugAction_Util_Trainer_Id(u8 taskId) { u32 trainerId = ((Random() << 16) | Random()); SetTrainerId(trainerId, gSaveBlock2Ptr->playerTrainerId); - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); ScriptContext_Enable(); } @@ -1189,49 +1320,49 @@ static void DebugAction_Util_Trainer_Id(u8 taskId) // Actions Scripts static void DebugAction_Util_Script_1(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_1); } static void DebugAction_Util_Script_2(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_2); } static void DebugAction_Util_Script_3(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_3); } static void DebugAction_Util_Script_4(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_4); } static void DebugAction_Util_Script_5(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_5); } static void DebugAction_Util_Script_6(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_6); } static void DebugAction_Util_Script_7(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_7); } static void DebugAction_Util_Script_8(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_Script_8); } @@ -1253,10 +1384,10 @@ static void DebugAction_Flags_Flags(u8 taskId) CopyWindowToVram(windowId, 3); //Display initial Flag - ConvertIntToDecimalStringN(gStringVar1, 0, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_FLAGS); - ConvertIntToHexStringN(gStringVar2, 0, STR_CONV_MODE_LEFT_ALIGN, 3); + ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_FLAGS); + ConvertIntToHexStringN(gStringVar2, 1, STR_CONV_MODE_LEFT_ALIGN, 3); StringExpandPlaceholders(gStringVar1, gDebugText_Flags_FlagHex); - if (FlagGet(0) == TRUE) + if (FlagGet(FLAG_TEMP_1) == TRUE) StringCopyPadded(gStringVar2, gDebugText_Flags_FlagSet, CHAR_SPACE, 15); else StringCopyPadded(gStringVar2, gDebugText_Flags_FlagUnset, CHAR_SPACE, 15); @@ -1266,8 +1397,8 @@ static void DebugAction_Flags_Flags(u8 taskId) gTasks[taskId].func = DebugAction_Flags_FlagsSelect; gTasks[taskId].data[2] = windowId; - gTasks[taskId].data[3] = 0; //Current Flag - gTasks[taskId].data[4] = 0; //Digit Selected + gTasks[taskId].data[3] = FLAG_TEMP_1; //Current Flag + gTasks[taskId].data[4] = 0; //Digit Selected } static void DebugAction_Flags_FlagsSelect(u8 taskId) { @@ -1292,8 +1423,8 @@ static void DebugAction_Flags_FlagsSelect(u8 taskId) { PlaySE(SE_SELECT); gTasks[taskId].data[3] -= sPowersOfTen[gTasks[taskId].data[4]]; - if (gTasks[taskId].data[3] < 0){ - gTasks[taskId].data[3] = 0; + if (gTasks[taskId].data[3] < 1){ + gTasks[taskId].data[3] = 1; } } if (gMain.newKeys & DPAD_LEFT) @@ -1338,7 +1469,7 @@ static void DebugAction_Flags_SetPokedexFlags(u8 taskId) GetSetPokedexFlag(i + 1, FLAG_SET_CAUGHT); GetSetPokedexFlag(i + 1, FLAG_SET_SEEN); } - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); ScriptContext_Enable(); } static void DebugAction_Flags_SwitchDex(u8 taskId) @@ -1426,7 +1557,7 @@ static void DebugAction_Flags_ToggleFrontierPass(u8 taskId) static void DebugAction_Flags_CollisionOnOff(u8 taskId) { #if DEBUG_FLAG_NO_COLLISION == 0 - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_FlagsNotSetMessage); #else @@ -1440,7 +1571,7 @@ static void DebugAction_Flags_CollisionOnOff(u8 taskId) static void DebugAction_Flags_EncounterOnOff(u8 taskId) { #if OW_FLAG_NO_ENCOUNTER == 0 - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_FlagsNotSetMessage); #else @@ -1454,7 +1585,7 @@ static void DebugAction_Flags_EncounterOnOff(u8 taskId) static void DebugAction_Flags_TrainerSeeOnOff(u8 taskId) { #if OW_FLAG_NO_TRAINER_SEE == 0 - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_FlagsNotSetMessage); #else @@ -1468,7 +1599,7 @@ static void DebugAction_Flags_TrainerSeeOnOff(u8 taskId) static void DebugAction_Flags_BagUseOnOff(u8 taskId) { #if B_FLAG_NO_BAG_USE == 0 - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_FlagsNotSetMessage); #else @@ -1482,7 +1613,7 @@ static void DebugAction_Flags_BagUseOnOff(u8 taskId) static void DebugAction_Flags_CatchingOnOff(u8 taskId) { #if B_FLAG_NO_CATCHING_USE == 0 - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_FlagsNotSetMessage); #else @@ -1493,7 +1624,7 @@ static void DebugAction_Flags_CatchingOnOff(u8 taskId) FlagToggle(B_FLAG_NO_CATCHING); #endif } - + // ******************************* // Actions Variables static void DebugAction_Vars_Vars(u8 taskId) @@ -1532,7 +1663,7 @@ static void DebugAction_Vars_Select(u8 taskId) if (gMain.newKeys & DPAD_UP) { gTasks[taskId].data[3] += sPowersOfTen[gTasks[taskId].data[4]]; - if(gTasks[taskId].data[3] > VARS_END) + if (gTasks[taskId].data[3] > VARS_END) gTasks[taskId].data[3] = VARS_END; } if (gMain.newKeys & DPAD_DOWN) @@ -1544,7 +1675,7 @@ static void DebugAction_Vars_Select(u8 taskId) if (gMain.newKeys & DPAD_LEFT) { gTasks[taskId].data[4] -= 1; - if(gTasks[taskId].data[4] < 0) + if (gTasks[taskId].data[4] < 0) gTasks[taskId].data[4] = 0; } if (gMain.newKeys & DPAD_RIGHT) @@ -1604,7 +1735,7 @@ static void DebugAction_Vars_Select(u8 taskId) } static void DebugAction_Vars_SetValue(u8 taskId) { - if(gMain.newKeys & DPAD_UP) + if (gMain.newKeys & DPAD_UP) { if (gTasks[taskId].data[6] + sPowersOfTen[gTasks[taskId].data[4]] <= 32000) gTasks[taskId].data[6] += sPowersOfTen[gTasks[taskId].data[4]]; @@ -1614,7 +1745,7 @@ static void DebugAction_Vars_SetValue(u8 taskId) if (gTasks[taskId].data[6] >= 32000) gTasks[taskId].data[6] = 32000 - 1; } - if(gMain.newKeys & DPAD_DOWN) + if (gMain.newKeys & DPAD_DOWN) { gTasks[taskId].data[6] -= sPowersOfTen[gTasks[taskId].data[4]]; if (gTasks[taskId].data[6] < 0){ @@ -1710,7 +1841,7 @@ static void DebugAction_Give_Item_SelectId(u8 taskId) if (gMain.newKeys & DPAD_UP) { gTasks[taskId].data[3] += sPowersOfTen[gTasks[taskId].data[4]]; - if(gTasks[taskId].data[3] >= ITEMS_COUNT) + if (gTasks[taskId].data[3] >= ITEMS_COUNT) gTasks[taskId].data[3] = ITEMS_COUNT - 1; } if (gMain.newKeys & DPAD_DOWN) @@ -1721,7 +1852,7 @@ static void DebugAction_Give_Item_SelectId(u8 taskId) } if (gMain.newKeys & DPAD_LEFT) { - if(gTasks[taskId].data[4] > 0) + if (gTasks[taskId].data[4] > 0) gTasks[taskId].data[4] -= 1; } if (gMain.newKeys & DPAD_RIGHT) @@ -1841,7 +1972,7 @@ static void DebugAction_Give_AllTMs(u8 taskId) if (ItemIdToBattleMoveId(i) != MOVE_NONE && !CheckBagHasItem(i, 1)) AddBagItem(i, 1); } - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); ScriptContext_Enable(); } @@ -2141,7 +2272,7 @@ static void DebugAction_Give_Pokemon_SelectNature(u8 taskId) if (gMain.newKeys & DPAD_DOWN) { gTasks[taskId].data[3] -= sPowersOfTen[gTasks[taskId].data[4]]; - if(gTasks[taskId].data[3] < 0) + if (gTasks[taskId].data[3] < 0) gTasks[taskId].data[3] = 0; } @@ -2589,7 +2720,7 @@ static void DebugAction_Give_Pokemon_ComplexCreateMon(u8 taskId) //https://githu } //Pokedex entry - nationalDexNum = SpeciesToNationalPokedexNum(species); + nationalDexNum = SpeciesToNationalPokedexNum(species); switch(sentToPc) { case MON_GIVEN_TO_PARTY: @@ -2656,7 +2787,7 @@ static void DebugAction_Give_FillPC(u8 taskId) //Credit: Sierraffinity static void DebugAction_Give_CHEAT(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); LockPlayerFieldControls(); ScriptContext_SetupScript(Debug_CheatStart); } @@ -2673,7 +2804,7 @@ static void Task_WaitFadeAccessPC(u8 taskId) static void DebugAction_AccessPC(u8 taskId) { - Debug_DestroyMenu(taskId); + Debug_DestroyMenu_Full(taskId); CleanupOverworldWindowsAndTilemaps(); BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK); CreateTask(Task_WaitFadeAccessPC, 0); @@ -2839,544 +2970,544 @@ static void DebugAction_Sound_MUS_SelectId(u8 taskId) } #define SOUND_LIST_BGM \ - X(MUS_LITTLEROOT_TEST, "MUS-LITTLEROOT-TEST") \ - X(MUS_GSC_ROUTE38, "MUS-GSC-ROUTE38") \ - X(MUS_CAUGHT, "MUS-CAUGHT") \ - X(MUS_VICTORY_WILD, "MUS-VICTORY-WILD") \ - X(MUS_VICTORY_GYM_LEADER, "MUS-VICTORY-GYM-LEADER") \ - X(MUS_VICTORY_LEAGUE, "MUS-VICTORY-LEAGUE") \ - X(MUS_C_COMM_CENTER, "MUS-C-COMM-CENTER") \ - X(MUS_GSC_PEWTER, "MUS-GSC-PEWTER") \ - X(MUS_C_VS_LEGEND_BEAST, "MUS-C-VS-LEGEND-BEAST") \ - X(MUS_ROUTE101, "MUS-ROUTE101") \ - X(MUS_ROUTE110, "MUS-ROUTE110") \ - X(MUS_ROUTE120, "MUS-ROUTE120") \ - X(MUS_PETALBURG, "MUS-PETALBURG") \ - X(MUS_OLDALE, "MUS-OLDALE") \ - X(MUS_GYM, "MUS-GYM") \ - X(MUS_SURF, "MUS-SURF") \ - X(MUS_PETALBURG_WOODS, "MUS-PETALBURG-WOODS") \ - X(MUS_LEVEL_UP, "MUS-LEVEL-UP") \ - X(MUS_HEAL, "MUS-HEAL") \ - X(MUS_OBTAIN_BADGE, "MUS-OBTAIN-BADGE") \ - X(MUS_OBTAIN_ITEM, "MUS-OBTAIN-ITEM") \ - X(MUS_EVOLVED, "MUS-EVOLVED") \ - X(MUS_OBTAIN_TMHM, "MUS-OBTAIN-TMHM") \ - X(MUS_LILYCOVE_MUSEUM, "MUS-LILYCOVE-MUSEUM") \ - X(MUS_ROUTE122, "MUS-ROUTE122") \ - X(MUS_OCEANIC_MUSEUM, "MUS-OCEANIC-MUSEUM") \ - X(MUS_EVOLUTION_INTRO, "MUS-EVOLUTION-INTRO") \ - X(MUS_EVOLUTION, "MUS-EVOLUTION") \ - X(MUS_MOVE_DELETED, "MUS-MOVE-DELETED") \ - X(MUS_ENCOUNTER_GIRL, "MUS-ENCOUNTER-GIRL") \ - X(MUS_ENCOUNTER_MALE, "MUS-ENCOUNTER-MALE") \ - X(MUS_ABANDONED_SHIP, "MUS-ABANDONED-SHIP") \ - X(MUS_FORTREE, "MUS-FORTREE") \ - X(MUS_BIRCH_LAB, "MUS-BIRCH-LAB") \ - X(MUS_B_TOWER_RS, "MUS-B-TOWER-RS") \ - X(MUS_ENCOUNTER_SWIMMER, "MUS-ENCOUNTER-SWIMMER") \ - X(MUS_CAVE_OF_ORIGIN, "MUS-CAVE-OF-ORIGIN") \ - X(MUS_OBTAIN_BERRY, "MUS-OBTAIN-BERRY") \ - X(MUS_AWAKEN_LEGEND, "MUS-AWAKEN-LEGEND") \ - X(MUS_SLOTS_JACKPOT, "MUS-SLOTS-JACKPOT") \ - X(MUS_SLOTS_WIN, "MUS-SLOTS-WIN") \ - X(MUS_TOO_BAD, "MUS-TOO-BAD") \ - X(MUS_ROULETTE, "MUS-ROULETTE") \ - X(MUS_LINK_CONTEST_P1, "MUS-LINK-CONTEST-P1") \ - X(MUS_LINK_CONTEST_P2, "MUS-LINK-CONTEST-P2") \ - X(MUS_LINK_CONTEST_P3, "MUS-LINK-CONTEST-P3") \ - X(MUS_LINK_CONTEST_P4, "MUS-LINK-CONTEST-P4") \ - X(MUS_ENCOUNTER_RICH, "MUS-ENCOUNTER-RICH") \ - X(MUS_VERDANTURF, "MUS-VERDANTURF") \ - X(MUS_RUSTBORO, "MUS-RUSTBORO") \ - X(MUS_POKE_CENTER, "MUS-POKE-CENTER") \ - X(MUS_ROUTE104, "MUS-ROUTE104") \ - X(MUS_ROUTE119, "MUS-ROUTE119") \ - X(MUS_CYCLING, "MUS-CYCLING") \ - X(MUS_POKE_MART, "MUS-POKE-MART") \ - X(MUS_LITTLEROOT, "MUS-LITTLEROOT") \ - X(MUS_MT_CHIMNEY, "MUS-MT-CHIMNEY") \ - X(MUS_ENCOUNTER_FEMALE, "MUS-ENCOUNTER-FEMALE") \ - X(MUS_LILYCOVE, "MUS-LILYCOVE") \ - X(MUS_ROUTE111, "MUS-ROUTE111") \ - X(MUS_HELP, "MUS-HELP") \ - X(MUS_UNDERWATER, "MUS-UNDERWATER") \ - X(MUS_VICTORY_TRAINER, "MUS-VICTORY-TRAINER") \ - X(MUS_TITLE, "MUS-TITLE") \ - X(MUS_INTRO, "MUS-INTRO") \ - X(MUS_ENCOUNTER_MAY, "MUS-ENCOUNTER-MAY") \ - X(MUS_ENCOUNTER_INTENSE, "MUS-ENCOUNTER-INTENSE") \ - X(MUS_ENCOUNTER_COOL, "MUS-ENCOUNTER-COOL") \ - X(MUS_ROUTE113, "MUS-ROUTE113") \ - X(MUS_ENCOUNTER_AQUA, "MUS-ENCOUNTER-AQUA") \ - X(MUS_FOLLOW_ME, "MUS-FOLLOW-ME") \ - X(MUS_ENCOUNTER_BRENDAN, "MUS-ENCOUNTER-BRENDAN") \ - X(MUS_EVER_GRANDE, "MUS-EVER-GRANDE") \ - X(MUS_ENCOUNTER_SUSPICIOUS, "MUS-ENCOUNTER-SUSPICIOUS") \ - X(MUS_VICTORY_AQUA_MAGMA, "MUS-VICTORY-AQUA-MAGMA") \ - X(MUS_CABLE_CAR, "MUS-CABLE-CAR") \ - X(MUS_GAME_CORNER, "MUS-GAME-CORNER") \ - X(MUS_DEWFORD, "MUS-DEWFORD") \ - X(MUS_SAFARI_ZONE, "MUS-SAFARI-ZONE") \ - X(MUS_VICTORY_ROAD, "MUS-VICTORY-ROAD") \ - X(MUS_AQUA_MAGMA_HIDEOUT, "MUS-AQUA-MAGMA-HIDEOUT") \ - X(MUS_SAILING, "MUS-SAILING") \ - X(MUS_MT_PYRE, "MUS-MT-PYRE") \ - X(MUS_SLATEPORT, "MUS-SLATEPORT") \ - X(MUS_MT_PYRE_EXTERIOR, "MUS-MT-PYRE-EXTERIOR") \ - X(MUS_SCHOOL, "MUS-SCHOOL") \ - X(MUS_HALL_OF_FAME, "MUS-HALL-OF-FAME") \ - X(MUS_FALLARBOR, "MUS-FALLARBOR") \ - X(MUS_SEALED_CHAMBER, "MUS-SEALED-CHAMBER") \ - X(MUS_CONTEST_WINNER, "MUS-CONTEST-WINNER") \ - X(MUS_CONTEST, "MUS-CONTEST") \ - X(MUS_ENCOUNTER_MAGMA, "MUS-ENCOUNTER-MAGMA") \ - X(MUS_INTRO_BATTLE, "MUS-INTRO-BATTLE") \ - X(MUS_WEATHER_KYOGRE, "MUS-WEATHER-KYOGRE") \ - X(MUS_WEATHER_GROUDON, "MUS-WEATHER-GROUDON") \ - X(MUS_SOOTOPOLIS, "MUS-SOOTOPOLIS") \ - X(MUS_CONTEST_RESULTS, "MUS-CONTEST-RESULTS") \ - X(MUS_HALL_OF_FAME_ROOM, "MUS-HALL-OF-FAME-ROOM") \ - X(MUS_TRICK_HOUSE, "MUS-TRICK-HOUSE") \ - X(MUS_ENCOUNTER_TWINS, "MUS-ENCOUNTER-TWINS") \ - X(MUS_ENCOUNTER_ELITE_FOUR, "MUS-ENCOUNTER-ELITE-FOUR") \ - X(MUS_ENCOUNTER_HIKER, "MUS-ENCOUNTER-HIKER") \ - X(MUS_CONTEST_LOBBY, "MUS-CONTEST-LOBBY") \ - X(MUS_ENCOUNTER_INTERVIEWER, "MUS-ENCOUNTER-INTERVIEWER") \ - X(MUS_ENCOUNTER_CHAMPION, "MUS-ENCOUNTER-CHAMPION") \ - X(MUS_CREDITS, "MUS-CREDITS") \ - X(MUS_END, "MUS-END") \ - X(MUS_B_FRONTIER, "MUS-B-FRONTIER") \ - X(MUS_B_ARENA, "MUS-B-ARENA") \ - X(MUS_OBTAIN_B_POINTS, "MUS-OBTAIN-B-POINTS") \ - X(MUS_REGISTER_MATCH_CALL, "MUS-REGISTER-MATCH-CALL") \ - X(MUS_B_PYRAMID, "MUS-B-PYRAMID") \ - X(MUS_B_PYRAMID_TOP, "MUS-B-PYRAMID-TOP") \ - X(MUS_B_PALACE, "MUS-B-PALACE") \ - X(MUS_RAYQUAZA_APPEARS, "MUS-RAYQUAZA-APPEARS") \ - X(MUS_B_TOWER, "MUS-B-TOWER") \ - X(MUS_OBTAIN_SYMBOL, "MUS-OBTAIN-SYMBOL") \ - X(MUS_B_DOME, "MUS-B-DOME") \ - X(MUS_B_PIKE, "MUS-B-PIKE") \ - X(MUS_B_FACTORY, "MUS-B-FACTORY") \ - X(MUS_VS_RAYQUAZA, "MUS-VS-RAYQUAZA") \ - X(MUS_VS_FRONTIER_BRAIN, "MUS-VS-FRONTIER-BRAIN") \ - X(MUS_VS_MEW, "MUS-VS-MEW") \ - X(MUS_B_DOME_LOBBY, "MUS-B-DOME-LOBBY") \ - X(MUS_VS_WILD, "MUS-VS-WILD") \ - X(MUS_VS_AQUA_MAGMA, "MUS-VS-AQUA-MAGMA") \ - X(MUS_VS_TRAINER, "MUS-VS-TRAINER") \ - X(MUS_VS_GYM_LEADER, "MUS-VS-GYM-LEADER") \ - X(MUS_VS_CHAMPION, "MUS-VS-CHAMPION") \ - X(MUS_VS_REGI, "MUS-VS-REGI") \ - X(MUS_VS_KYOGRE_GROUDON, "MUS-VS-KYOGRE-GROUDON") \ - X(MUS_VS_RIVAL, "MUS-VS-RIVAL") \ - X(MUS_VS_ELITE_FOUR, "MUS-VS-ELITE-FOUR") \ - X(MUS_VS_AQUA_MAGMA_LEADER, "MUS-VS-AQUA-MAGMA-LEADER") \ - X(MUS_RG_FOLLOW_ME, "MUS-RG-FOLLOW-ME") \ - X(MUS_RG_GAME_CORNER, "MUS-RG-GAME-CORNER") \ - X(MUS_RG_ROCKET_HIDEOUT, "MUS-RG-ROCKET-HIDEOUT") \ - X(MUS_RG_GYM, "MUS-RG-GYM") \ - X(MUS_RG_JIGGLYPUFF, "MUS-RG-JIGGLYPUFF") \ - X(MUS_RG_INTRO_FIGHT, "MUS-RG-INTRO-FIGHT") \ - X(MUS_RG_TITLE, "MUS-RG-TITLE") \ - X(MUS_RG_CINNABAR, "MUS-RG-CINNABAR") \ - X(MUS_RG_LAVENDER, "MUS-RG-LAVENDER") \ - X(MUS_RG_HEAL, "MUS-RG-HEAL") \ - X(MUS_RG_CYCLING, "MUS-RG-CYCLING") \ - X(MUS_RG_ENCOUNTER_ROCKET, "MUS-RG-ENCOUNTER-ROCKET") \ - X(MUS_RG_ENCOUNTER_GIRL, "MUS-RG-ENCOUNTER-GIRL") \ - X(MUS_RG_ENCOUNTER_BOY, "MUS-RG-ENCOUNTER-BOY") \ - X(MUS_RG_HALL_OF_FAME, "MUS-RG-HALL-OF-FAME") \ - X(MUS_RG_VIRIDIAN_FOREST, "MUS-RG-VIRIDIAN-FOREST") \ - X(MUS_RG_MT_MOON, "MUS-RG-MT-MOON") \ - X(MUS_RG_POKE_MANSION, "MUS-RG-POKE-MANSION") \ - X(MUS_RG_CREDITS, "MUS-RG-CREDITS") \ - X(MUS_RG_ROUTE1, "MUS-RG-ROUTE1") \ - X(MUS_RG_ROUTE24, "MUS-RG-ROUTE24") \ - X(MUS_RG_ROUTE3, "MUS-RG-ROUTE3") \ - X(MUS_RG_ROUTE11, "MUS-RG-ROUTE11") \ - X(MUS_RG_VICTORY_ROAD, "MUS-RG-VICTORY-ROAD") \ - X(MUS_RG_VS_GYM_LEADER, "MUS-RG-VS-GYM-LEADER") \ - X(MUS_RG_VS_TRAINER, "MUS-RG-VS-TRAINER") \ - X(MUS_RG_VS_WILD, "MUS-RG-VS-WILD") \ - X(MUS_RG_VS_CHAMPION, "MUS-RG-VS-CHAMPION") \ - X(MUS_RG_PALLET, "MUS-RG-PALLET") \ - X(MUS_RG_OAK_LAB, "MUS-RG-OAK-LAB") \ - X(MUS_RG_OAK, "MUS-RG-OAK") \ - X(MUS_RG_POKE_CENTER, "MUS-RG-POKE-CENTER") \ - X(MUS_RG_SS_ANNE, "MUS-RG-SS-ANNE") \ - X(MUS_RG_SURF, "MUS-RG-SURF") \ - X(MUS_RG_POKE_TOWER, "MUS-RG-POKE-TOWER") \ - X(MUS_RG_SILPH, "MUS-RG-SILPH") \ - X(MUS_RG_FUCHSIA, "MUS-RG-FUCHSIA") \ - X(MUS_RG_CELADON, "MUS-RG-CELADON") \ - X(MUS_RG_VICTORY_TRAINER, "MUS-RG-VICTORY-TRAINER") \ - X(MUS_RG_VICTORY_WILD, "MUS-RG-VICTORY-WILD") \ - X(MUS_RG_VICTORY_GYM_LEADER, "MUS-RG-VICTORY-GYM-LEADER") \ - X(MUS_RG_VERMILLION, "MUS-RG-VERMILLION") \ - X(MUS_RG_PEWTER, "MUS-RG-PEWTER") \ - X(MUS_RG_ENCOUNTER_RIVAL, "MUS-RG-ENCOUNTER-RIVAL") \ - X(MUS_RG_RIVAL_EXIT, "MUS-RG-RIVAL-EXIT") \ - X(MUS_RG_DEX_RATING, "MUS-RG-DEX-RATING") \ - X(MUS_RG_OBTAIN_KEY_ITEM, "MUS-RG-OBTAIN-KEY-ITEM") \ - X(MUS_RG_CAUGHT_INTRO, "MUS-RG-CAUGHT-INTRO") \ - X(MUS_RG_PHOTO, "MUS-RG-PHOTO") \ - X(MUS_RG_GAME_FREAK, "MUS-RG-GAME-FREAK") \ - X(MUS_RG_CAUGHT, "MUS-RG-CAUGHT") \ - X(MUS_RG_NEW_GAME_INSTRUCT, "MUS-RG-NEW-GAME-INSTRUCT") \ - X(MUS_RG_NEW_GAME_INTRO, "MUS-RG-NEW-GAME-INTRO") \ - X(MUS_RG_NEW_GAME_EXIT, "MUS-RG-NEW-GAME-EXIT") \ - X(MUS_RG_POKE_JUMP, "MUS-RG-POKE-JUMP") \ - X(MUS_RG_UNION_ROOM, "MUS-RG-UNION-ROOM") \ - X(MUS_RG_NET_CENTER, "MUS-RG-NET-CENTER") \ - X(MUS_RG_MYSTERY_GIFT, "MUS-RG-MYSTERY-GIFT") \ - X(MUS_RG_BERRY_PICK, "MUS-RG-BERRY-PICK") \ - X(MUS_RG_SEVII_CAVE, "MUS-RG-SEVII-CAVE") \ - X(MUS_RG_TEACHY_TV_SHOW, "MUS-RG-TEACHY-TV-SHOW") \ - X(MUS_RG_SEVII_ROUTE, "MUS-RG-SEVII-ROUTE") \ - X(MUS_RG_SEVII_DUNGEON, "MUS-RG-SEVII-DUNGEON") \ - X(MUS_RG_SEVII_123, "MUS-RG-SEVII-123") \ - X(MUS_RG_SEVII_45, "MUS-RG-SEVII-45") \ - X(MUS_RG_SEVII_67, "MUS-RG-SEVII-67") \ - X(MUS_RG_POKE_FLUTE, "MUS-RG-POKE-FLUTE") \ - X(MUS_RG_VS_DEOXYS, "MUS-RG-VS-DEOXYS") \ - X(MUS_RG_VS_MEWTWO, "MUS-RG-VS-MEWTWO") \ - X(MUS_RG_VS_LEGEND, "MUS-RG-VS-LEGEND") \ - X(MUS_RG_ENCOUNTER_GYM_LEADER, "MUS-RG-ENCOUNTER-GYM-LEADER") \ - X(MUS_RG_ENCOUNTER_DEOXYS, "MUS-RG-ENCOUNTER-DEOXYS") \ - X(MUS_RG_TRAINER_TOWER, "MUS-RG-TRAINER-TOWER") \ - X(MUS_RG_SLOW_PALLET, "MUS-RG-SLOW-PALLET") \ - X(MUS_RG_TEACHY_TV_MENU, "MUS-RG-TEACHY-TV-MENU") \ - X(PH_TRAP_BLEND, "PH-TRAP-BLEND") \ - X(PH_TRAP_HELD, "PH-TRAP-HELD") \ - X(PH_TRAP_SOLO, "PH-TRAP-SOLO") \ - X(PH_FACE_BLEND, "PH-FACE-BLEND") \ - X(PH_FACE_HELD, "PH-FACE-HELD") \ - X(PH_FACE_SOLO, "PH-FACE-SOLO") \ - X(PH_CLOTH_BLEND, "PH-CLOTH-BLEND") \ - X(PH_CLOTH_HELD, "PH-CLOTH-HELD") \ - X(PH_CLOTH_SOLO, "PH-CLOTH-SOLO") \ - X(PH_DRESS_BLEND, "PH-DRESS-BLEND") \ - X(PH_DRESS_HELD, "PH-DRESS-HELD") \ - X(PH_DRESS_SOLO, "PH-DRESS-SOLO") \ - X(PH_FLEECE_BLEND, "PH-FLEECE-BLEND") \ - X(PH_FLEECE_HELD, "PH-FLEECE-HELD") \ - X(PH_FLEECE_SOLO, "PH-FLEECE-SOLO") \ - X(PH_KIT_BLEND, "PH-KIT-BLEND") \ - X(PH_KIT_HELD, "PH-KIT-HELD") \ - X(PH_KIT_SOLO, "PH-KIT-SOLO") \ - X(PH_PRICE_BLEND, "PH-PRICE-BLEND") \ - X(PH_PRICE_HELD, "PH-PRICE-HELD") \ - X(PH_PRICE_SOLO, "PH-PRICE-SOLO") \ - X(PH_LOT_BLEND, "PH-LOT-BLEND") \ - X(PH_LOT_HELD, "PH-LOT-HELD") \ - X(PH_LOT_SOLO, "PH-LOT-SOLO") \ - X(PH_GOAT_BLEND, "PH-GOAT-BLEND") \ - X(PH_GOAT_HELD, "PH-GOAT-HELD") \ - X(PH_GOAT_SOLO, "PH-GOAT-SOLO") \ - X(PH_THOUGHT_BLEND, "PH-THOUGHT-BLEND") \ - X(PH_THOUGHT_HELD, "PH-THOUGHT-HELD") \ - X(PH_THOUGHT_SOLO, "PH-THOUGHT-SOLO") \ - X(PH_CHOICE_BLEND, "PH-CHOICE-BLEND") \ - X(PH_CHOICE_HELD, "PH-CHOICE-HELD") \ - X(PH_CHOICE_SOLO, "PH-CHOICE-SOLO") \ - X(PH_MOUTH_BLEND, "PH-MOUTH-BLEND") \ - X(PH_MOUTH_HELD, "PH-MOUTH-HELD") \ - X(PH_MOUTH_SOLO, "PH-MOUTH-SOLO") \ - X(PH_FOOT_BLEND, "PH-FOOT-BLEND") \ - X(PH_FOOT_HELD, "PH-FOOT-HELD") \ - X(PH_FOOT_SOLO, "PH-FOOT-SOLO") \ - X(PH_GOOSE_BLEND, "PH-GOOSE-BLEND") \ - X(PH_GOOSE_HELD, "PH-GOOSE-HELD") \ - X(PH_GOOSE_SOLO, "PH-GOOSE-SOLO") \ - X(PH_STRUT_BLEND, "PH-STRUT-BLEND") \ - X(PH_STRUT_HELD, "PH-STRUT-HELD") \ - X(PH_STRUT_SOLO, "PH-STRUT-SOLO") \ - X(PH_CURE_BLEND, "PH-CURE-BLEND") \ - X(PH_CURE_HELD, "PH-CURE-HELD") \ - X(PH_CURE_SOLO, "PH-CURE-SOLO") \ - X(PH_NURSE_BLEND, "PH-NURSE-BLEND") \ - X(PH_NURSE_HELD, "PH-NURSE-HELD") \ - X(PH_NURSE_SOLO, "PH-NURSE-SOLO") \ + X(MUS_LITTLEROOT_TEST) \ + X(MUS_GSC_ROUTE38) \ + X(MUS_CAUGHT) \ + X(MUS_VICTORY_WILD) \ + X(MUS_VICTORY_GYM_LEADER) \ + X(MUS_VICTORY_LEAGUE) \ + X(MUS_C_COMM_CENTER) \ + X(MUS_GSC_PEWTER) \ + X(MUS_C_VS_LEGEND_BEAST) \ + X(MUS_ROUTE101) \ + X(MUS_ROUTE110) \ + X(MUS_ROUTE120) \ + X(MUS_PETALBURG) \ + X(MUS_OLDALE) \ + X(MUS_GYM) \ + X(MUS_SURF) \ + X(MUS_PETALBURG_WOODS) \ + X(MUS_LEVEL_UP) \ + X(MUS_HEAL) \ + X(MUS_OBTAIN_BADGE) \ + X(MUS_OBTAIN_ITEM) \ + X(MUS_EVOLVED) \ + X(MUS_OBTAIN_TMHM) \ + X(MUS_LILYCOVE_MUSEUM) \ + X(MUS_ROUTE122) \ + X(MUS_OCEANIC_MUSEUM) \ + X(MUS_EVOLUTION_INTRO) \ + X(MUS_EVOLUTION) \ + X(MUS_MOVE_DELETED) \ + X(MUS_ENCOUNTER_GIRL) \ + X(MUS_ENCOUNTER_MALE) \ + X(MUS_ABANDONED_SHIP) \ + X(MUS_FORTREE) \ + X(MUS_BIRCH_LAB) \ + X(MUS_B_TOWER_RS) \ + X(MUS_ENCOUNTER_SWIMMER) \ + X(MUS_CAVE_OF_ORIGIN) \ + X(MUS_OBTAIN_BERRY) \ + X(MUS_AWAKEN_LEGEND) \ + X(MUS_SLOTS_JACKPOT) \ + X(MUS_SLOTS_WIN) \ + X(MUS_TOO_BAD) \ + X(MUS_ROULETTE) \ + X(MUS_LINK_CONTEST_P1) \ + X(MUS_LINK_CONTEST_P2) \ + X(MUS_LINK_CONTEST_P3) \ + X(MUS_LINK_CONTEST_P4) \ + X(MUS_ENCOUNTER_RICH) \ + X(MUS_VERDANTURF) \ + X(MUS_RUSTBORO) \ + X(MUS_POKE_CENTER) \ + X(MUS_ROUTE104) \ + X(MUS_ROUTE119) \ + X(MUS_CYCLING) \ + X(MUS_POKE_MART) \ + X(MUS_LITTLEROOT) \ + X(MUS_MT_CHIMNEY) \ + X(MUS_ENCOUNTER_FEMALE) \ + X(MUS_LILYCOVE) \ + X(MUS_ROUTE111) \ + X(MUS_HELP) \ + X(MUS_UNDERWATER) \ + X(MUS_VICTORY_TRAINER) \ + X(MUS_TITLE) \ + X(MUS_INTRO) \ + X(MUS_ENCOUNTER_MAY) \ + X(MUS_ENCOUNTER_INTENSE) \ + X(MUS_ENCOUNTER_COOL) \ + X(MUS_ROUTE113) \ + X(MUS_ENCOUNTER_AQUA) \ + X(MUS_FOLLOW_ME) \ + X(MUS_ENCOUNTER_BRENDAN) \ + X(MUS_EVER_GRANDE) \ + X(MUS_ENCOUNTER_SUSPICIOUS) \ + X(MUS_VICTORY_AQUA_MAGMA) \ + X(MUS_CABLE_CAR) \ + X(MUS_GAME_CORNER) \ + X(MUS_DEWFORD) \ + X(MUS_SAFARI_ZONE) \ + X(MUS_VICTORY_ROAD) \ + X(MUS_AQUA_MAGMA_HIDEOUT) \ + X(MUS_SAILING) \ + X(MUS_MT_PYRE) \ + X(MUS_SLATEPORT) \ + X(MUS_MT_PYRE_EXTERIOR) \ + X(MUS_SCHOOL) \ + X(MUS_HALL_OF_FAME) \ + X(MUS_FALLARBOR) \ + X(MUS_SEALED_CHAMBER) \ + X(MUS_CONTEST_WINNER) \ + X(MUS_CONTEST) \ + X(MUS_ENCOUNTER_MAGMA) \ + X(MUS_INTRO_BATTLE) \ + X(MUS_WEATHER_KYOGRE) \ + X(MUS_WEATHER_GROUDON) \ + X(MUS_SOOTOPOLIS) \ + X(MUS_CONTEST_RESULTS) \ + X(MUS_HALL_OF_FAME_ROOM) \ + X(MUS_TRICK_HOUSE) \ + X(MUS_ENCOUNTER_TWINS) \ + X(MUS_ENCOUNTER_ELITE_FOUR) \ + X(MUS_ENCOUNTER_HIKER) \ + X(MUS_CONTEST_LOBBY) \ + X(MUS_ENCOUNTER_INTERVIEWER) \ + X(MUS_ENCOUNTER_CHAMPION) \ + X(MUS_CREDITS) \ + X(MUS_END) \ + X(MUS_B_FRONTIER) \ + X(MUS_B_ARENA) \ + X(MUS_OBTAIN_B_POINTS) \ + X(MUS_REGISTER_MATCH_CALL) \ + X(MUS_B_PYRAMID) \ + X(MUS_B_PYRAMID_TOP) \ + X(MUS_B_PALACE) \ + X(MUS_RAYQUAZA_APPEARS) \ + X(MUS_B_TOWER) \ + X(MUS_OBTAIN_SYMBOL) \ + X(MUS_B_DOME) \ + X(MUS_B_PIKE) \ + X(MUS_B_FACTORY) \ + X(MUS_VS_RAYQUAZA) \ + X(MUS_VS_FRONTIER_BRAIN) \ + X(MUS_VS_MEW) \ + X(MUS_B_DOME_LOBBY) \ + X(MUS_VS_WILD) \ + X(MUS_VS_AQUA_MAGMA) \ + X(MUS_VS_TRAINER) \ + X(MUS_VS_GYM_LEADER) \ + X(MUS_VS_CHAMPION) \ + X(MUS_VS_REGI) \ + X(MUS_VS_KYOGRE_GROUDON) \ + X(MUS_VS_RIVAL) \ + X(MUS_VS_ELITE_FOUR) \ + X(MUS_VS_AQUA_MAGMA_LEADER) \ + X(MUS_RG_FOLLOW_ME) \ + X(MUS_RG_GAME_CORNER) \ + X(MUS_RG_ROCKET_HIDEOUT) \ + X(MUS_RG_GYM) \ + X(MUS_RG_JIGGLYPUFF) \ + X(MUS_RG_INTRO_FIGHT) \ + X(MUS_RG_TITLE) \ + X(MUS_RG_CINNABAR) \ + X(MUS_RG_LAVENDER) \ + X(MUS_RG_HEAL) \ + X(MUS_RG_CYCLING) \ + X(MUS_RG_ENCOUNTER_ROCKET) \ + X(MUS_RG_ENCOUNTER_GIRL) \ + X(MUS_RG_ENCOUNTER_BOY) \ + X(MUS_RG_HALL_OF_FAME) \ + X(MUS_RG_VIRIDIAN_FOREST) \ + X(MUS_RG_MT_MOON) \ + X(MUS_RG_POKE_MANSION) \ + X(MUS_RG_CREDITS) \ + X(MUS_RG_ROUTE1) \ + X(MUS_RG_ROUTE24) \ + X(MUS_RG_ROUTE3) \ + X(MUS_RG_ROUTE11) \ + X(MUS_RG_VICTORY_ROAD) \ + X(MUS_RG_VS_GYM_LEADER) \ + X(MUS_RG_VS_TRAINER) \ + X(MUS_RG_VS_WILD) \ + X(MUS_RG_VS_CHAMPION) \ + X(MUS_RG_PALLET) \ + X(MUS_RG_OAK_LAB) \ + X(MUS_RG_OAK) \ + X(MUS_RG_POKE_CENTER) \ + X(MUS_RG_SS_ANNE) \ + X(MUS_RG_SURF) \ + X(MUS_RG_POKE_TOWER) \ + X(MUS_RG_SILPH) \ + X(MUS_RG_FUCHSIA) \ + X(MUS_RG_CELADON) \ + X(MUS_RG_VICTORY_TRAINER) \ + X(MUS_RG_VICTORY_WILD) \ + X(MUS_RG_VICTORY_GYM_LEADER) \ + X(MUS_RG_VERMILLION) \ + X(MUS_RG_PEWTER) \ + X(MUS_RG_ENCOUNTER_RIVAL) \ + X(MUS_RG_RIVAL_EXIT) \ + X(MUS_RG_DEX_RATING) \ + X(MUS_RG_OBTAIN_KEY_ITEM) \ + X(MUS_RG_CAUGHT_INTRO) \ + X(MUS_RG_PHOTO) \ + X(MUS_RG_GAME_FREAK) \ + X(MUS_RG_CAUGHT) \ + X(MUS_RG_NEW_GAME_INSTRUCT) \ + X(MUS_RG_NEW_GAME_INTRO) \ + X(MUS_RG_NEW_GAME_EXIT) \ + X(MUS_RG_POKE_JUMP) \ + X(MUS_RG_UNION_ROOM) \ + X(MUS_RG_NET_CENTER) \ + X(MUS_RG_MYSTERY_GIFT) \ + X(MUS_RG_BERRY_PICK) \ + X(MUS_RG_SEVII_CAVE) \ + X(MUS_RG_TEACHY_TV_SHOW) \ + X(MUS_RG_SEVII_ROUTE) \ + X(MUS_RG_SEVII_DUNGEON) \ + X(MUS_RG_SEVII_123) \ + X(MUS_RG_SEVII_45) \ + X(MUS_RG_SEVII_67) \ + X(MUS_RG_POKE_FLUTE) \ + X(MUS_RG_VS_DEOXYS) \ + X(MUS_RG_VS_MEWTWO) \ + X(MUS_RG_VS_LEGEND) \ + X(MUS_RG_ENCOUNTER_GYM_LEADER) \ + X(MUS_RG_ENCOUNTER_DEOXYS) \ + X(MUS_RG_TRAINER_TOWER) \ + X(MUS_RG_SLOW_PALLET) \ + X(MUS_RG_TEACHY_TV_MENU) \ + X(PH_TRAP_BLEND) \ + X(PH_TRAP_HELD) \ + X(PH_TRAP_SOLO) \ + X(PH_FACE_BLEND) \ + X(PH_FACE_HELD) \ + X(PH_FACE_SOLO) \ + X(PH_CLOTH_BLEND) \ + X(PH_CLOTH_HELD) \ + X(PH_CLOTH_SOLO) \ + X(PH_DRESS_BLEND) \ + X(PH_DRESS_HELD) \ + X(PH_DRESS_SOLO) \ + X(PH_FLEECE_BLEND) \ + X(PH_FLEECE_HELD) \ + X(PH_FLEECE_SOLO) \ + X(PH_KIT_BLEND) \ + X(PH_KIT_HELD) \ + X(PH_KIT_SOLO) \ + X(PH_PRICE_BLEND) \ + X(PH_PRICE_HELD) \ + X(PH_PRICE_SOLO) \ + X(PH_LOT_BLEND) \ + X(PH_LOT_HELD) \ + X(PH_LOT_SOLO) \ + X(PH_GOAT_BLEND) \ + X(PH_GOAT_HELD) \ + X(PH_GOAT_SOLO) \ + X(PH_THOUGHT_BLEND) \ + X(PH_THOUGHT_HELD) \ + X(PH_THOUGHT_SOLO) \ + X(PH_CHOICE_BLEND) \ + X(PH_CHOICE_HELD) \ + X(PH_CHOICE_SOLO) \ + X(PH_MOUTH_BLEND) \ + X(PH_MOUTH_HELD) \ + X(PH_MOUTH_SOLO) \ + X(PH_FOOT_BLEND) \ + X(PH_FOOT_HELD) \ + X(PH_FOOT_SOLO) \ + X(PH_GOOSE_BLEND) \ + X(PH_GOOSE_HELD) \ + X(PH_GOOSE_SOLO) \ + X(PH_STRUT_BLEND) \ + X(PH_STRUT_HELD) \ + X(PH_STRUT_SOLO) \ + X(PH_CURE_BLEND) \ + X(PH_CURE_HELD) \ + X(PH_CURE_SOLO) \ + X(PH_NURSE_BLEND) \ + X(PH_NURSE_HELD) \ + X(PH_NURSE_SOLO) \ #define SOUND_LIST_SE \ - X(SE_USE_ITEM, "SE-USE-ITEM") \ - X(SE_PC_LOGIN, "SE-PC-LOGIN") \ - X(SE_PC_OFF, "SE-PC-OFF") \ - X(SE_PC_ON, "SE-PC-ON") \ - X(SE_SELECT, "SE-SELECT") \ - X(SE_WIN_OPEN, "SE-WIN-OPEN") \ - X(SE_WALL_HIT, "SE-WALL-HIT") \ - X(SE_DOOR, "SE-DOOR") \ - X(SE_EXIT, "SE-EXIT") \ - X(SE_LEDGE, "SE-LEDGE") \ - X(SE_BIKE_BELL, "SE-BIKE-BELL") \ - X(SE_NOT_EFFECTIVE, "SE-NOT-EFFECTIVE") \ - X(SE_EFFECTIVE, "SE-EFFECTIVE") \ - X(SE_SUPER_EFFECTIVE, "SE-SUPER-EFFECTIVE") \ - X(SE_BALL_OPEN, "SE-BALL-OPEN") \ - X(SE_FAINT, "SE-FAINT") \ - X(SE_FLEE, "SE-FLEE") \ - X(SE_SLIDING_DOOR, "SE-SLIDING-DOOR") \ - X(SE_SHIP, "SE-SHIP") \ - X(SE_BANG, "SE-BANG") \ - X(SE_PIN, "SE-PIN") \ - X(SE_BOO, "SE-BOO") \ - X(SE_BALL, "SE-BALL") \ - X(SE_CONTEST_PLACE, "SE-CONTEST-PLACE") \ - X(SE_A, "SE-A") \ - X(SE_I, "SE-I") \ - X(SE_U, "SE-U") \ - X(SE_E, "SE-E") \ - X(SE_O, "SE-O") \ - X(SE_N, "SE-N") \ - X(SE_SUCCESS, "SE-SUCCESS") \ - X(SE_FAILURE, "SE-FAILURE") \ - X(SE_EXP, "SE-EXP") \ - X(SE_BIKE_HOP, "SE-BIKE-HOP") \ - X(SE_SWITCH, "SE-SWITCH") \ - X(SE_CLICK, "SE-CLICK") \ - X(SE_FU_ZAKU, "SE-FU-ZAKU") \ - X(SE_CONTEST_CONDITION_LOSE, "SE-CONTEST-CONDITION-LOSE") \ - X(SE_LAVARIDGE_FALL_WARP, "SE-LAVARIDGE-FALL-WARP") \ - X(SE_ICE_STAIRS, "SE-ICE-STAIRS") \ - X(SE_ICE_BREAK, "SE-ICE-BREAK") \ - X(SE_ICE_CRACK, "SE-ICE-CRACK") \ - X(SE_FALL, "SE-FALL") \ - X(SE_UNLOCK, "SE-UNLOCK") \ - X(SE_WARP_IN, "SE-WARP-IN") \ - X(SE_WARP_OUT, "SE-WARP-OUT") \ - X(SE_REPEL, "SE-REPEL") \ - X(SE_ROTATING_GATE, "SE-ROTATING-GATE") \ - X(SE_TRUCK_MOVE, "SE-TRUCK-MOVE") \ - X(SE_TRUCK_STOP, "SE-TRUCK-STOP") \ - X(SE_TRUCK_UNLOAD, "SE-TRUCK-UNLOAD") \ - X(SE_TRUCK_DOOR, "SE-TRUCK-DOOR") \ - X(SE_BERRY_BLENDER, "SE-BERRY-BLENDER") \ - X(SE_CARD, "SE-CARD") \ - X(SE_SAVE, "SE-SAVE") \ - X(SE_BALL_BOUNCE_1, "SE-BALL-BOUNCE-1") \ - X(SE_BALL_BOUNCE_2, "SE-BALL-BOUNCE-2") \ - X(SE_BALL_BOUNCE_3, "SE-BALL-BOUNCE-3") \ - X(SE_BALL_BOUNCE_4, "SE-BALL-BOUNCE-4") \ - X(SE_BALL_TRADE, "SE-BALL-TRADE") \ - X(SE_BALL_THROW, "SE-BALL-THROW") \ - X(SE_NOTE_C, "SE-NOTE-C") \ - X(SE_NOTE_D, "SE-NOTE-D") \ - X(SE_NOTE_E, "SE-NOTE-E") \ - X(SE_NOTE_F, "SE-NOTE-F") \ - X(SE_NOTE_G, "SE-NOTE-G") \ - X(SE_NOTE_A, "SE-NOTE-A") \ - X(SE_NOTE_B, "SE-NOTE-B") \ - X(SE_NOTE_C_HIGH, "SE-NOTE-C-HIGH") \ - X(SE_PUDDLE, "SE-PUDDLE") \ - X(SE_BRIDGE_WALK, "SE-BRIDGE-WALK") \ - X(SE_ITEMFINDER, "SE-ITEMFINDER") \ - X(SE_DING_DONG, "SE-DING-DONG") \ - X(SE_BALLOON_RED, "SE-BALLOON-RED") \ - X(SE_BALLOON_BLUE, "SE-BALLOON-BLUE") \ - X(SE_BALLOON_YELLOW, "SE-BALLOON-YELLOW") \ - X(SE_BREAKABLE_DOOR, "SE-BREAKABLE-DOOR") \ - X(SE_MUD_BALL, "SE-MUD-BALL") \ - X(SE_FIELD_POISON, "SE-FIELD-POISON") \ - X(SE_ESCALATOR, "SE-ESCALATOR") \ - X(SE_THUNDERSTORM, "SE-THUNDERSTORM") \ - X(SE_THUNDERSTORM_STOP, "SE-THUNDERSTORM-STOP") \ - X(SE_DOWNPOUR, "SE-DOWNPOUR") \ - X(SE_DOWNPOUR_STOP, "SE-DOWNPOUR-STOP") \ - X(SE_RAIN, "SE-RAIN") \ - X(SE_RAIN_STOP, "SE-RAIN-STOP") \ - X(SE_THUNDER, "SE-THUNDER") \ - X(SE_THUNDER2, "SE-THUNDER2") \ - X(SE_ELEVATOR, "SE-ELEVATOR") \ - X(SE_LOW_HEALTH, "SE-LOW-HEALTH") \ - X(SE_EXP_MAX, "SE-EXP-MAX") \ - X(SE_ROULETTE_BALL, "SE-ROULETTE-BALL") \ - X(SE_ROULETTE_BALL2, "SE-ROULETTE-BALL2") \ - X(SE_TAILLOW_WING_FLAP, "SE-TAILLOW-WING-FLAP") \ - X(SE_SHOP, "SE-SHOP") \ - X(SE_CONTEST_HEART, "SE-CONTEST-HEART") \ - X(SE_CONTEST_CURTAIN_RISE, "SE-CONTEST-CURTAIN-RISE") \ - X(SE_CONTEST_CURTAIN_FALL, "SE-CONTEST-CURTAIN-FALL") \ - X(SE_CONTEST_ICON_CHANGE, "SE-CONTEST-ICON-CHANGE") \ - X(SE_CONTEST_ICON_CLEAR, "SE-CONTEST-ICON-CLEAR") \ - X(SE_CONTEST_MONS_TURN, "SE-CONTEST-MONS-TURN") \ - X(SE_SHINY, "SE-SHINY") \ - X(SE_INTRO_BLAST, "SE-INTRO-BLAST") \ - X(SE_MUGSHOT, "SE-MUGSHOT") \ - X(SE_APPLAUSE, "SE-APPLAUSE") \ - X(SE_VEND, "SE-VEND") \ - X(SE_ORB, "SE-ORB") \ - X(SE_DEX_SCROLL, "SE-DEX-SCROLL") \ - X(SE_DEX_PAGE, "SE-DEX-PAGE") \ - X(SE_POKENAV_ON, "SE-POKENAV-ON") \ - X(SE_POKENAV_OFF, "SE-POKENAV-OFF") \ - X(SE_DEX_SEARCH, "SE-DEX-SEARCH") \ - X(SE_EGG_HATCH, "SE-EGG-HATCH") \ - X(SE_BALL_TRAY_ENTER, "SE-BALL-TRAY-ENTER") \ - X(SE_BALL_TRAY_BALL, "SE-BALL-TRAY-BALL") \ - X(SE_BALL_TRAY_EXIT, "SE-BALL-TRAY-EXIT") \ - X(SE_GLASS_FLUTE, "SE-GLASS-FLUTE") \ - X(SE_M_THUNDERBOLT, "SE-M-THUNDERBOLT") \ - X(SE_M_THUNDERBOLT2, "SE-M-THUNDERBOLT2") \ - X(SE_M_HARDEN, "SE-M-HARDEN") \ - X(SE_M_NIGHTMARE, "SE-M-NIGHTMARE") \ - X(SE_M_VITAL_THROW, "SE-M-VITAL-THROW") \ - X(SE_M_VITAL_THROW2, "SE-M-VITAL-THROW2") \ - X(SE_M_BUBBLE, "SE-M-BUBBLE") \ - X(SE_M_BUBBLE2, "SE-M-BUBBLE2") \ - X(SE_M_BUBBLE3, "SE-M-BUBBLE3") \ - X(SE_M_RAIN_DANCE, "SE-M-RAIN-DANCE") \ - X(SE_M_CUT, "SE-M-CUT") \ - X(SE_M_STRING_SHOT, "SE-M-STRING-SHOT") \ - X(SE_M_STRING_SHOT2, "SE-M-STRING-SHOT2") \ - X(SE_M_ROCK_THROW, "SE-M-ROCK-THROW") \ - X(SE_M_GUST, "SE-M-GUST") \ - X(SE_M_GUST2, "SE-M-GUST2") \ - X(SE_M_DOUBLE_SLAP, "SE-M-DOUBLE-SLAP") \ - X(SE_M_DOUBLE_TEAM, "SE-M-DOUBLE-TEAM") \ - X(SE_M_RAZOR_WIND, "SE-M-RAZOR-WIND") \ - X(SE_M_ICY_WIND, "SE-M-ICY-WIND") \ - X(SE_M_THUNDER_WAVE, "SE-M-THUNDER-WAVE") \ - X(SE_M_COMET_PUNCH, "SE-M-COMET-PUNCH") \ - X(SE_M_MEGA_KICK, "SE-M-MEGA-KICK") \ - X(SE_M_MEGA_KICK2, "SE-M-MEGA-KICK2") \ - X(SE_M_CRABHAMMER, "SE-M-CRABHAMMER") \ - X(SE_M_JUMP_KICK, "SE-M-JUMP-KICK") \ - X(SE_M_FLAME_WHEEL, "SE-M-FLAME-WHEEL") \ - X(SE_M_FLAME_WHEEL2, "SE-M-FLAME-WHEEL2") \ - X(SE_M_FLAMETHROWER, "SE-M-FLAMETHROWER") \ - X(SE_M_FIRE_PUNCH, "SE-M-FIRE-PUNCH") \ - X(SE_M_TOXIC, "SE-M-TOXIC") \ - X(SE_M_SACRED_FIRE, "SE-M-SACRED-FIRE") \ - X(SE_M_SACRED_FIRE2, "SE-M-SACRED-FIRE2") \ - X(SE_M_EMBER, "SE-M-EMBER") \ - X(SE_M_TAKE_DOWN, "SE-M-TAKE-DOWN") \ - X(SE_M_BLIZZARD, "SE-M-BLIZZARD") \ - X(SE_M_BLIZZARD2, "SE-M-BLIZZARD2") \ - X(SE_M_SCRATCH, "SE-M-SCRATCH") \ - X(SE_M_VICEGRIP, "SE-M-VICEGRIP") \ - X(SE_M_WING_ATTACK, "SE-M-WING-ATTACK") \ - X(SE_M_FLY, "SE-M-FLY") \ - X(SE_M_SAND_ATTACK, "SE-M-SAND-ATTACK") \ - X(SE_M_RAZOR_WIND2, "SE-M-RAZOR-WIND2") \ - X(SE_M_BITE, "SE-M-BITE") \ - X(SE_M_HEADBUTT, "SE-M-HEADBUTT") \ - X(SE_M_SURF, "SE-M-SURF") \ - X(SE_M_HYDRO_PUMP, "SE-M-HYDRO-PUMP") \ - X(SE_M_WHIRLPOOL, "SE-M-WHIRLPOOL") \ - X(SE_M_HORN_ATTACK, "SE-M-HORN-ATTACK") \ - X(SE_M_TAIL_WHIP, "SE-M-TAIL-WHIP") \ - X(SE_M_MIST, "SE-M-MIST") \ - X(SE_M_POISON_POWDER, "SE-M-POISON-POWDER") \ - X(SE_M_BIND, "SE-M-BIND") \ - X(SE_M_DRAGON_RAGE, "SE-M-DRAGON-RAGE") \ - X(SE_M_SING, "SE-M-SING") \ - X(SE_M_PERISH_SONG, "SE-M-PERISH-SONG") \ - X(SE_M_PAY_DAY, "SE-M-PAY-DAY") \ - X(SE_M_DIG, "SE-M-DIG") \ - X(SE_M_DIZZY_PUNCH, "SE-M-DIZZY-PUNCH") \ - X(SE_M_SELF_DESTRUCT, "SE-M-SELF-DESTRUCT") \ - X(SE_M_EXPLOSION, "SE-M-EXPLOSION") \ - X(SE_M_ABSORB_2, "SE-M-ABSORB-2") \ - X(SE_M_ABSORB, "SE-M-ABSORB") \ - X(SE_M_SCREECH, "SE-M-SCREECH") \ - X(SE_M_BUBBLE_BEAM, "SE-M-BUBBLE-BEAM") \ - X(SE_M_BUBBLE_BEAM2, "SE-M-BUBBLE-BEAM2") \ - X(SE_M_SUPERSONIC, "SE-M-SUPERSONIC") \ - X(SE_M_BELLY_DRUM, "SE-M-BELLY-DRUM") \ - X(SE_M_METRONOME, "SE-M-METRONOME") \ - X(SE_M_BONEMERANG, "SE-M-BONEMERANG") \ - X(SE_M_LICK, "SE-M-LICK") \ - X(SE_M_PSYBEAM, "SE-M-PSYBEAM") \ - X(SE_M_FAINT_ATTACK, "SE-M-FAINT-ATTACK") \ - X(SE_M_SWORDS_DANCE, "SE-M-SWORDS-DANCE") \ - X(SE_M_LEER, "SE-M-LEER") \ - X(SE_M_SWAGGER, "SE-M-SWAGGER") \ - X(SE_M_SWAGGER2, "SE-M-SWAGGER2") \ - X(SE_M_HEAL_BELL, "SE-M-HEAL-BELL") \ - X(SE_M_CONFUSE_RAY, "SE-M-CONFUSE-RAY") \ - X(SE_M_SNORE, "SE-M-SNORE") \ - X(SE_M_BRICK_BREAK, "SE-M-BRICK-BREAK") \ - X(SE_M_GIGA_DRAIN, "SE-M-GIGA-DRAIN") \ - X(SE_M_PSYBEAM2, "SE-M-PSYBEAM2") \ - X(SE_M_SOLAR_BEAM, "SE-M-SOLAR-BEAM") \ - X(SE_M_PETAL_DANCE, "SE-M-PETAL-DANCE") \ - X(SE_M_TELEPORT, "SE-M-TELEPORT") \ - X(SE_M_MINIMIZE, "SE-M-MINIMIZE") \ - X(SE_M_SKETCH, "SE-M-SKETCH") \ - X(SE_M_SWIFT, "SE-M-SWIFT") \ - X(SE_M_REFLECT, "SE-M-REFLECT") \ - X(SE_M_BARRIER, "SE-M-BARRIER") \ - X(SE_M_DETECT, "SE-M-DETECT") \ - X(SE_M_LOCK_ON, "SE-M-LOCK-ON") \ - X(SE_M_MOONLIGHT, "SE-M-MOONLIGHT") \ - X(SE_M_CHARM, "SE-M-CHARM") \ - X(SE_M_CHARGE, "SE-M-CHARGE") \ - X(SE_M_STRENGTH, "SE-M-STRENGTH") \ - X(SE_M_HYPER_BEAM, "SE-M-HYPER-BEAM") \ - X(SE_M_WATERFALL, "SE-M-WATERFALL") \ - X(SE_M_REVERSAL, "SE-M-REVERSAL") \ - X(SE_M_ACID_ARMOR, "SE-M-ACID-ARMOR") \ - X(SE_M_SANDSTORM, "SE-M-SANDSTORM") \ - X(SE_M_TRI_ATTACK, "SE-M-TRI-ATTACK") \ - X(SE_M_TRI_ATTACK2, "SE-M-TRI-ATTACK2") \ - X(SE_M_ENCORE, "SE-M-ENCORE") \ - X(SE_M_ENCORE2, "SE-M-ENCORE2") \ - X(SE_M_BATON_PASS, "SE-M-BATON-PASS") \ - X(SE_M_MILK_DRINK, "SE-M-MILK-DRINK") \ - X(SE_M_ATTRACT, "SE-M-ATTRACT") \ - X(SE_M_ATTRACT2, "SE-M-ATTRACT2") \ - X(SE_M_MORNING_SUN, "SE-M-MORNING-SUN") \ - X(SE_M_FLATTER, "SE-M-FLATTER") \ - X(SE_M_SAND_TOMB, "SE-M-SAND-TOMB") \ - X(SE_M_GRASSWHISTLE, "SE-M-GRASSWHISTLE") \ - X(SE_M_SPIT_UP, "SE-M-SPIT-UP") \ - X(SE_M_DIVE, "SE-M-DIVE") \ - X(SE_M_EARTHQUAKE, "SE-M-EARTHQUAKE") \ - X(SE_M_TWISTER, "SE-M-TWISTER") \ - X(SE_M_SWEET_SCENT, "SE-M-SWEET-SCENT") \ - X(SE_M_YAWN, "SE-M-YAWN") \ - X(SE_M_SKY_UPPERCUT, "SE-M-SKY-UPPERCUT") \ - X(SE_M_STAT_INCREASE, "SE-M-STAT-INCREASE") \ - X(SE_M_HEAT_WAVE, "SE-M-HEAT-WAVE") \ - X(SE_M_UPROAR, "SE-M-UPROAR") \ - X(SE_M_HAIL, "SE-M-HAIL") \ - X(SE_M_COSMIC_POWER, "SE-M-COSMIC-POWER") \ - X(SE_M_TEETER_DANCE, "SE-M-TEETER-DANCE") \ - X(SE_M_STAT_DECREASE, "SE-M-STAT-DECREASE") \ - X(SE_M_HAZE, "SE-M-HAZE") \ - X(SE_M_HYPER_BEAM2, "SE-M-HYPER-BEAM2") \ - X(SE_RG_DOOR, "SE-RG-DOOR") \ - X(SE_RG_CARD_FLIP, "SE-RG-CARD-FLIP") \ - X(SE_RG_CARD_FLIPPING, "SE-RG-CARD-FLIPPING") \ - X(SE_RG_CARD_OPEN, "SE-RG-CARD-OPEN") \ - X(SE_RG_BAG_CURSOR, "SE-RG-BAG-CURSOR") \ - X(SE_RG_BAG_POCKET, "SE-RG-BAG-POCKET") \ - X(SE_RG_BALL_CLICK, "SE-RG-BALL-CLICK") \ - X(SE_RG_SHOP, "SE-RG-SHOP") \ - X(SE_RG_SS_ANNE_HORN, "SE-RG-SS-ANNE-HORN") \ - X(SE_RG_HELP_OPEN, "SE-RG-HELP-OPEN") \ - X(SE_RG_HELP_CLOSE, "SE-RG-HELP-CLOSE") \ - X(SE_RG_HELP_ERROR, "SE-RG-HELP-ERROR") \ - X(SE_RG_DEOXYS_MOVE, "SE-RG-DEOXYS-MOVE") \ - X(SE_RG_POKE_JUMP_SUCCESS, "SE-RG-POKE-JUMP-SUCCESS") \ - X(SE_RG_POKE_JUMP_FAILURE, "SE-RG-POKE-JUMP-FAILURE") \ - X(SE_PHONE_CALL, "SE-PHONE-CALL") \ - X(SE_PHONE_CLICK, "SE-PHONE-CLICK") \ - X(SE_ARENA_TIMEUP1, "SE-ARENA-TIMEUP1") \ - X(SE_ARENA_TIMEUP2, "SE-ARENA-TIMEUP2") \ - X(SE_PIKE_CURTAIN_CLOSE, "SE-PIKE-CURTAIN-CLOSE") \ - X(SE_PIKE_CURTAIN_OPEN, "SE-PIKE-CURTAIN-OPEN") \ - X(SE_SUDOWOODO_SHAKE, "SE-SUDOWOODO-SHAKE") \ + X(SE_USE_ITEM) \ + X(SE_PC_LOGIN) \ + X(SE_PC_OFF) \ + X(SE_PC_ON) \ + X(SE_SELECT) \ + X(SE_WIN_OPEN) \ + X(SE_WALL_HIT) \ + X(SE_DOOR) \ + X(SE_EXIT) \ + X(SE_LEDGE) \ + X(SE_BIKE_BELL) \ + X(SE_NOT_EFFECTIVE) \ + X(SE_EFFECTIVE) \ + X(SE_SUPER_EFFECTIVE) \ + X(SE_BALL_OPEN) \ + X(SE_FAINT) \ + X(SE_FLEE) \ + X(SE_SLIDING_DOOR) \ + X(SE_SHIP) \ + X(SE_BANG) \ + X(SE_PIN) \ + X(SE_BOO) \ + X(SE_BALL) \ + X(SE_CONTEST_PLACE) \ + X(SE_A) \ + X(SE_I) \ + X(SE_U) \ + X(SE_E) \ + X(SE_O) \ + X(SE_N) \ + X(SE_SUCCESS) \ + X(SE_FAILURE) \ + X(SE_EXP) \ + X(SE_BIKE_HOP) \ + X(SE_SWITCH) \ + X(SE_CLICK) \ + X(SE_FU_ZAKU) \ + X(SE_CONTEST_CONDITION_LOSE) \ + X(SE_LAVARIDGE_FALL_WARP) \ + X(SE_ICE_STAIRS) \ + X(SE_ICE_BREAK) \ + X(SE_ICE_CRACK) \ + X(SE_FALL) \ + X(SE_UNLOCK) \ + X(SE_WARP_IN) \ + X(SE_WARP_OUT) \ + X(SE_REPEL) \ + X(SE_ROTATING_GATE) \ + X(SE_TRUCK_MOVE) \ + X(SE_TRUCK_STOP) \ + X(SE_TRUCK_UNLOAD) \ + X(SE_TRUCK_DOOR) \ + X(SE_BERRY_BLENDER) \ + X(SE_CARD) \ + X(SE_SAVE) \ + X(SE_BALL_BOUNCE_1) \ + X(SE_BALL_BOUNCE_2) \ + X(SE_BALL_BOUNCE_3) \ + X(SE_BALL_BOUNCE_4) \ + X(SE_BALL_TRADE) \ + X(SE_BALL_THROW) \ + X(SE_NOTE_C) \ + X(SE_NOTE_D) \ + X(SE_NOTE_E) \ + X(SE_NOTE_F) \ + X(SE_NOTE_G) \ + X(SE_NOTE_A) \ + X(SE_NOTE_B) \ + X(SE_NOTE_C_HIGH) \ + X(SE_PUDDLE) \ + X(SE_BRIDGE_WALK) \ + X(SE_ITEMFINDER) \ + X(SE_DING_DONG) \ + X(SE_BALLOON_RED) \ + X(SE_BALLOON_BLUE) \ + X(SE_BALLOON_YELLOW) \ + X(SE_BREAKABLE_DOOR) \ + X(SE_MUD_BALL) \ + X(SE_FIELD_POISON) \ + X(SE_ESCALATOR) \ + X(SE_THUNDERSTORM) \ + X(SE_THUNDERSTORM_STOP) \ + X(SE_DOWNPOUR) \ + X(SE_DOWNPOUR_STOP) \ + X(SE_RAIN) \ + X(SE_RAIN_STOP) \ + X(SE_THUNDER) \ + X(SE_THUNDER2) \ + X(SE_ELEVATOR) \ + X(SE_LOW_HEALTH) \ + X(SE_EXP_MAX) \ + X(SE_ROULETTE_BALL) \ + X(SE_ROULETTE_BALL2) \ + X(SE_TAILLOW_WING_FLAP) \ + X(SE_SHOP) \ + X(SE_CONTEST_HEART) \ + X(SE_CONTEST_CURTAIN_RISE) \ + X(SE_CONTEST_CURTAIN_FALL) \ + X(SE_CONTEST_ICON_CHANGE) \ + X(SE_CONTEST_ICON_CLEAR) \ + X(SE_CONTEST_MONS_TURN) \ + X(SE_SHINY) \ + X(SE_INTRO_BLAST) \ + X(SE_MUGSHOT) \ + X(SE_APPLAUSE) \ + X(SE_VEND) \ + X(SE_ORB) \ + X(SE_DEX_SCROLL) \ + X(SE_DEX_PAGE) \ + X(SE_POKENAV_ON) \ + X(SE_POKENAV_OFF) \ + X(SE_DEX_SEARCH) \ + X(SE_EGG_HATCH) \ + X(SE_BALL_TRAY_ENTER) \ + X(SE_BALL_TRAY_BALL) \ + X(SE_BALL_TRAY_EXIT) \ + X(SE_GLASS_FLUTE) \ + X(SE_M_THUNDERBOLT) \ + X(SE_M_THUNDERBOLT2) \ + X(SE_M_HARDEN) \ + X(SE_M_NIGHTMARE) \ + X(SE_M_VITAL_THROW) \ + X(SE_M_VITAL_THROW2) \ + X(SE_M_BUBBLE) \ + X(SE_M_BUBBLE2) \ + X(SE_M_BUBBLE3) \ + X(SE_M_RAIN_DANCE) \ + X(SE_M_CUT) \ + X(SE_M_STRING_SHOT) \ + X(SE_M_STRING_SHOT2) \ + X(SE_M_ROCK_THROW) \ + X(SE_M_GUST) \ + X(SE_M_GUST2) \ + X(SE_M_DOUBLE_SLAP) \ + X(SE_M_DOUBLE_TEAM) \ + X(SE_M_RAZOR_WIND) \ + X(SE_M_ICY_WIND) \ + X(SE_M_THUNDER_WAVE) \ + X(SE_M_COMET_PUNCH) \ + X(SE_M_MEGA_KICK) \ + X(SE_M_MEGA_KICK2) \ + X(SE_M_CRABHAMMER) \ + X(SE_M_JUMP_KICK) \ + X(SE_M_FLAME_WHEEL) \ + X(SE_M_FLAME_WHEEL2) \ + X(SE_M_FLAMETHROWER) \ + X(SE_M_FIRE_PUNCH) \ + X(SE_M_TOXIC) \ + X(SE_M_SACRED_FIRE) \ + X(SE_M_SACRED_FIRE2) \ + X(SE_M_EMBER) \ + X(SE_M_TAKE_DOWN) \ + X(SE_M_BLIZZARD) \ + X(SE_M_BLIZZARD2) \ + X(SE_M_SCRATCH) \ + X(SE_M_VICEGRIP) \ + X(SE_M_WING_ATTACK) \ + X(SE_M_FLY) \ + X(SE_M_SAND_ATTACK) \ + X(SE_M_RAZOR_WIND2) \ + X(SE_M_BITE) \ + X(SE_M_HEADBUTT) \ + X(SE_M_SURF) \ + X(SE_M_HYDRO_PUMP) \ + X(SE_M_WHIRLPOOL) \ + X(SE_M_HORN_ATTACK) \ + X(SE_M_TAIL_WHIP) \ + X(SE_M_MIST) \ + X(SE_M_POISON_POWDER) \ + X(SE_M_BIND) \ + X(SE_M_DRAGON_RAGE) \ + X(SE_M_SING) \ + X(SE_M_PERISH_SONG) \ + X(SE_M_PAY_DAY) \ + X(SE_M_DIG) \ + X(SE_M_DIZZY_PUNCH) \ + X(SE_M_SELF_DESTRUCT) \ + X(SE_M_EXPLOSION) \ + X(SE_M_ABSORB_2) \ + X(SE_M_ABSORB) \ + X(SE_M_SCREECH) \ + X(SE_M_BUBBLE_BEAM) \ + X(SE_M_BUBBLE_BEAM2) \ + X(SE_M_SUPERSONIC) \ + X(SE_M_BELLY_DRUM) \ + X(SE_M_METRONOME) \ + X(SE_M_BONEMERANG) \ + X(SE_M_LICK) \ + X(SE_M_PSYBEAM) \ + X(SE_M_FAINT_ATTACK) \ + X(SE_M_SWORDS_DANCE) \ + X(SE_M_LEER) \ + X(SE_M_SWAGGER) \ + X(SE_M_SWAGGER2) \ + X(SE_M_HEAL_BELL) \ + X(SE_M_CONFUSE_RAY) \ + X(SE_M_SNORE) \ + X(SE_M_BRICK_BREAK) \ + X(SE_M_GIGA_DRAIN) \ + X(SE_M_PSYBEAM2) \ + X(SE_M_SOLAR_BEAM) \ + X(SE_M_PETAL_DANCE) \ + X(SE_M_TELEPORT) \ + X(SE_M_MINIMIZE) \ + X(SE_M_SKETCH) \ + X(SE_M_SWIFT) \ + X(SE_M_REFLECT) \ + X(SE_M_BARRIER) \ + X(SE_M_DETECT) \ + X(SE_M_LOCK_ON) \ + X(SE_M_MOONLIGHT) \ + X(SE_M_CHARM) \ + X(SE_M_CHARGE) \ + X(SE_M_STRENGTH) \ + X(SE_M_HYPER_BEAM) \ + X(SE_M_WATERFALL) \ + X(SE_M_REVERSAL) \ + X(SE_M_ACID_ARMOR) \ + X(SE_M_SANDSTORM) \ + X(SE_M_TRI_ATTACK) \ + X(SE_M_TRI_ATTACK2) \ + X(SE_M_ENCORE) \ + X(SE_M_ENCORE2) \ + X(SE_M_BATON_PASS) \ + X(SE_M_MILK_DRINK) \ + X(SE_M_ATTRACT) \ + X(SE_M_ATTRACT2) \ + X(SE_M_MORNING_SUN) \ + X(SE_M_FLATTER) \ + X(SE_M_SAND_TOMB) \ + X(SE_M_GRASSWHISTLE) \ + X(SE_M_SPIT_UP) \ + X(SE_M_DIVE) \ + X(SE_M_EARTHQUAKE) \ + X(SE_M_TWISTER) \ + X(SE_M_SWEET_SCENT) \ + X(SE_M_YAWN) \ + X(SE_M_SKY_UPPERCUT) \ + X(SE_M_STAT_INCREASE) \ + X(SE_M_HEAT_WAVE) \ + X(SE_M_UPROAR) \ + X(SE_M_HAIL) \ + X(SE_M_COSMIC_POWER) \ + X(SE_M_TEETER_DANCE) \ + X(SE_M_STAT_DECREASE) \ + X(SE_M_HAZE) \ + X(SE_M_HYPER_BEAM2) \ + X(SE_RG_DOOR) \ + X(SE_RG_CARD_FLIP) \ + X(SE_RG_CARD_FLIPPING) \ + X(SE_RG_CARD_OPEN) \ + X(SE_RG_BAG_CURSOR) \ + X(SE_RG_BAG_POCKET) \ + X(SE_RG_BALL_CLICK) \ + X(SE_RG_SHOP) \ + X(SE_RG_SS_ANNE_HORN) \ + X(SE_RG_HELP_OPEN) \ + X(SE_RG_HELP_CLOSE) \ + X(SE_RG_HELP_ERROR) \ + X(SE_RG_DEOXYS_MOVE) \ + X(SE_RG_POKE_JUMP_SUCCESS) \ + X(SE_RG_POKE_JUMP_FAILURE) \ + X(SE_PHONE_CALL) \ + X(SE_PHONE_CLICK) \ + X(SE_ARENA_TIMEUP1) \ + X(SE_ARENA_TIMEUP2) \ + X(SE_PIKE_CURTAIN_CLOSE) \ + X(SE_PIKE_CURTAIN_OPEN) \ + X(SE_SUDOWOODO_SHAKE) \ // Create BGM list -#define X(songId, name) static const u8 sBGMName_##songId[] = _(name); +#define X(songId) static const u8 sBGMName_##songId[] = _(#songId); SOUND_LIST_BGM #undef X -#define X(songId, name) sBGMName_##songId, +#define X(songId) sBGMName_##songId, static const u8 *const gBGMNames[] = { SOUND_LIST_BGM @@ -3384,15 +3515,15 @@ SOUND_LIST_BGM #undef X // Create SE list -#define X(songId, name) static const u8 sSEName_##songId[] = _(name); +#define X(songId) static const u8 sSEName_##songId[] = _(#songId); SOUND_LIST_SE #undef X -#define X(songId, name) sSEName_##songId, +#define X(songId) sSEName_##songId, static const u8 *const gSENames[] = { SOUND_LIST_SE }; #undef X -#endif +#endif //DEBUG_SYSTEM_ENABLE == TRUE diff --git a/src/decoration.c b/src/decoration.c index cc740f189ee9..c5c7c02c34cb 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1211,7 +1211,7 @@ static void ShowDecorationOnMap_(u16 mapX, u16 mapY, u8 decWidth, u8 decHeight, { x = mapX + i; attributes = GetMetatileAttributesById(NUM_TILES_IN_PRIMARY + gDecorations[decoration].tiles[j * decWidth + i]); - if (MetatileBehavior_IsSecretBaseImpassable(attributes & METATILE_ATTR_BEHAVIOR_MASK) == TRUE + if (MetatileBehavior_IsSecretBaseImpassable(attributes & METATILE_ATTR_BEHAVIOR_MASK) == TRUE || (gDecorations[decoration].permission != DECORPERM_PASS_FLOOR && (attributes >> METATILE_ATTR_LAYER_SHIFT) != METATILE_LAYER_TYPE_NORMAL)) impassableFlag = MAPGRID_COLLISION_MASK; else @@ -1482,7 +1482,7 @@ static bool8 IsSecretBaseTrainerSpot(u8 behaviorAt, u16 layerType) // Can't place decoration where the player was standing when they interacted with the PC static bool8 IsntInitialPosition(u8 taskId, s16 x, s16 y, u16 layerType) { - if (x == gTasks[taskId].tInitialX + MAP_OFFSET + if (x == gTasks[taskId].tInitialX + MAP_OFFSET && y == gTasks[taskId].tInitialY + MAP_OFFSET && layerType != METATILE_LAYER_TYPE_NORMAL) return FALSE; diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 11bf12925b6f..a3710e04fb0a 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -665,7 +665,7 @@ void StartDodrioBerryPicking(u16 partyId, void (*exitCallback)(void)) { sExitingGame = FALSE; - if (gReceivedRemoteLinkPlayers != 0 && (sGame = AllocZeroed(sizeof(*sGame)))) + if (gReceivedRemoteLinkPlayers && (sGame = AllocZeroed(sizeof(*sGame)))) { ResetTasksAndSprites(); InitDodrioGame(sGame); @@ -775,7 +775,7 @@ static void Task_StartDodrioGame(u8 taskId) case 3: if (IsLinkTaskFinished()) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); diff --git a/src/ereader_screen.c b/src/ereader_screen.c index 3baff84a8580..b6bf7133a02b 100755 --- a/src/ereader_screen.c +++ b/src/ereader_screen.c @@ -112,7 +112,7 @@ static bool32 ValidateEReaderConnection(void) REG_IME = 0; *(u64 *)handshakes = *(u64 *)gLink.handshakeBuffer; REG_IME = backupIME; - + // Validate that we are player 1, the EReader is player 2, // and that players 3 and 4 are empty. if (handshakes[0] == SLAVE_HANDSHAKE && handshakes[1] == EREADER_HANDSHAKE @@ -154,8 +154,8 @@ enum { static u32 TryReceiveCard(u8 *state, u16 *timer) { - if (*state >= RECV_STATE_EXCHANGE - && *state <= RECV_STATE_WAIT_DISCONNECT + if (*state >= RECV_STATE_EXCHANGE + && *state <= RECV_STATE_WAIT_DISCONNECT && HasLinkErrorOccurred()) { // Return error status if an error occurs diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 2c5418da419e..18590a964fe6 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -2624,7 +2624,7 @@ bool8 ObjectEventIsTrainerAndCloseToPlayer(struct ObjectEvent *objectEvent) minY = objY - objectEvent->trainerRange_berryTreeId; maxX = objX + objectEvent->trainerRange_berryTreeId; maxY = objY + objectEvent->trainerRange_berryTreeId; - if (minX > playerX || maxX < playerX + if (minX > playerX || maxX < playerX || minY > playerY || maxY < playerY) return FALSE; diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 91a312222617..39cf8e4c23d2 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -565,7 +565,7 @@ static void CreateShedinja(u16 preEvoSpecies, struct Pokemon *mon) SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_HELD_ITEM, &data); SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_MARKINGS, &data); SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_ENCRYPT_SEPARATOR, &data); - + #if P_SHEDINJA_BALL >= GEN_4 SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_POKEBALL, &ball); RemoveBagItem(ball, 1); diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index d407cc02796e..c325b63e5cfd 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -201,6 +201,7 @@ int ProcessPlayerFieldInput(struct FieldInput *input) if (input->input_field_1_2) { PlaySE(SE_WIN_OPEN); + FreezeObjectEvents(); Debug_ShowMainMenu(); return TRUE; } diff --git a/src/field_tasks.c b/src/field_tasks.c index 099014a4d42c..dec5cba8002b 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -251,7 +251,7 @@ static const struct PacifidlogMetatileOffsets *GetPacifidlogBridgeMetatileOffset static void TrySetPacifidlogBridgeMetatiles(const struct PacifidlogMetatileOffsets *offsets, s16 x, s16 y, bool32 redrawMap) { offsets = GetPacifidlogBridgeMetatileOffsets(offsets, MapGridGetMetatileBehaviorAt(x, y)); - + // If offsets is NULL, position is not a log (don't set it) if (offsets) { @@ -301,7 +301,7 @@ static bool32 ShouldRaisePacifidlogLogs(s16 newX, s16 newY, s16 oldX, s16 oldY) } else if (MetatileBehavior_IsPacifidlogHorizontalLogLeft(oldBehavior)) { - // Still on same one if moved from left to right + // Still on same one if moved from left to right if (newX > oldX) return FALSE; } @@ -340,13 +340,13 @@ static bool32 ShouldSinkPacifidlogLogs(s16 newX, s16 newY, s16 oldX, s16 oldY) } else if (MetatileBehavior_IsPacifidlogHorizontalLogLeft(newBehavior)) { - // Still on same one if moved from right to left + // Still on same one if moved from right to left if (newX < oldX) return FALSE; } else if (MetatileBehavior_IsPacifidlogHorizontalLogRight(newBehavior)) { - // Still on same one if moved from left to right + // Still on same one if moved from left to right if (newX > oldX) return FALSE; } @@ -371,7 +371,7 @@ static void PacifidlogBridgePerStepCallback(u8 taskId) case 0: tPrevX = x; tPrevY = y; - + // If player is already standing on a log when the callback // is set then immediately set it to submerged TrySetLogBridgeFullySubmerged(x, y, TRUE); @@ -424,7 +424,7 @@ static void PacifidlogBridgePerStepCallback(u8 taskId) { // If player's current position is a log submerge it fully. TrySetLogBridgeFullySubmerged(x, y, TRUE); - + // Player's previous position is not the other end of a log // they're standing on, try to raise their previous position. if (tToRaiseX != -1 && tToRaiseY != -1) @@ -499,7 +499,7 @@ static void FortreeBridgePerStepCallback(u8 taskId) case 0: tPrevX = x; tPrevY = y; - + // If player is already on bridge when callback is set then lower it immediately. if (MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y))) { @@ -518,7 +518,7 @@ static void FortreeBridgePerStepCallback(u8 taskId) isFortreeBridgeCur = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(x, y)); isFortreeBridgePrev = MetatileBehavior_IsFortreeBridge(MapGridGetMetatileBehaviorAt(prevX, prevY)); - + // Make sure player isn't below bridge elevation = PlayerGetElevation(); onBridgeElevation = FALSE; @@ -672,7 +672,7 @@ static void SootopolisGymIcePerStepCallback(u8 taskId) // End if player hasn't moved if (x == tPrevX && y == tPrevY) return; - + tPrevX = x; tPrevY = y; tileBehavior = MapGridGetMetatileBehaviorAt(x, y); diff --git a/src/fieldmap.c b/src/fieldmap.c index 2b981dc6e543..bcd2d1019ab7 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -87,13 +87,13 @@ void InitMapFromSavedGame(void) void InitBattlePyramidMap(bool8 setPlayerPosition) { - CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); + CpuFastFill16(MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); GenerateBattlePyramidFloorLayout(sBackupMapData, setPlayerPosition); } void InitTrainerHillMap(void) { - CpuFastFill(MAPGRID_UNDEFINED << 16 | MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); + CpuFastFill16(MAPGRID_UNDEFINED, sBackupMapData, sizeof(sBackupMapData)); GenerateTrainerHillFloorLayout(sBackupMapData); } @@ -753,7 +753,7 @@ static int IsPosInConnectingMap(struct MapConnection *connection, int x, int y) return FALSE; } -struct MapConnection *GetConnectionAtCoords(s16 x, s16 y) +struct MapConnection *GetMapConnectionAtPos(s16 x, s16 y) { int count; struct MapConnection *connection; @@ -860,12 +860,13 @@ static void CopyTilesetToVramUsingHeap(struct Tileset const *tileset, u16 numTil } } -static void FieldmapPaletteDummy(u16 offset, u16 size) +// Below two are dummied functions from FRLG, used to tint the overworld palettes for the Quest Log +static void ApplyGlobalTintToPaletteEntries(u16 offset, u16 size) { } -static void FieldmapUnkDummy(void) +static void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count) { } @@ -880,17 +881,17 @@ void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u16 size) { LoadPalette(&black, destOffset, 2); LoadPalette(((u16 *)tileset->palettes) + 1, destOffset + 1, size - 2); - FieldmapPaletteDummy(destOffset + 1, (size - 2) >> 1); + ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1); } else if (tileset->isSecondary == TRUE) { LoadPalette(((u16 *)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size); - FieldmapPaletteDummy(destOffset, size >> 1); + ApplyGlobalTintToPaletteEntries(destOffset, size >> 1); } else { LoadCompressedPalette((u32 *)tileset->palettes, destOffset, size); - FieldmapPaletteDummy(destOffset, size >> 1); + ApplyGlobalTintToPaletteEntries(destOffset, size >> 1); } } } diff --git a/src/graphics.c b/src/graphics.c index 6a12dda1cc3f..306f35928fc5 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -42,9 +42,6 @@ const u32 gBattleAnimSpritePal_AlphaSymbol[] = INCBIN_U32("graphics/battle_anims const u32 gBattleAnimSpriteGfx_OmegaSymbol[] = INCBIN_U32("graphics/battle_anims/sprites/omega_symbol.4bpp.lz"); const u32 gBattleAnimSpritePal_OmegaSymbol[] = INCBIN_U32("graphics/battle_anims/sprites/omega_symbol.gbapal.lz"); -const u32 gBattleAnimSpriteGfx_PrimalParticles[] = INCBIN_U32("graphics/battle_anims/sprites/primal_particles.4bpp.lz"); -const u32 gBattleAnimSpritePal_PrimalParticles[] = INCBIN_U32("graphics/battle_anims/sprites/primal_particles.gbapal.lz"); - const u32 gBattleAnimSpriteGfx_FlashCannonBall[] = INCBIN_U32("graphics/battle_anims/sprites/flash_cannon_ball.4bpp.lz"); const u32 gBattleAnimSpritePal_FlashCannonBall[] = INCBIN_U32("graphics/battle_anims/sprites/flash_cannon_ball.gbapal.lz"); @@ -1309,8 +1306,6 @@ const u32 gBattleAnimSpritePal_FlyingDirt[] = INCBIN_U32("graphics/battle_anims/ const u32 gBattleAnimBgTilemap_Sandstorm[] = INCBIN_U32("graphics/battle_anims/backgrounds/sandstorm_brew.bin.lz"); const u32 gBattleAnimBgImage_Sandstorm[] = INCBIN_U32("graphics/battle_anims/backgrounds/sandstorm_brew.4bpp.lz"); -const u32 gBattleAnimBgTilemap_Windstorm[] = INCBIN_U32("graphics/battle_anims/backgrounds/sandstorm_brew.bin.lz"); -const u32 gBattleAnimBgImage_Windstorm[] = INCBIN_U32("graphics/battle_anims/backgrounds/windstorm_brew.4bpp.lz"); const u32 gBattleAnimSpritePal_Windstorm[] = INCBIN_U32("graphics/battle_anims/backgrounds/windstorm_brew.gbapal.lz"); const u32 gBattleAnimSpriteGfx_MetalSoundWaves[] = INCBIN_U32("graphics/battle_anims/sprites/metal_sound_waves.4bpp.lz"); diff --git a/src/item.c b/src/item.c index f93e7adad342..9099ad871b54 100644 --- a/src/item.c +++ b/src/item.c @@ -15,8 +15,6 @@ #include "constants/items.h" #include "constants/hold_effects.h" -extern u16 gUnknown_0203CF30[]; - // this file's functions static bool8 CheckPyramidBagHasItem(u16 itemId, u16 count); static bool8 CheckPyramidBagHasSpace(u16 itemId, u16 count); diff --git a/src/item_use.c b/src/item_use.c index 5cd162519f47..913c0700fa6f 100644 --- a/src/item_use.c +++ b/src/item_use.c @@ -457,7 +457,7 @@ static void CheckForHiddenItemsInMapConnection(u8 taskId) || var2 > y || y >= height) { - struct MapConnection *conn = GetConnectionAtCoords(x, y); + struct MapConnection *conn = GetMapConnectionAtPos(x, y); if (conn && IsHiddenItemPresentInConnection(conn, x, y) == TRUE) SetDistanceOfClosestHiddenItem(taskId, x - playerX, y - playerY); } @@ -1188,7 +1188,7 @@ void ItemUseInBattle_EnigmaBerry(u8 taskId) } } -void ItemUseOutOfBattle_FormChange(u8 taskId) +void ItemUseOutOfBattle_FormChange(u8 taskId) { gItemUseCB = ItemUseCB_FormChange; gTasks[taskId].data[0] = FALSE; diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index c54d6c3d34ba..4730c74fde16 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -61,7 +61,7 @@ struct SioInfo u8 filler[92]; }; -// Struct is mostly empty, presumably because usage of +// Struct is mostly empty, presumably because usage of // its fields was largely removed before release struct RfuDebug { @@ -1115,7 +1115,7 @@ static void RfuHandleReceiveCommand(u8 unused) { gRfu.recvBlock[i].receiving = RECV_STATE_FINISHED; Rfu_SetBlockReceivedFlag(i); - if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers != 0 && gRfu.parentChild == MODE_CHILD) + if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers && gRfu.parentChild == MODE_CHILD) ValidateAndReceivePokemonSioInfo(gBlockRecvBuffer); } } @@ -1643,7 +1643,7 @@ bool32 RfuTryDisconnectLeavingChildren(void) { u8 childrenLeaving = 0; s32 i; - + // Check all children, get those waiting to be disconnected for (i = 0; i < RFU_CHILD_MAX; i++) { @@ -2123,7 +2123,7 @@ void SetUnionRoomChatPlayerData(u32 numPlayers) // Only trainerId is shifted by the number of children, so the active flag and gender // are only ever set for the first child partnerInfo |= ((PINFO_ACTIVE_FLAG - | ((gLinkPlayers[gRfu.linkPlayerIdx[i]].gender & 1) << PINFO_GENDER_SHIFT) + | ((gLinkPlayers[gRfu.linkPlayerIdx[i]].gender & 1) << PINFO_GENDER_SHIFT) | (gLinkPlayers[gRfu.linkPlayerIdx[i]].trainerId & PINFO_TID_MASK)) << (numConnectedChildren * 8)); numConnectedChildren++; if (numConnectedChildren == numPlayers - 1) @@ -2477,7 +2477,7 @@ static void LinkManagerCB_UnionRoom(u8 msg, u8 paramCount) rfu_LMAN_stopManager(FALSE); } - if (gRfuLinkStatus->parentChild == MODE_NEUTRAL + if (gRfuLinkStatus->parentChild == MODE_NEUTRAL && !lman.pcswitch_flag && FuncIsActiveTask(Task_UnionRoomListen) == TRUE) gRfu.state = RFUSTATE_UR_CONNECT; @@ -2816,7 +2816,7 @@ static bool32 IsPartnerActivityIncompatible(s16 activity, struct RfuGameData *pa } else if (activity == (ACTIVITY_TRADE | IN_UNION_ROOM)) { - // Verify that the trade offered hasn't changed + // Verify that the trade offered hasn't changed struct RfuGameData *original = &gRfu.parent; if (original->tradeSpecies == SPECIES_EGG) { diff --git a/src/link_rfu_3.c b/src/link_rfu_3.c index 1e1fe5b34749..0825daea2c45 100644 --- a/src/link_rfu_3.c +++ b/src/link_rfu_3.c @@ -824,7 +824,7 @@ void UpdateWirelessStatusIndicatorSprite(void) struct Sprite *sprite = &gSprites[gWirelessStatusIndicatorSpriteId]; u8 signalStrength = RFU_LINK_ICON_LEVEL4_MAX; u8 i = 0; - + // Get weakest signal strength if (gRfuLinkStatus->parentChild == MODE_PARENT) { diff --git a/src/load_save.c b/src/load_save.c index 494a61bcf292..44e08b5e9c46 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -29,9 +29,9 @@ struct LoadedSaveData }; // EWRAM DATA -EWRAM_DATA struct SaveBlock2DMA gSaveblock2 = {0}; -EWRAM_DATA struct SaveBlock1DMA gSaveblock1 = {0}; -EWRAM_DATA struct PokemonStorageDMA gPokemonStorage = {0}; +EWRAM_DATA struct SaveBlock2ASLR gSaveblock2 = {0}; +EWRAM_DATA struct SaveBlock1ASLR gSaveblock1 = {0}; +EWRAM_DATA struct PokemonStorageASLR gPokemonStorage = {0}; EWRAM_DATA struct LoadedSaveData gLoadedSaveData = {0}; EWRAM_DATA u32 gLastEncryptionKey = 0; @@ -58,12 +58,12 @@ void CheckForFlashMemory(void) void ClearSav2(void) { - CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2DMA)); + CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2ASLR)); } void ClearSav1(void) { - CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1DMA)); + CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1ASLR)); } // Offset is the sum of the trainer id bytes diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c index 72d3ac632f7e..e35a5b29ac3c 100644 --- a/src/metatile_behavior.c +++ b/src/metatile_behavior.c @@ -795,7 +795,7 @@ u8 MetatileBehavior_GetBridgeType(u8 metatileBehavior) && metatileBehavior <= MB_BRIDGE_OVER_POND_HIGH) return metatileBehavior - MB_BRIDGE_OVER_OCEAN; - if (metatileBehavior >= MB_BRIDGE_OVER_POND_MED_EDGE_1 + if (metatileBehavior >= MB_BRIDGE_OVER_POND_MED_EDGE_1 && metatileBehavior <= MB_BRIDGE_OVER_POND_MED_EDGE_2) return BRIDGE_TYPE_POND_MED; diff --git a/src/minigame_countdown.c b/src/minigame_countdown.c index 5aaed0cb2365..b4d3b6558bc7 100644 --- a/src/minigame_countdown.c +++ b/src/minigame_countdown.c @@ -315,7 +315,7 @@ static void Task_StaticCountdown_Run(u8 taskId) u16 packet[RFU_PACKET_SIZE]; s16 *data = gTasks[taskId].data; - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { // Read link timer if (gRecvCmds[0][1] == LINKCMD_COUNTDOWN) diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c index c35fe8ed805e..b6610a64037e 100644 --- a/src/mystery_event_menu.c +++ b/src/mystery_event_menu.c @@ -201,7 +201,7 @@ static void CB2_MysteryEventMenu(void) case 6: if (IsLinkConnectionEstablished()) { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (GetLinkPlayerDataExchangeStatusTimed(2, 2) == EXCHANGE_DIFF_SELECTIONS) { diff --git a/src/mystery_gift.c b/src/mystery_gift.c index 72fc2b3774c6..c4e63bfbb81e 100755 --- a/src/mystery_gift.c +++ b/src/mystery_gift.c @@ -171,8 +171,8 @@ static bool32 ValidateWonderCard(const struct WonderCard *card) return FALSE; if (card->type >= CARD_TYPE_COUNT) return FALSE; - if (!(card->sendType == SEND_TYPE_DISALLOWED - || card->sendType == SEND_TYPE_ALLOWED + if (!(card->sendType == SEND_TYPE_DISALLOWED + || card->sendType == SEND_TYPE_ALLOWED || card->sendType == SEND_TYPE_ALLOWED_ALWAYS)) return FALSE; if (card->bgType >= NUM_WONDER_BGS) @@ -429,7 +429,7 @@ u32 MysteryGift_CompareCardFlags(const u16 *flagId, const struct MysteryGiftLink u32 MysteryGift_CheckStamps(const u16 *stamp, const struct MysteryGiftLinkGameData *data, const void *unused) { int stampsMissing = data->maxStamps - GetNumStampsInMetadata(&data->cardMetadata, data->maxStamps); - + // Has full stamp card? if (stampsMissing == 0) return 1; @@ -598,7 +598,7 @@ void MysteryGift_TryIncrementStat(u32 stat, u32 trainerId) switch (stat) { case CARD_STAT_NUM_TRADES: - IncrementCardStatForNewTrainer(CARD_STAT_NUM_TRADES, + IncrementCardStatForNewTrainer(CARD_STAT_NUM_TRADES, trainerId, gSaveBlock1Ptr->mysteryGift.trainerIds[1], ARRAY_COUNT(gSaveBlock1Ptr->mysteryGift.trainerIds[1])); diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index 62f12a5cfc02..ba366ad1b620 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -1232,7 +1232,7 @@ static void Task_MysteryGift(u8 taskId) data->state = MG_STATE_CLIENT_LINK_WAIT; break; case MG_STATE_CLIENT_LINK_WAIT: - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { ClearScreenInBg0(TRUE); data->state = MG_STATE_CLIENT_COMMUNICATING; @@ -1240,7 +1240,7 @@ static void Task_MysteryGift(u8 taskId) } else if (gSpecialVar_Result == LINKUP_FAILED) { - // Link failed, return to link start menu + // Link failed, return to link start menu ClearScreenInBg0(TRUE); data->state = MG_STATE_SOURCE_PROMPT; } @@ -1528,7 +1528,7 @@ static void Task_MysteryGift(u8 taskId) } break; case MG_STATE_SERVER_LINK_WAIT: - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { ClearScreenInBg0(TRUE); data->state = MG_STATE_SERVER_LINK_START; diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c index 102ac9d0be9c..88c498fd1c86 100644 --- a/src/mystery_gift_view.c +++ b/src/mystery_gift_view.c @@ -340,7 +340,7 @@ static void BufferCardText(void) if (sWonderCardData->card.idNumber > 999999) sWonderCardData->card.idNumber = 999999; ConvertIntToDecimalStringN(sWonderCardData->idNumberText, sWonderCardData->card.idNumber, STR_CONV_MODE_LEFT_ALIGN, 6); - + // Copy body text for (i = 0; i < WONDER_CARD_BODY_TEXT_LINES; i++) { @@ -364,12 +364,12 @@ static void BufferCardText(void) break; case CARD_TYPE_LINK_STAT: sWonderCardData->giftText[0] = EOS; - + // Load stats stats[0] = sWonderCardData->cardMetadata.battlesWon < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesWon : MAX_WONDER_CARD_STAT; stats[1] = sWonderCardData->cardMetadata.battlesLost < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.battlesLost : MAX_WONDER_CARD_STAT; stats[2] = sWonderCardData->cardMetadata.numTrades < MAX_WONDER_CARD_STAT ? sWonderCardData->cardMetadata.numTrades : MAX_WONDER_CARD_STAT; - + // Init stat text arrays for (i = 0; i < ARRAY_COUNT(sWonderCardData->statTextData); i++) { @@ -446,7 +446,7 @@ static void DrawCardWindow(u8 whichWindow) sCard_FooterTextOffsets[sWonderCardData->card.type], sCard_TextColorTable[sWonderCardData->gfx->footerTextPal], 0, sWonderCardData->footerLine1Text); - + // Print footer line 2 if (sWonderCardData->card.type != CARD_TYPE_LINK_STAT) { @@ -486,7 +486,7 @@ static void CreateCardSprites(void) { u8 i = 0; sWonderCardData->monIconSpriteId = SPRITE_NONE; - + // Create icon sprite if (sWonderCardData->cardMetadata.iconSpecies != SPECIES_NONE) { @@ -505,7 +505,7 @@ static void CreateCardSprites(void) sWonderCardData->stampSpriteIds[i][1] = SPRITE_NONE; sWonderCardData->stampSpriteIds[i][0] = CreateSprite(&sSpriteTemplate_StampShadow, 216 - 32 * i, 144, 8); if (sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i] != SPECIES_NONE) - sWonderCardData->stampSpriteIds[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i]), + sWonderCardData->stampSpriteIds[i][1] = CreateMonIconNoPersonality(GetIconSpeciesNoPersonality(sWonderCardData->cardMetadata.stampData[STAMP_SPECIES][i]), SpriteCallbackDummy, 216 - 32 * i, 136, 0); @@ -520,7 +520,7 @@ static void DestroyCardSprites(void) // Destroy icon sprite if (sWonderCardData->monIconSpriteId != SPRITE_NONE) FreeAndDestroyMonIconSprite(&gSprites[sWonderCardData->monIconSpriteId]); - + // Destroy stamp sprites if (sWonderCardData->card.maxStamps != 0 && sWonderCardData->card.type == CARD_TYPE_STAMP) { @@ -865,7 +865,7 @@ u32 WonderNews_GetInput(u16 input) static void BufferNewsText(void) { u8 i = 0; - + // Copy title text memcpy(sWonderNewsData->titleText, sWonderNewsData->news.titleText, WONDER_NEWS_TEXT_LENGTH); sWonderNewsData->titleText[WONDER_NEWS_TEXT_LENGTH] = EOS; @@ -896,7 +896,7 @@ static void DrawNewsWindows(void) if (x < 0) x = 0; AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_TITLE], FONT_SHORT_COPY_1, x, 6, sNews_TextColorTable[sWonderNewsData->gfx->titleTextPal], 0, sWonderNewsData->titleText); - + // Print body text for (; i < WONDER_NEWS_BODY_TEXT_LINES; i++) AddTextPrinterParameterized3(sWonderNewsData->windowIds[NEWS_WIN_BODY], FONT_SHORT_COPY_1, 0, diff --git a/src/party_menu.c b/src/party_menu.c index 03e4a5826dd2..a93f66ebbe1f 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -5040,7 +5040,8 @@ static void CB2_ShowSummaryScreenToForgetMove(void) static void CB2_ReturnToPartyMenuWhileLearningMove(void) { - SetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_LEVEL, &sFinalLevel); // to avoid displaying incorrect level + if (sFinalLevel != 0) + SetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_LEVEL, &sFinalLevel); // to avoid displaying incorrect level InitPartyMenu(PARTY_MENU_TYPE_FIELD, PARTY_LAYOUT_SINGLE, PARTY_ACTION_CHOOSE_MON, TRUE, PARTY_MSG_NONE, Task_ReturnToPartyMenuWhileLearningMove, gPartyMenu.exitCallback); } @@ -5139,6 +5140,16 @@ static void Task_TryLearningNextMoveAfterText(u8 taskId) Task_TryLearningNextMove(taskId); } +static void DisplayExpPoints(u8 taskId, TaskFunc task, u8 holdEffectParam) +{ + PlaySE(SE_USE_ITEM); + ConvertIntToDecimalStringN(gStringVar2, sExpCandyExperienceTable[holdEffectParam], STR_CONV_MODE_LEFT_ALIGN, 3); + StringExpandPlaceholders(gStringVar4, gText_PkmnGainedExp); + DisplayPartyMenuMessage(gStringVar4, FALSE); + ScheduleBgCopyTilemapToVram(2); + gTasks[taskId].func = task; +} + void ItemUseCB_RareCandy(u8 taskId, TaskFunc task) { struct Pokemon *mon = &gPlayerParty[gPartyMenu.slotId]; @@ -5146,6 +5157,7 @@ void ItemUseCB_RareCandy(u8 taskId, TaskFunc task) s16 *arrayPtr = ptr->data; u16 *itemPtr = &gSpecialVar_ItemId; bool8 cannotUseEffect; + u8 holdEffectParam = ItemId_GetHoldEffectParam(*itemPtr); sInitialLevel = GetMonData(mon, MON_DATA_LEVEL); if (sInitialLevel != MAX_LEVEL) @@ -5176,8 +5188,18 @@ void ItemUseCB_RareCandy(u8 taskId, TaskFunc task) if (sFinalLevel > sInitialLevel) { PlayFanfareByFanfareNum(FANFARE_LEVEL_UP); - ConvertIntToDecimalStringN(gStringVar2, sFinalLevel, STR_CONV_MODE_LEFT_ALIGN, 3); - StringExpandPlaceholders(gStringVar4, gText_PkmnElevatedToLvVar2); + if (holdEffectParam == 0) // Rare Candy + { + ConvertIntToDecimalStringN(gStringVar2, sFinalLevel, STR_CONV_MODE_LEFT_ALIGN, 3); + StringExpandPlaceholders(gStringVar4, gText_PkmnElevatedToLvVar2); + } + else // Exp Candies + { + ConvertIntToDecimalStringN(gStringVar2, sExpCandyExperienceTable[holdEffectParam - 1], STR_CONV_MODE_LEFT_ALIGN, 6); + ConvertIntToDecimalStringN(gStringVar3, sFinalLevel, STR_CONV_MODE_LEFT_ALIGN, 3); + StringExpandPlaceholders(gStringVar4, gText_PkmnGainedExpAndElevatedToLvVar3); + } + DisplayPartyMenuMessage(gStringVar4, TRUE); ScheduleBgCopyTilemapToVram(2); gTasks[taskId].func = Task_DisplayLevelUpStatsPg1; @@ -5186,6 +5208,7 @@ void ItemUseCB_RareCandy(u8 taskId, TaskFunc task) { PlaySE(SE_USE_ITEM); gPartyMenuUseExitCallback = FALSE; + ConvertIntToDecimalStringN(gStringVar2, sExpCandyExperienceTable[holdEffectParam - 1], STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gText_PkmnGainedExp); DisplayPartyMenuMessage(gStringVar4, FALSE); ScheduleBgCopyTilemapToVram(2); @@ -5291,11 +5314,14 @@ static void Task_TryLearningNextMove(u8 taskId) switch (result) { case 0: // No moves to learn + if (sInitialLevel >= sFinalLevel) + PartyMenuTryEvolution(taskId); break; case MON_HAS_MAX_MOVES: DisplayMonNeedsToReplaceMove(taskId); break; case MON_ALREADY_KNOWS_MOVE: + gTasks[taskId].func = Task_TryLearningNextMove; return; default: DisplayMonLearnedMove(taskId, result); @@ -5304,8 +5330,6 @@ static void Task_TryLearningNextMove(u8 taskId) if (result) break; } - if (sInitialLevel >= sFinalLevel) - PartyMenuTryEvolution(taskId); } static void PartyMenuTryEvolution(u8 taskId) @@ -5313,6 +5337,10 @@ static void PartyMenuTryEvolution(u8 taskId) struct Pokemon *mon = &gPlayerParty[gPartyMenu.slotId]; u16 targetSpecies = GetEvolutionTargetSpecies(mon, EVO_MODE_NORMAL, ITEM_NONE, NULL); + // Resets values to 0 so other means of teaching moves doesn't overwrite levels + sInitialLevel = 0; + sFinalLevel = 0; + if (targetSpecies != SPECIES_NONE) { FreePartyPointers(); diff --git a/src/pokeball.c b/src/pokeball.c index 0f893eda2eaa..9147ce16ba71 100644 --- a/src/pokeball.c +++ b/src/pokeball.c @@ -1167,6 +1167,8 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite) } } +#undef HIBYTE + static void SpriteCB_ReleaseMon2FromBall(struct Sprite *sprite) { if (sprite->data[0]++ > 24) diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c index dde86f1557d5..01cbacb44732 100755 --- a/src/pokedex_area_screen.c +++ b/src/pokedex_area_screen.c @@ -560,7 +560,7 @@ static void DoAreaGlow(void) if (sPokedexAreaScreen->markerTimer > 12) { sPokedexAreaScreen->markerTimer = 0; - + // Flash the marker // With a max of 4, the marker will disappear twice sPokedexAreaScreen->markerFlashCounter++; @@ -737,7 +737,7 @@ static void CreateAreaMarkerSprites(void) static void DestroyAreaScreenSprites(void) { u16 i; - + // Destroy area marker sprites FreeSpriteTilesByTag(TAG_AREA_MARKER); FreeSpritePaletteByTag(TAG_AREA_MARKER); @@ -772,7 +772,7 @@ static void CreateAreaUnknownSprites(void) if (sPokedexAreaScreen->numOverworldAreas || sPokedexAreaScreen->numSpecialAreas) { - // The current species is present on the map, don't create any "Area Unknown" sprites + // The current species is present on the map, don't create any "Area Unknown" sprites for (i = 0; i < ARRAY_COUNT(sPokedexAreaScreen->areaUnknownSprites); i++) sPokedexAreaScreen->areaUnknownSprites[i] = NULL; } diff --git a/src/pokemon.c b/src/pokemon.c index b421e5aced14..a4fcc6b38922 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -39,6 +39,7 @@ #include "trainer_hill.h" #include "util.h" #include "constants/abilities.h" +#include "constants/battle_config.h" #include "constants/battle_frontier.h" #include "constants/battle_move_effects.h" #include "constants/battle_script_commands.h" @@ -49,8 +50,8 @@ #include "constants/moves.h" #include "constants/songs.h" #include "constants/trainers.h" +#include "constants/union_room.h" #include "constants/weather.h" -#include "constants/battle_config.h" struct SpeciesItem { @@ -2951,7 +2952,7 @@ static const u8 sMonAnimationDelayTable[NUM_SPECIES - 1] = #define PP_UP_SHIFTS_INV(val) (u8)~(val), (u8)~((val) << 2), (u8)~((val) << 4), (u8)~((val) << 6) // PP Up bonuses are stored for a Pokémon as a single byte. -// There are 2 bits (a value 0-3) for each move slot that +// There are 2 bits (a value 0-3) for each move slot that // represent how many PP Ups have been applied. // The following arrays take a move slot id and return: // gPPUpGetMask - A mask to get the number of PP Ups applied to that move slot @@ -2978,7 +2979,9 @@ const u8 gStatStageRatios[MAX_STAT_STAGE + 1][2] = {40, 10}, // +6, MAX_STAT_STAGE }; -const u16 gLinkPlayerFacilityClasses[NUM_MALE_LINK_FACILITY_CLASSES + NUM_FEMALE_LINK_FACILITY_CLASSES] = +// The classes used by other players in the Union Room. +// These should correspond with the overworld graphics in sUnionRoomObjGfxIds +const u16 gUnionRoomFacilityClasses[NUM_UNION_ROOM_CLASSES * GENDER_COUNT] = { // Male classes FACILITY_CLASS_COOLTRAINER_M, @@ -2989,7 +2992,7 @@ const u16 gLinkPlayerFacilityClasses[NUM_MALE_LINK_FACILITY_CLASSES + NUM_FEMALE FACILITY_CLASS_BUG_CATCHER, FACILITY_CLASS_PKMN_BREEDER_M, FACILITY_CLASS_GUITARIST, - // Female Classes + // Female classes FACILITY_CLASS_COOLTRAINER_F, FACILITY_CLASS_HEX_MANIAC, FACILITY_CLASS_PICNICKER, @@ -3304,7 +3307,7 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, | (gSaveBlock2Ptr->playerTrainerId[1] << 8) | (gSaveBlock2Ptr->playerTrainerId[2] << 16) | (gSaveBlock2Ptr->playerTrainerId[3] << 24); - + if (CheckBagHasItem(ITEM_SHINY_CHARM, 1)) { u32 shinyValue; @@ -3412,7 +3415,7 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, } } #endif - + } if (gBaseStats[species].abilities[1]) @@ -3827,9 +3830,9 @@ u16 GetUnionRoomTrainerPic(void) else linkId = GetMultiplayerId() ^ 1; - arrId = gLinkPlayers[linkId].trainerId & 7; - arrId |= gLinkPlayers[linkId].gender << 3; - return FacilityClassToPicIndex(gLinkPlayerFacilityClasses[arrId]); + arrId = gLinkPlayers[linkId].trainerId % NUM_UNION_ROOM_CLASSES; + arrId |= gLinkPlayers[linkId].gender * NUM_UNION_ROOM_CLASSES; + return FacilityClassToPicIndex(gUnionRoomFacilityClasses[arrId]); } u16 GetUnionRoomTrainerClass(void) @@ -3842,9 +3845,9 @@ u16 GetUnionRoomTrainerClass(void) else linkId = GetMultiplayerId() ^ 1; - arrId = gLinkPlayers[linkId].trainerId & 7; - arrId |= gLinkPlayers[linkId].gender << 3; - return gFacilityClassToTrainerClass[gLinkPlayerFacilityClasses[arrId]]; + arrId = gLinkPlayers[linkId].trainerId % NUM_UNION_ROOM_CLASSES; + arrId |= gLinkPlayers[linkId].gender * NUM_UNION_ROOM_CLASSES; + return gFacilityClassToTrainerClass[gUnionRoomFacilityClasses[arrId]]; } void CreateEventLegalEnemyMon(void) @@ -5289,7 +5292,7 @@ u16 GetAbilityBySpecies(u16 species, u8 abilityNum) gLastUsedAbility = gBaseStats[species].abilities[abilityNum]; else gLastUsedAbility = ABILITY_NONE; - + if (abilityNum >= NUM_NORMAL_ABILITY_SLOTS) // if abilityNum is empty hidden ability, look for other hidden abilities { for (i = NUM_NORMAL_ABILITY_SLOTS; i < NUM_ABILITY_SLOTS && gLastUsedAbility == ABILITY_NONE; i++) @@ -5297,12 +5300,12 @@ u16 GetAbilityBySpecies(u16 species, u8 abilityNum) gLastUsedAbility = gBaseStats[species].abilities[i]; } } - + for (i = 0; i < NUM_ABILITY_SLOTS && gLastUsedAbility == ABILITY_NONE; i++) // look for any non-empty ability { gLastUsedAbility = gBaseStats[species].abilities[i]; } - + return gLastUsedAbility; } @@ -5512,7 +5515,7 @@ bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex, #endif // EXP candies store an index for this table in their holdEffectParam. -static const u32 sExpCandyExperienceTable[] = { +const u32 sExpCandyExperienceTable[] = { [EXP_100 - 1] = 100, [EXP_800 - 1] = 800, [EXP_3000 - 1] = 3000, @@ -5701,20 +5704,26 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov && GetMonData(mon, MON_DATA_LEVEL, NULL) != MAX_LEVEL) { u8 param = ItemId_GetHoldEffectParam(item); + dataUnsigned = 0; + if (param == 0) // Rare Candy { dataUnsigned = gExperienceTables[gBaseStats[GetMonData(mon, MON_DATA_SPECIES, NULL)].growthRate][GetMonData(mon, MON_DATA_LEVEL, NULL) + 1]; } - else if (param < ARRAY_COUNT(sExpCandyExperienceTable)) // EXP Candies + else if (param - 1 < ARRAY_COUNT(sExpCandyExperienceTable)) // EXP Candies { u16 species = GetMonData(mon, MON_DATA_SPECIES, NULL); dataUnsigned = sExpCandyExperienceTable[param - 1] + GetMonData(mon, MON_DATA_EXP, NULL); if (dataUnsigned > gExperienceTables[gBaseStats[species].growthRate][MAX_LEVEL]) dataUnsigned = gExperienceTables[gBaseStats[species].growthRate][MAX_LEVEL]; } - SetMonData(mon, MON_DATA_EXP, &dataUnsigned); - CalculateMonStats(mon); - retVal = FALSE; + + if (dataUnsigned != 0) // Failsafe + { + SetMonData(mon, MON_DATA_EXP, &dataUnsigned); + CalculateMonStats(mon); + retVal = FALSE; + } } // Cure status @@ -6063,7 +6072,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov case 4: // ITEM5_PP_MAX dataUnsigned = (GetMonData(mon, MON_DATA_PP_BONUSES, NULL) & gPPUpGetMask[moveIndex]) >> (moveIndex * 2); temp2 = CalculatePPWithBonus(GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL), GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex); - + // Check if 3 PP Ups have been applied already, and that the move has a total PP of at least 5 (excludes Sketch) if (dataUnsigned < 3 && temp2 >= 5) { @@ -6343,7 +6352,7 @@ u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 mode, u16 evolutionItem, s { partnerSpecies = GetMonData(tradePartner, MON_DATA_SPECIES, 0); partnerHeldItem = GetMonData(tradePartner, MON_DATA_HELD_ITEM, 0); - + if (partnerHeldItem == ITEM_ENIGMA_BERRY) partnerHoldEffect = gSaveBlock1Ptr->enigmaBerry.holdEffect; else @@ -7714,7 +7723,7 @@ void SetWildMonHeldItem(void) { if (GetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, NULL) != ITEM_NONE) continue; // prevent ovewriting previously set item - + rnd = Random() % 100; species = GetMonData(&gEnemyParty[i], MON_DATA_SPECIES, 0); if (gMapHeader.mapLayoutId == LAYOUT_ALTERING_CAVE) @@ -8040,7 +8049,7 @@ static bool8 ShouldSkipFriendshipChange(void) // Only the 'default' mode (MON_SPR_GFX_MODE_NORMAL) is used, which is set // up to allocate 4 sprites using the battler sprite templates (gBattlerSpriteTemplates). // MON_SPR_GFX_MODE_BATTLE is identical but never used. -// MON_SPR_GFX_MODE_FULL_PARTY is set up to allocate 7 sprites (party + trainer?) +// MON_SPR_GFX_MODE_FULL_PARTY is set up to allocate 7 sprites (party + trainer?) // using a generic 64x64 template, and is also never used. // Between the unnecessarily large sizes below, a mistake allocating the spritePointers @@ -8102,7 +8111,7 @@ struct MonSpritesGfxManager *CreateMonSpritesGfxManager(u8 managerId, u8 mode) gfx->dataSize = 1; gfx->mode = MON_SPR_GFX_MODE_FULL_PARTY; break; - // case MON_SPR_GFX_MODE_BATTLE: + // case MON_SPR_GFX_MODE_BATTLE: case MON_SPR_GFX_MODE_NORMAL: default: gfx->numSprites = MAX_BATTLERS_COUNT; diff --git a/src/pokemon_debug.c b/src/pokemon_debug.c index 8775889fdf2f..4168b75242d6 100644 --- a/src/pokemon_debug.c +++ b/src/pokemon_debug.c @@ -337,7 +337,7 @@ const u8 gFrontAnimNames[][34] = [ANIM_SHAKE_GLOW_WHITE_SLOW] = _("SHAKE GLOW WHITE SLOW"), [ANIM_SHAKE_GLOW_PURPLE_SLOW] = _("SHAKE GLOW PURPLE SLOW"), }; -const u8 gBattleBackgroundNames[][30] = +const u8 gBattleBackgroundNames[][30] = { [MAP_BATTLE_SCENE_NORMAL] = _("NORMAL "), [MAP_BATTLE_SCENE_GYM] = _("GYM "), @@ -354,7 +354,7 @@ const u8 gBattleBackgroundNames[][30] = [MAP_BATTLE_SCENE_KYOGRE] = _("KYOGRE "), [MAP_BATTLE_SCENE_RAYQUAZA] = _("RAYQUAZA "), }; -const u8 gBattleBackgroundTerrainNames[][26] = +const u8 gBattleBackgroundTerrainNames[][26] = { [BATTLE_TERRAIN_GRASS] = _("NORMAL - GRASS "), [BATTLE_TERRAIN_LONG_GRASS] = _("NORMAL - LONG GRASS "), @@ -403,13 +403,13 @@ static void PrintInstructionsOnWindow(struct PokemonDebugMenu *data) u8 textInstructionsSubmenuOneGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back {A_BUTTON} Submenu 2$"); u8 textInstructionsSubmenuTwo[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back$"); u8 textInstructionsSubmenuTwoGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back$"); - + u8 textBottom[] = _("BACK:\nFRONT:\nBG:$"); u8 textBottomForms[] = _("BACK:\nFRONT:\nBG:\nFORMS:$"); u8 textBottomSubmenuTwo[] = _("B coords:\nF coords:\nF elev:"); u16 species = data->modifyArrows.currValue; - + u8 textL[] = _("{L_BUTTON}"); u8 textR[] = _("{R_BUTTON}"); @@ -481,7 +481,7 @@ static void PrintDigitChars(struct PokemonDebugMenu *data) for (i = 0; i < data->modifyArrows.maxDigits; i++) text[i] = data->modifyArrows.charDigits[i]; - + text[i++] = CHAR_SPACE; text[i++] = CHAR_HYPHEN; @@ -490,7 +490,7 @@ static void PrintDigitChars(struct PokemonDebugMenu *data) if (data->isFemale) text[i++] = CHAR_FEMALE; else - text[i++] = CHAR_MALE; + text[i++] = CHAR_MALE; text[i++] = CHAR_HYPHEN; } @@ -641,7 +641,7 @@ static bool32 TryMoveDigit(struct PokemonDebugModifyArrows *modArrows, bool32 mo if (charDigits[modArrows->currentDigit] == CHAR_0) { charDigits[modArrows->currentDigit] = CHAR_9; - + for (i = modArrows->currentDigit - 1; i >= 0; i--) { if (charDigits[i] == CHAR_0) @@ -796,7 +796,7 @@ static u8 GetBattlerSpriteFinal_YCustom(u16 species, s8 offset_picCoords, s8 off //FrontPicCoords offset = gMonFrontPicCoords[species].y_offset + offset_picCoords; - + //Elevation offset -= GetElevationValue(species) + offset_elevation; @@ -805,7 +805,7 @@ static u8 GetBattlerSpriteFinal_YCustom(u16 species, s8 offset_picCoords, s8 off if (y > DISPLAY_HEIGHT - MON_PIC_HEIGHT + 8) y = DISPLAY_HEIGHT - MON_PIC_HEIGHT + 8; - + return y; } @@ -839,7 +839,7 @@ static void LoadAndCreateEnemyShadowSpriteCustom(struct PokemonDebugMenu *data, data->frontShadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y + 29, 0xC8); gSprites[data->frontShadowSpriteId].data[0] = data->frontspriteId; - + gSprites[data->frontShadowSpriteId].callback = SpriteCB_EnemyShadowCustom; gSprites[data->frontShadowSpriteId].oam.priority = 0; gSprites[data->frontShadowSpriteId].invisible = invisible; @@ -945,7 +945,7 @@ static void LoadBattleBg(u8 battleBgType, u8 battleTerrain) LZDecompressVram(gBattleTerrainTiles_Rayquaza, (void*)(BG_CHAR_ADDR(2))); LZDecompressVram(gBattleTerrainTilemap_Rayquaza, (void*)(BG_SCREEN_ADDR(26))); LoadCompressedPalette(gBattleTerrainPalette_Rayquaza, 0x20, 0x60); - break; + break; } } static void PrintBattleBgName(u8 taskId) @@ -1005,7 +1005,7 @@ static void UpdateBattleBg(u8 taskId, bool8 increment) { if (increment) data->battleBgType += 1; - else + else data->battleBgType -= 1; } @@ -1148,7 +1148,7 @@ void CB2_Debug_Pokemon(void) data->battleBgType = 0; data->battleTerrain = 0; LoadBattleBg(data->battleBgType , data->battleTerrain); - + gMain.state++; break; case 2: @@ -1377,7 +1377,7 @@ static void UpdateSubmenuOneOptionValue(u8 taskId, bool8 increment) data->animIdFront = sMonFrontAnimIdsTable[modArrows->currValue - 1]; UpdateMonAnimNames(taskId); ResetOffsetSpriteValues(data); - + UpdateBattlerValue(data); ReloadPokemonSprites(data); while (!(gMain.intrCheck & INTR_FLAG_VBLANK)); @@ -1486,7 +1486,7 @@ static void Handle_Input_Debug_Pokemon(u8 taskId) if (JOY_NEW(START_BUTTON)) { data->isShiny = !data->isShiny; - + if(data->isShiny) PlaySE(SE_SHINY); @@ -1641,7 +1641,7 @@ static void Handle_Input_Debug_Pokemon(u8 taskId) data->submenuYpos[2] += 1; if (data->submenuYpos[2] >= 3) data->submenuYpos[2] = 0; - + data->yPosModifyArrows.currentDigit = data->submenuYpos[2]; gSprites[data->yPosModifyArrows.arrowSpriteId[0]].y = OPTIONS_ARROW_Y + data->yPosModifyArrows.currentDigit * 12; } @@ -1672,7 +1672,7 @@ static void ReloadPokemonSprites(struct PokemonDebugMenu *data) u16 species = data->currentmonId; s16 offset_y; u8 front_x = sBattlerCoords[0][1].x; - u8 front_y; + u8 front_y; DestroySprite(&gSprites[data->frontspriteId]); DestroySprite(&gSprites[data->backspriteId]); @@ -1706,7 +1706,7 @@ static void ReloadPokemonSprites(struct PokemonDebugMenu *data) gSprites[data->frontspriteId].oam.priority = 0; //Front Shadow LoadAndCreateEnemyShadowSpriteCustom(data, species); - + //Back HandleLoadSpecialPokePic(FALSE, gMonSpritesGfxPtr->sprites.ptr[2], species, (data->isFemale ? FEMALE_PERSONALITY : MALE_PERSONALITY)); BattleLoadOpponentMonSpriteGfxCustom(species, data->isFemale, data->isShiny, 5); @@ -1720,7 +1720,7 @@ static void ReloadPokemonSprites(struct PokemonDebugMenu *data) //Icon Sprite data->iconspriteId = CreateMonIcon(species, SpriteCB_MonIcon, DEBUG_ICON_X, DEBUG_ICON_Y, 4, (data->isFemale ? FEMALE_PERSONALITY : MALE_PERSONALITY)); gSprites[data->iconspriteId].oam.priority = 0; - + //Modify Arrows LoadSpritePalette(&gSpritePalette_Arrow); data->modifyArrows.arrowSpriteId[0] = CreateSprite(&gSpriteTemplate_Arrow, MODIFY_DIGITS_ARROW_X + (data->modifyArrows.currentDigit * 6), MODIFY_DIGITS_ARROW1_Y, 0); diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 66bfa817cc9e..a0193ff6e792 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3742,7 +3742,7 @@ static void PrintMoveDetails(u16 move) ShowSplitIcon(GetBattleMoveSplit(move)); #endif PrintMovePowerAndAccuracy(move); - + if (moveEffect != EFFECT_PLACEHOLDER) PrintTextOnWindow(windowId, gMoveDescriptionPointers[move - 1], 6, 1, 0, 0); else diff --git a/src/pokenav_menu_handler_gfx.c b/src/pokenav_menu_handler_gfx.c index 7d78426dcf28..291c10ce9e1a 100644 --- a/src/pokenav_menu_handler_gfx.c +++ b/src/pokenav_menu_handler_gfx.c @@ -904,7 +904,7 @@ static void StartOptionAnimations_Enter(void) // Not selected, set default position x = OPTION_DEFAULT_X; } - + // Slide new options in StartOptionSlide(gfx->iconSprites[i], OPTION_EXIT_X, x, 12); SetOptionInvisibility(gfx->iconSprites[i], FALSE); diff --git a/src/record_mixing.c b/src/record_mixing.c index 3a831c8ce1a7..c899db25e7f7 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -444,7 +444,7 @@ static void Task_MixingRecordsRecv(u8 taskId) } break; case 1: // wait for handshake - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { ConvertIntToDecimalStringN(gStringVar1, GetMultiplayerId_(), STR_CONV_MODE_LEADING_ZEROS, 2); task->tState = 5; @@ -879,7 +879,7 @@ static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *records, size for (i = 0; i < linkPlayerCount; i++) { mixMail = (void *)records + i * recordSize; - + // Count number of players that have at least // one daycare Pokémon with no held item if (canHoldItem[i][0] == TRUE || canHoldItem[i][1] == TRUE) @@ -945,7 +945,7 @@ static void ReceiveDaycareMailData(struct RecordMixingDaycareMail *records, size case 4: // 4 players can swap, select which 2 pairings will swap ptr = idxs; - + // Swap pair 1 playerSlot1 = sDaycareMailSwapIds_4Player[tableId][0]; playerSlot2 = sDaycareMailSwapIds_4Player[tableId][1]; diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index 84f2480035e2..0d2b35802419 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -149,7 +149,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) ActionSelectionCreateCursorAt(gActionSelectionCursor[gBattlerInMenuId], 0); - if (gWirelessCommType != 0 && gReceivedRemoteLinkPlayers != 0) + if (gWirelessCommType != 0 && gReceivedRemoteLinkPlayers) { LoadWirelessStatusIndicatorSpriteGfx(); CreateWirelessStatusIndicatorSprite(0, 0); diff --git a/src/roamer.c b/src/roamer.c index c17ec490c8f8..e9dc72a99383 100644 --- a/src/roamer.c +++ b/src/roamer.c @@ -127,7 +127,7 @@ void UpdateLocationHistoryForRoamer(void) void RoamerMoveToOtherLocationSet(void) { u8 mapNum = 0; - + if (!ROAMER->active) return; @@ -170,8 +170,8 @@ void RoamerMove(void) // Choose a new map (excluding the first) within this set // Also exclude a map if the roamer was there 2 moves ago mapNum = sRoamerLocations[locSet][(Random() % (NUM_LOCATIONS_PER_SET - 1)) + 1]; - if (!(sLocationHistory[2][MAP_GRP] == ROAMER_MAP_GROUP - && sLocationHistory[2][MAP_NUM] == mapNum) + if (!(sLocationHistory[2][MAP_GRP] == ROAMER_MAP_GROUP + && sLocationHistory[2][MAP_NUM] == mapNum) && mapNum != MAP_NUM(UNDEFINED)) break; } diff --git a/src/rom_header.s b/src/rom_header.s index c5fa5ddf40e0..5ced627a392e 100644 --- a/src/rom_header.s +++ b/src/rom_header.s @@ -1,19 +1,16 @@ @ Note: ROM header data is empty space here. -@ It's populated by gbafix using data provided in the Makefile. +@ It's populated by gbafix using data provided in the Makefile. - .global Start -Start: +Start:: b Init - .global RomHeaderNintendoLogo -RomHeaderNintendoLogo: +RomHeaderNintendoLogo:: .space 156 RomHeaderGameTitle: .space 12 - .global RomHeaderGameCode -RomHeaderGameCode: +RomHeaderGameCode:: .space 4 RomHeaderMakerCode: @@ -31,8 +28,7 @@ RomHeaderDeviceType: RomHeaderReserved1: .space 7 - .global RomHeaderSoftwareVersion -RomHeaderSoftwareVersion: +RomHeaderSoftwareVersion:: .byte 0 RomHeaderChecksum: @@ -43,16 +39,13 @@ RomHeaderReserved2: .word 0 - .global GPIOPortData -GPIOPortData: +GPIOPortData:: .2byte 0 - .global GPIOPortDirection -GPIOPortDirection: +GPIOPortDirection:: .2byte 0 - .global GPIOPortReadEnable -GPIOPortReadEnable: +GPIOPortReadEnable:: .2byte 0 .2byte 0 diff --git a/src/save.c b/src/save.c index e7c91580e520..765fb045c3c0 100644 --- a/src/save.c +++ b/src/save.c @@ -913,7 +913,7 @@ u16 GetSaveBlocksPointersBaseOffset(void) for (i = 0; i < NUM_SECTORS_PER_SLOT; i++) { ReadFlashSector(i + slotOffset, gReadWriteSector); - + // Base offset for SaveBlock2 is calculated using the trainer id if (gReadWriteSector->id == SECTOR_ID_SAVEBLOCK2) return sector->data[offsetof(struct SaveBlock2, playerTrainerId[0])] + diff --git a/src/scrcmd.c b/src/scrcmd.c index a1262730ad99..e5ea3d5e1194 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1885,7 +1885,7 @@ bool8 ScrCmd_setwildbattle(struct ScriptContext *ctx) gIsScriptedWildDouble = FALSE; } else - { + { CreateScriptedDoubleWildMon(species, level, item, species2, level2, item2); gIsScriptedWildDouble = TRUE; } @@ -2057,15 +2057,15 @@ bool8 ScrCmd_setmetatile(struct ScriptContext *ctx) { u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - u16 tileId = VarGet(ScriptReadHalfword(ctx)); - u16 isImpassable = VarGet(ScriptReadHalfword(ctx)); + u16 metatileId = VarGet(ScriptReadHalfword(ctx)); + bool16 isImpassable = VarGet(ScriptReadHalfword(ctx)); x += MAP_OFFSET; y += MAP_OFFSET; if (!isImpassable) - MapGridSetMetatileIdAt(x, y, tileId); + MapGridSetMetatileIdAt(x, y, metatileId); else - MapGridSetMetatileIdAt(x, y, tileId | MAPGRID_COLLISION_MASK); + MapGridSetMetatileIdAt(x, y, metatileId | MAPGRID_COLLISION_MASK); return FALSE; } diff --git a/src/script.c b/src/script.c index 484f8e96622a..c252c95f0446 100644 --- a/src/script.c +++ b/src/script.c @@ -213,9 +213,9 @@ void ScriptContext_Init(void) sGlobalScriptContextStatus = CONTEXT_SHUTDOWN; } -// Runs the script until the script makes a wait* call, then returns true if -// there's more script to run, or false if the script has hit the end. -// This function also returns false if the context is finished +// Runs the script until the script makes a wait* call, then returns true if +// there's more script to run, or false if the script has hit the end. +// This function also returns false if the context is finished // or waiting (after a call to _Stop) bool8 ScriptContext_RunScript(void) { diff --git a/src/script_menu.c b/src/script_menu.c index d25f28cb2974..6633332f3fbc 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -328,7 +328,7 @@ bool16 ScriptMenu_CreatePCMultichoice(void) static void CreatePCMultichoice(void) { - u8 y = 8; + u8 x = 8; u32 pixelWidth = 0; u8 width; u8 numChoices; @@ -353,25 +353,25 @@ static void CreatePCMultichoice(void) numChoices = 4; windowId = CreateWindowFromRect(0, 0, width, 8); SetStandardWindowBorderStyle(windowId, FALSE); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, y, 33, TEXT_SKIP_DRAW, NULL); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 49, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, x, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, x, 49, TEXT_SKIP_DRAW, NULL); } else { numChoices = 3; windowId = CreateWindowFromRect(0, 0, width, 6); SetStandardWindowBorderStyle(windowId, FALSE); - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 33, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, x, 33, TEXT_SKIP_DRAW, NULL); } // Change PC name if player has met Lanette if (FlagGet(FLAG_SYS_PC_LANETTE)) - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, y, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, x, 1, TEXT_SKIP_DRAW, NULL); else - AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, y, 1, TEXT_SKIP_DRAW, NULL); + AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, x, 1, TEXT_SKIP_DRAW, NULL); StringExpandPlaceholders(gStringVar4, gText_PlayersPC); - PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17); + PrintPlayerNameOnWindow(windowId, gStringVar4, x, 17); InitMenuInUpperLeftCornerNormal(windowId, numChoices, 0); CopyWindowToVram(windowId, COPYWIN_FULL); InitMultichoiceCheckWrap(FALSE, numChoices, windowId, MULTI_PC); diff --git a/src/slot_machine.c b/src/slot_machine.c index dd2622e2be30..3b82afde197a 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -1880,7 +1880,7 @@ static u8 TrySelectBias_Regular(void) { s16 rval = Random() & 0xff; s16 value = sBiasProbabilities_Regular[whichBias][sSlotMachine->machineId]; - + // Boost odds of BIAS_POWER if it's a lucky game. if (whichBias == 0 && sSlotMachine->luckyGame == TRUE) { @@ -3668,7 +3668,7 @@ static void ReelTime_CheckExplode(struct Task *task) if (sSlotMachine->reelTimeDraw) { if (sSlotMachine->reelTimeSpinsLeft <= task->tExplodeChecks) - task->tState++; // RT_TASK_LAND + task->tState++; // RT_TASK_LAND } else if (task->tExplodeChecks > 3) { @@ -5309,7 +5309,7 @@ static const u8 sSpecialDrawOdds[NUM_SLOT_MACHINE_IDS][MAX_BET] = { }; static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { - { + { // Probabilities for BIAS_STRAIGHT_7 [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5318,7 +5318,7 @@ static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 40, [SLOT_MACHINE_LUCKIEST] = 50 }, - { + { // Probabilities for BIAS_REELTIME [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5327,7 +5327,7 @@ static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 35, [SLOT_MACHINE_LUCKIEST] = 35 }, - { + { // Probabilities for BIAS_MIXED_7 [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5339,7 +5339,7 @@ static const u8 sBiasProbabilities_Special[][NUM_SLOT_MACHINE_IDS] = { }; static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { - { + { // Probabilities for BIAS_POWER [SLOT_MACHINE_UNLUCKIEST] = 20, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5348,7 +5348,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 25, [SLOT_MACHINE_LUCKIEST] = 25 }, - { + { // Probabilities for BIAS_AZURILL [SLOT_MACHINE_UNLUCKIEST] = 12, [SLOT_MACHINE_UNLUCKIER] = 15, @@ -5357,7 +5357,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 19, [SLOT_MACHINE_LUCKIEST] = 22 }, - { + { // Probabilities for BIAS_LOTAD [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5366,7 +5366,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 30, [SLOT_MACHINE_LUCKIEST] = 40 }, - { + { // Probabilities for BIAS_CHERRY [SLOT_MACHINE_UNLUCKIEST] = 25, [SLOT_MACHINE_UNLUCKIER] = 25, @@ -5375,7 +5375,7 @@ static const u8 sBiasProbabilities_Regular[][NUM_SLOT_MACHINE_IDS] = { [SLOT_MACHINE_LUCKIER] = 15, [SLOT_MACHINE_LUCKIEST] = 15 }, - { + { // Probabilities for BIAS_REPLAY [SLOT_MACHINE_UNLUCKIEST] = 40, [SLOT_MACHINE_UNLUCKIER] = 40, diff --git a/src/start_menu.c b/src/start_menu.c index a0cff087cdd4..32596aa96fea 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -324,7 +324,7 @@ static void BuildNormalStartMenu(void) } static void BuildDebugStartMenu(void) -{ +{ AddStartMenuAction(MENU_ACTION_DEBUG); if (FlagGet(FLAG_SYS_POKEDEX_GET) == TRUE) AddStartMenuAction(MENU_ACTION_POKEDEX); @@ -761,6 +761,7 @@ static bool8 StartMenuDebugCallback(void) HideStartMenuDebug(); // Hide start menu without enabling movement #if DEBUG_SYSTEM_ENABLE == TRUE + FreezeObjectEvents(); Debug_ShowMainMenu(); #endif diff --git a/src/strings.c b/src/strings.c index d199b92d4b92..fce4acdde156 100644 --- a/src/strings.c +++ b/src/strings.c @@ -417,7 +417,8 @@ const u8 gText_PkmnRegainhedHealth[] = _("{STR_VAR_1} regained health.{PAUSE_UNT const u8 gText_PkmnBecameHealthy[] = _("{STR_VAR_1} became healthy.{PAUSE_UNTIL_PRESS}"); const u8 gText_MovesPPIncreased[] = _("{STR_VAR_1}'s PP increased.{PAUSE_UNTIL_PRESS}"); const u8 gText_PkmnElevatedToLvVar2[] = _("{STR_VAR_1} was elevated to\nLv. {STR_VAR_2}."); -const u8 gText_PkmnGainedExp[] = _("{STR_VAR_1} gained Exp. Points!{PAUSE_UNTIL_PRESS}"); +const u8 gText_PkmnGainedExp[] = _("{STR_VAR_1} gained {STR_VAR_2} Exp. Points!{PAUSE_UNTIL_PRESS}"); +const u8 gText_PkmnGainedExpAndElevatedToLvVar3[] = _("{STR_VAR_1} gained {STR_VAR_2} Exp. Points\nand was elevated to Lv. {STR_VAR_3}!"); const u8 gText_PkmnBaseVar2StatIncreased[] = _("{STR_VAR_1}'s base {STR_VAR_2}\nstat was raised.{PAUSE_UNTIL_PRESS}"); const u8 gText_PkmnFriendlyBaseVar2Fell[] = _("{STR_VAR_1} turned friendly.\nThe base {STR_VAR_2} fell!{PAUSE_UNTIL_PRESS}"); const u8 gText_PkmnAdoresBaseVar2Fell[] = _("{STR_VAR_1} adores you!\nThe base {STR_VAR_2} fell!{PAUSE_UNTIL_PRESS}"); diff --git a/src/trade.c b/src/trade.c index abf35f26a4de..ba889c7c9280 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2387,7 +2387,7 @@ s32 GetGameProgressForLinkTrade(void) s32 isGameFrLg; u16 version; - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { isGameFrLg = 0; version = (gLinkPlayers[GetMultiplayerId() ^ 1].version & 0xFF); @@ -2461,7 +2461,7 @@ int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct Rf else { // Player's Pokémon must be of the type the partner requested - if (gBaseStats[playerSpecies2].type1 != requestedType + if (gBaseStats[playerSpecies2].type1 != requestedType && gBaseStats[playerSpecies2].type2 != requestedType) return UR_TRADE_MSG_NOT_MON_PARTNER_WANTS; } diff --git a/src/trainer_card.c b/src/trainer_card.c index ab7b3c9131b9..04b8f686abcc 100755 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -31,6 +31,7 @@ #include "constants/battle_frontier.h" #include "constants/rgb.h" #include "constants/trainers.h" +#include "constants/union_room.h" struct TrainerCardData { @@ -761,9 +762,9 @@ static void TrainerCard_GenerateCardForPlayer(struct TrainerCard *trainerCard) trainerCard->stars++; if (trainerCard->gender == FEMALE) - trainerCard->facilityClass = gLinkPlayerFacilityClasses[(trainerCard->trainerId % NUM_FEMALE_LINK_FACILITY_CLASSES) + NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[(trainerCard->trainerId % NUM_UNION_ROOM_CLASSES) + NUM_UNION_ROOM_CLASSES]; else - trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[trainerCard->trainerId % NUM_UNION_ROOM_CLASSES]; } void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard) @@ -777,9 +778,9 @@ void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard) trainerCard->stars++; if (trainerCard->gender == FEMALE) - trainerCard->facilityClass = gLinkPlayerFacilityClasses[(trainerCard->trainerId % NUM_FEMALE_LINK_FACILITY_CLASSES) + NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[(trainerCard->trainerId % NUM_UNION_ROOM_CLASSES) + NUM_UNION_ROOM_CLASSES]; else - trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES]; + trainerCard->unionRoomClass = gUnionRoomFacilityClasses[trainerCard->trainerId % NUM_UNION_ROOM_CLASSES]; } void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 gameVersion) @@ -1876,7 +1877,7 @@ static void CreateTrainerCardTrainerPic(void) { if (InUnionRoom() == TRUE && gReceivedRemoteLinkPlayers == 1) { - CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(sData->trainerCard.facilityClass), + CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(sData->trainerCard.unionRoomClass), TRUE, sTrainerPicOffset[sData->isHoenn][sData->trainerCard.gender][0], sTrainerPicOffset[sData->isHoenn][sData->trainerCard.gender][1], diff --git a/src/tv.c b/src/tv.c index 902e5f41af03..108770332bdd 100644 --- a/src/tv.c +++ b/src/tv.c @@ -2042,7 +2042,7 @@ static void SecretBaseVisit_CalculatePartyData(TVShow *show) { sTV_SecretBaseVisitMonsTemp[numPokemon].level = GetMonData(&gPlayerParty[i], MON_DATA_LEVEL); sTV_SecretBaseVisitMonsTemp[numPokemon].species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES); - + // Check all the Pokémon's moves, then randomly select one to save numMoves = 0; move = GetMonData(&gPlayerParty[i], MON_DATA_MOVE1); @@ -2077,7 +2077,7 @@ static void SecretBaseVisit_CalculatePartyData(TVShow *show) for (i = 0, sum = 0; i < numPokemon; i++) sum += sTV_SecretBaseVisitMonsTemp[i].level; - // Using the data calculated above, save the data to talk about on the show + // Using the data calculated above, save the data to talk about on the show // (average level, and one randomly selected species / move) show->secretBaseVisit.avgLevel = sum / numPokemon; j = Random() % numPokemon; @@ -2621,7 +2621,7 @@ void DoPokeNews(void) // News event is upcoming, make comment about countdown to event u16 dayCountdown = gSaveBlock1Ptr->pokeNews[i].dayCountdown; ConvertIntToDecimalStringN(gStringVar1, dayCountdown, STR_CONV_MODE_LEFT_ALIGN, 1); - + // Mark as inactive so the countdown TV airing doesn't repeat // Will be flagged as "upcoming" again by UpdatePokeNewsCountdown gSaveBlock1Ptr->pokeNews[i].state = POKENEWS_STATE_INACTIVE; @@ -2826,7 +2826,7 @@ static bool8 IsRecordMixShowAlreadySpawned(u8 kind, bool8 delete) static void SortPurchasesByQuantity(void) { u8 i, j; - + for (i = 0; i < SMARTSHOPPER_NUM_ITEMS - 1; i++) { for (j = i + 1; j < SMARTSHOPPER_NUM_ITEMS; j++) diff --git a/src/union_room.c b/src/union_room.c index 53fb951707ba..48b9f20f159f 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -702,7 +702,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) } else { - if (gReceivedRemoteLinkPlayers != 0) + if (gReceivedRemoteLinkPlayers) { if (IsActivityWithVariableGroupSize(gPlayerCurrActivity)) GetOtherPlayersInfoFlags(); @@ -2047,7 +2047,7 @@ static void Task_SendMysteryGift(u8 taskId) { data->state = 13; } - else if (gReceivedRemoteLinkPlayers != 0) + else if (gReceivedRemoteLinkPlayers) { UpdateGameData_GroupLockedIn(TRUE); data->state++; diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index 923f6692f110..0eed65a63536 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -24,7 +24,8 @@ static u32 IsUnionRoomPlayerInvisible(u32, u32); static void SetUnionRoomObjectFacingDirection(s32, s32, u8); // + 2 is just to match, those elements are empty and never read -static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][MAX_UNION_ROOM_LEADERS + 2] = { +// Graphics ids should correspond with the classes in gUnionRoomFacilityClasses +static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][NUM_UNION_ROOM_CLASSES + 2] = { [MALE] = { OBJ_EVENT_GFX_MAN_3, OBJ_EVENT_GFX_BLACK_BELT, @@ -132,7 +133,7 @@ static bool32 IsPlayerStandingStill(void) // Gender and trainer id are used to determine which sprite a player appears as static u8 GetUnionRoomPlayerGraphicsId(u32 gender, u32 id) { - return sUnionRoomObjGfxIds[gender][id % MAX_UNION_ROOM_LEADERS]; + return sUnionRoomObjGfxIds[gender][id % NUM_UNION_ROOM_CLASSES]; } static void GetUnionRoomPlayerCoords(u32 leaderId, u32 memberId, s32 * x, s32 * y) @@ -568,7 +569,7 @@ bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *list, s16 *memberIdP for (memberId = 0; memberId < MAX_RFU_PLAYERS; memberId++) { s32 id = UR_PLAYER_SPRITE_ID(i, memberId); - + // Is the player in front of a group member position? if (x != sUnionRoomPlayerCoords[i][0] + sUnionRoomGroupOffsets[memberId][0] + 7) continue; diff --git a/src/walda_phrase.c b/src/walda_phrase.c index 025f900e5a70..e5556b53e303 100644 --- a/src/walda_phrase.c +++ b/src/walda_phrase.c @@ -174,7 +174,7 @@ static bool32 TryCalculateWallpaper(u16 *backgroundClr, u16 *foregroundClr, u8 * if (GetWallpaperDataBits(data, 0, 3) != GetWallpaperDataBits(charsByTableId, TO_BIT_OFFSET(WALDA_PHRASE_LENGTH - 1) + 2, 3)) return FALSE; - // Perform some relatively arbitrary changes to the wallpaper data using the last byte (KEY) + // Perform some relatively arbitrary changes to the wallpaper data using the last byte (KEY) RotateWallpaperDataLeft(data, NUM_WALLPAPER_DATA_BYTES, 21); RotateWallpaperDataLeft(data, NUM_WALLPAPER_DATA_BYTES - 1, KEY & 0xF); MaskWallpaperData(data, NUM_WALLPAPER_DATA_BYTES - 1, KEY >> 4); diff --git a/src/wild_encounter.c b/src/wild_encounter.c index e49d09f54dbe..8bf8c45e0eb4 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -68,7 +68,7 @@ static const struct WildPokemon sWildFeebas = {20, 25, SPECIES_FEEBAS}; static const u16 sRoute119WaterTileData[] = { -//yMin, yMax, numSpots in previous sections +//yMin, yMax, numSpots in previous sections 0, 45, 0, 46, 91, NUM_FISHING_SPOTS_1, 92, 139, NUM_FISHING_SPOTS_1 + NUM_FISHING_SPOTS_2, @@ -146,7 +146,7 @@ static bool8 CheckFeebas(void) feebasSpots[i] = FeebasRandom() % NUM_FISHING_SPOTS; if (feebasSpots[i] == 0) feebasSpots[i] = NUM_FISHING_SPOTS; - + // < 1 below is a pointless check, it will never be TRUE. // >= 4 to skip fishing spots 1-3, because these are inaccessible // spots at the top of the map, at (9,7), (7,13), and (15,16). @@ -1006,7 +1006,7 @@ bool8 TryDoDoubleWildBattle(void) { if (GetSafariZoneFlag() || GetMonsStateToDoubles() != PLAYER_HAS_TWO_USABLE_MONS) return FALSE; -#if B_FLAG_FORCE_DOUBLE_WILD != 0 +#if B_FLAG_FORCE_DOUBLE_WILD != 0 else if (FlagGet(B_FLAG_FORCE_DOUBLE_WILD)) return TRUE; #endif diff --git a/src/wonder_news.c b/src/wonder_news.c index ec93d293edbc..e083575d9525 100644 --- a/src/wonder_news.c +++ b/src/wonder_news.c @@ -76,7 +76,7 @@ u16 RetrieveWonderNewsVal(void) struct WonderNewsMetadata *data = GetSavedWonderNewsMetadata(); u16 newsVal; - // Checks if Mystery Event is enabled, not Mystery Gift? + // Checks if Mystery Event is enabled, not Mystery Gift? if (!IsMysteryEventEnabled() || !ValidateSavedWonderNews()) return 0; diff --git a/sym_common.txt b/sym_common.txt index 407b183a7f85..7eebcac74e62 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -53,9 +53,9 @@ gReservedSpritePaletteCount: .include "tv.o" .include "mauville_old_man.o" .include "image_processing_effects.o" - + .space 0x4 - + .include "contest_painting.o" .include "field_specials.o" .include "evolution_scene.o" @@ -66,12 +66,12 @@ gReservedSpritePaletteCount: .include "battle_anim_throw.o" .include "battle_factory_screen.o" .include "apprentice.o" - + .space 0x8 - + .include "list_menu.o" .include "party_menu.o" - + .space 0x44 .include "ereader_screen.o" diff --git a/tools/aif2pcm/main.c b/tools/aif2pcm/main.c index 720db1acaeb8..0824b92da8c3 100644 --- a/tools/aif2pcm/main.c +++ b/tools/aif2pcm/main.c @@ -238,7 +238,7 @@ void read_aif(struct Bytes *aif, AifData *aif_data) { FATAL_ERROR("More than one MARK Chunk in file!\n"); } - + markers = calloc(num_markers, sizeof(struct Marker)); // Read each marker. @@ -289,7 +289,7 @@ void read_aif(struct Bytes *aif, AifData *aif_data) // Skip NoLooping sustain loop. pos += 4; } - + // Skip release loop, we don't need it. pos += 6; } @@ -303,7 +303,7 @@ void read_aif(struct Bytes *aif, AifData *aif_data) { uint8_t *sample_data = (uint8_t *)malloc(num_samples * sizeof(uint8_t)); memcpy(sample_data, &aif->data[pos], num_samples); - + aif_data->samples8 = sample_data; aif_data->real_num_samples = num_samples; } @@ -316,7 +316,7 @@ void read_aif(struct Bytes *aif, AifData *aif_data) { sample_data_swapped[i] = __builtin_bswap16(sample_data[i]); } - + aif_data->samples16 = sample_data_swapped; aif_data->real_num_samples = num_samples; free(sample_data); @@ -329,12 +329,12 @@ void read_aif(struct Bytes *aif, AifData *aif_data) pos += chunk_size; } } - + if (markers) { // Resolve loop points. struct Marker *cur_marker = markers; - + // Grab loop start point. for (int i = 0; i < num_markers; i++, cur_marker++) { @@ -573,7 +573,7 @@ void aif2pcm(const char *aif_filename, const char *pcm_filename, bool compress) struct Bytes *aif = read_bytearray(aif_filename); AifData aif_data = {0}; read_aif(aif, &aif_data); - + // Convert 16-bit to 8-bit if necessary if (aif_data.sample_size == 16) { diff --git a/tools/gbagfx/font.c b/tools/gbagfx/font.c index 0dd6fbc3ee01..1251b5c6473a 100644 --- a/tools/gbagfx/font.c +++ b/tools/gbagfx/font.c @@ -26,7 +26,7 @@ static void ConvertFromLatinFont(unsigned char *src, unsigned char *dest, unsign unsigned int pixelsX = (column * 16) + ((glyphTile & 1) * 8); for (unsigned int i = 0; i < 8; i++) { - unsigned int pixelsY = (row * 16) + ((glyphTile >> 1) * 8) + i; + unsigned int pixelsY = (row * 16) + ((glyphTile >> 1) * 8) + i; unsigned int destPixelsOffset = (pixelsY * 64) + (pixelsX / 4); dest[destPixelsOffset] = src[srcPixelsOffset + 1]; @@ -75,7 +75,7 @@ static void ConvertFromHalfwidthJapaneseFont(unsigned char *src, unsigned char * for (unsigned int i = 0; i < 8; i++) { unsigned int pixelsY = (row * 16) + (glyphTile * 8) + i; unsigned int destPixelsOffset = (pixelsY * 32) + (pixelsX / 4); - + dest[destPixelsOffset] = src[srcPixelsOffset + 1]; dest[destPixelsOffset + 1] = src[srcPixelsOffset]; @@ -233,7 +233,7 @@ void ReadHalfwidthJapaneseFont(char *path, struct Image *image) FATAL_ERROR("The file size (%d) is not a multiple of %d.\n", fileSize, glyphSize); int numGlyphs = fileSize / glyphSize; - + if (numGlyphs % 16 != 0) FATAL_ERROR("The number of glyphs (%d) is not a multiple of 16.\n", numGlyphs); diff --git a/tools/jsonproc/inja.hpp b/tools/jsonproc/inja.hpp index d5bf5bcba42e..21478ea11544 100755 --- a/tools/jsonproc/inja.hpp +++ b/tools/jsonproc/inja.hpp @@ -1675,7 +1675,7 @@ class FunctionStorage { #include #include -#include +#include #include // #include "bytecode.hpp" diff --git a/tools/mapjson/mapjson.cpp b/tools/mapjson/mapjson.cpp index 8de9ff8d012f..b450c5f6aa0e 100644 --- a/tools/mapjson/mapjson.cpp +++ b/tools/mapjson/mapjson.cpp @@ -77,8 +77,8 @@ string generate_map_header_text(Json map_data, Json layouts_data, string version ostringstream text; - text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" - << map_data["name"].string_value() + text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" + << map_data["name"].string_value() << "/map.json\n@\n\n"; text << map_data["name"].string_value() << ":\n" @@ -128,8 +128,8 @@ string generate_map_connections_text(Json map_data) { ostringstream text; - text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" - << map_data["name"].string_value() + text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" + << map_data["name"].string_value() << "/map.json\n@\n\n"; text << map_data["name"].string_value() << "_MapConnectionsList:\n"; @@ -154,8 +154,8 @@ string generate_map_events_text(Json map_data) { ostringstream text; - text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" - << map_data["name"].string_value() + text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" + << map_data["name"].string_value() << "/map.json\n@\n\n"; string objects_label, warps_label, coords_label, bgs_label; @@ -386,6 +386,7 @@ string generate_map_constants_text(string groups_filepath, Json groups_data) { char dir_separator = file_dir.back(); ostringstream text; + ostringstream mapCountText; text << "#ifndef GUARD_CONSTANTS_MAP_GROUPS_H\n" << "#define GUARD_CONSTANTS_MAP_GROUPS_H\n\n"; @@ -399,7 +400,7 @@ string generate_map_constants_text(string groups_filepath, Json groups_data) { text << "// " << group.string_value() << "\n"; vector map_ids; size_t max_length = 0; - + int map_count = 0; //DEBUG for (auto &map_name : groups_data[group.string_value()].array_items()) { @@ -424,15 +425,16 @@ string generate_map_constants_text(string groups_filepath, Json groups_data) { } text << "#define MAP_GROUPS_COUNT " << group_num << "\n\n"; - - text << "// static const u8 MAP_GROUP_COUNT[] = {"; //DEBUG - for(int i=0; i